diff --git a/api/adl_serializer/from_json/index.html b/api/adl_serializer/from_json/index.html index 1b8702209..53bc1f8d3 100644 --- a/api/adl_serializer/from_json/index.html +++ b/api/adl_serializer/from_json/index.html @@ -101,4 +101,4 @@ std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl; }

Output:

Ned Flanders (60) lives in 744 Evergreen Terrace
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/adl_serializer/index.html b/api/adl_serializer/index.html index 55ac00391..6c1af849f 100644 --- a/api/adl_serializer/index.html +++ b/api/adl_serializer/index.html @@ -12,4 +12,4 @@ // same thing, but with the "from_json" method } }; -

Member functions

Version history

\ No newline at end of file +

Member functions

Version history

\ No newline at end of file diff --git a/api/adl_serializer/to_json/index.html b/api/adl_serializer/to_json/index.html index 48906084a..09fa190fb 100644 --- a/api/adl_serializer/to_json/index.html +++ b/api/adl_serializer/to_json/index.html @@ -35,4 +35,4 @@ std::cout << j << std::endl; }

Output:

{"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"}
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/accept/index.html b/api/basic_json/accept/index.html index e7e87c8cd..116f46359 100644 --- a/api/basic_json/accept/index.html +++ b/api/basic_json/accept/index.html @@ -36,4 +36,4 @@ << json::accept(invalid_text) << '\n'; }

Output:

true false
-

See also

Version history

Deprecation

Overload (2) replaces calls to accept with a pair of iterators as their first parameter which has been deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like accept({ptr, ptr+len}, ...); with accept(ptr, ptr+len, ...);.

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

See also

Version history

Deprecation

Overload (2) replaces calls to accept with a pair of iterators as their first parameter which has been deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like accept({ptr, ptr+len}, ...); with accept(ptr, ptr+len, ...);.

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/array/index.html b/api/basic_json/array/index.html index 2254f3e77..17a03d847 100644 --- a/api/basic_json/array/index.html +++ b/api/basic_json/array/index.html @@ -22,4 +22,4 @@ [] [1,2,3,4] [["one",1],["two",2]] -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/array_t/index.html b/api/basic_json/array_t/index.html index 7e7529026..8c0b29731 100644 --- a/api/basic_json/array_t/index.html +++ b/api/basic_json/array_t/index.html @@ -14,4 +14,4 @@ std::cout << std::boolalpha << std::is_same<std::vector<json>, json::array_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/at/index.html b/api/basic_json/at/index.html index 749c38410..a0f1f63b7 100644 --- a/api/basic_json/at/index.html +++ b/api/basic_json/at/index.html @@ -498,4 +498,4 @@ [json.exception.out_of_range.402] array index '-' (2) is out of range [json.exception.out_of_range.403] key 'foo' not found [json.exception.out_of_range.404] unresolved reference token 'foo' -

See also

Version history

  1. Added in version 1.0.0.
  2. Added in version 1.0.0.
  3. Added in version 3.11.0.
  4. Added in version 2.0.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0.
  2. Added in version 1.0.0.
  3. Added in version 3.11.0.
  4. Added in version 2.0.0.
\ No newline at end of file diff --git a/api/basic_json/back/index.html b/api/basic_json/back/index.html index 7aebcf0d7..13d36c4da 100644 --- a/api/basic_json/back/index.html +++ b/api/basic_json/back/index.html @@ -49,4 +49,4 @@ 16 "Hello, world" [json.exception.invalid_iterator.214] cannot get value -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/basic_json/index.html b/api/basic_json/basic_json/index.html index cf0b0f11d..9abfb5a08 100644 --- a/api/basic_json/basic_json/index.html +++ b/api/basic_json/basic_json/index.html @@ -455,4 +455,4 @@ }

Output:

null
 23
-

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 2.1.0.
  4. Since version 3.2.0.
  5. Since version 1.0.0.
  6. Since version 1.0.0.
  7. Since version 1.0.0.
  8. Since version 1.0.0.
  9. Since version 1.0.0.
\ No newline at end of file +

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 2.1.0.
  4. Since version 3.2.0.
  5. Since version 1.0.0.
  6. Since version 1.0.0.
  7. Since version 1.0.0.
  8. Since version 1.0.0.
  9. Since version 1.0.0.
\ No newline at end of file diff --git a/api/basic_json/begin/index.html b/api/basic_json/begin/index.html index c98ccb283..b857a723f 100644 --- a/api/basic_json/begin/index.html +++ b/api/basic_json/begin/index.html @@ -17,4 +17,4 @@ std::cout << *it << '\n'; }

Output:

1
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/binary/index.html b/api/basic_json/binary/index.html index f3b61bfd8..1403a4ed1 100644 --- a/api/basic_json/binary/index.html +++ b/api/basic_json/binary/index.html @@ -24,4 +24,4 @@ std::cout << "type: " << j.type_name() << ", subtype: " << j.get_binary().subtype() << std::endl; }

Output:

type: binary, subtype: 42
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/binary_t/index.html b/api/basic_json/binary_t/index.html index c22fe98de..3dc9a3adb 100644 --- a/api/basic_json/binary_t/index.html +++ b/api/basic_json/binary_t/index.html @@ -10,4 +10,4 @@ std::cout << std::boolalpha << std::is_same<nlohmann::byte_container_with_subtype<std::vector<std::uint8_t>>, json::binary_t>::value << std::endl; }

Output:

true
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/boolean_t/index.html b/api/basic_json/boolean_t/index.html index f63b60056..f66816b8b 100644 --- a/api/basic_json/boolean_t/index.html +++ b/api/basic_json/boolean_t/index.html @@ -10,4 +10,4 @@ std::cout << std::boolalpha << std::is_same<bool, json::boolean_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/cbegin/index.html b/api/basic_json/cbegin/index.html index 6e4e77265..e1782d75b 100644 --- a/api/basic_json/cbegin/index.html +++ b/api/basic_json/cbegin/index.html @@ -16,4 +16,4 @@ std::cout << *it << '\n'; }

Output:

1
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/cbor_tag_handler_t/index.html b/api/basic_json/cbor_tag_handler_t/index.html index be2ec9839..2632cc20a 100644 --- a/api/basic_json/cbor_tag_handler_t/index.html +++ b/api/basic_json/cbor_tag_handler_t/index.html @@ -35,4 +35,4 @@

Output:

[json.exception.parse_error.112] parse error at byte 1: syntax error while parsing CBOR value: invalid byte: 0xD8
 {"bytes":[202,254,186,190],"subtype":null}
 {"bytes":[202,254,186,190],"subtype":66}
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/cend/index.html b/api/basic_json/cend/index.html index 047b54693..c13f406f1 100644 --- a/api/basic_json/cend/index.html +++ b/api/basic_json/cend/index.html @@ -19,4 +19,4 @@ std::cout << *it << '\n'; }

Output:

5
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/clear/index.html b/api/basic_json/clear/index.html index 960173874..9dd0b5f2b 100644 --- a/api/basic_json/clear/index.html +++ b/api/basic_json/clear/index.html @@ -41,4 +41,4 @@ {} [] "" -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/contains/index.html b/api/basic_json/contains/index.html index e167a8b55..7f6c328eb 100644 --- a/api/basic_json/contains/index.html +++ b/api/basic_json/contains/index.html @@ -101,4 +101,4 @@ false false false -

Version history

  1. Added in version 3.11.0.
  2. Added in version 3.6.0. Extended template KeyType to support comparable types in version 3.11.0.
  3. Added in version 3.7.0.
\ No newline at end of file +

Version history

  1. Added in version 3.11.0.
  2. Added in version 3.6.0. Extended template KeyType to support comparable types in version 3.11.0.
  3. Added in version 3.7.0.
\ No newline at end of file diff --git a/api/basic_json/count/index.html b/api/basic_json/count/index.html index 19150af21..87f3aaacd 100644 --- a/api/basic_json/count/index.html +++ b/api/basic_json/count/index.html @@ -46,4 +46,4 @@ }

Output:

number of elements with key "two": 1
 number of elements with key "three": 0
-

Version history

  1. Added in version 3.11.0.
  2. Added in version 1.0.0. Changed parameter key type to KeyType&& in version 3.11.0.
\ No newline at end of file +

Version history

  1. Added in version 3.11.0.
  2. Added in version 1.0.0. Changed parameter key type to KeyType&& in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/crbegin/index.html b/api/basic_json/crbegin/index.html index 5942cc94c..fee29e55e 100644 --- a/api/basic_json/crbegin/index.html +++ b/api/basic_json/crbegin/index.html @@ -16,4 +16,4 @@ std::cout << *it << '\n'; }

Output:

5
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/crend/index.html b/api/basic_json/crend/index.html index 7329baa94..a5c52a5c1 100644 --- a/api/basic_json/crend/index.html +++ b/api/basic_json/crend/index.html @@ -19,4 +19,4 @@ std::cout << *it << '\n'; }

Output:

1
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/default_object_comparator_t/index.html b/api/basic_json/default_object_comparator_t/index.html index 3e09fd3bd..1e98a0620 100644 --- a/api/basic_json/default_object_comparator_t/index.html +++ b/api/basic_json/default_object_comparator_t/index.html @@ -14,4 +14,4 @@ }

Output:

one < two : true
 three < four : false
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/diff/index.html b/api/basic_json/diff/index.html index 0772a5907..6a9271238 100644 --- a/api/basic_json/diff/index.html +++ b/api/basic_json/diff/index.html @@ -63,4 +63,4 @@ "world" ] } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/dump/index.html b/api/basic_json/dump/index.html index bba376b9d..051885364 100644 --- a/api/basic_json/dump/index.html +++ b/api/basic_json/dump/index.html @@ -105,4 +105,4 @@ [json.exception.type_error.316] invalid UTF-8 byte at index 2: 0xA9 string with replaced invalid characters: "ä�ü" string with ignored invalid characters: "äü" -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/emplace/index.html b/api/basic_json/emplace/index.html index 8d9edce6a..02a3d4a57 100644 --- a/api/basic_json/emplace/index.html +++ b/api/basic_json/emplace/index.html @@ -37,4 +37,4 @@ 3 true {"A":"a","B":"b"} "b" false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/emplace_back/index.html b/api/basic_json/emplace_back/index.html index 700b44479..fe51ecf8a 100644 --- a/api/basic_json/emplace_back/index.html +++ b/api/basic_json/emplace_back/index.html @@ -28,4 +28,4 @@ null [1,2,3,4,5,6] ["first",["second","second","second"]] -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/empty/index.html b/api/basic_json/empty/index.html index f3c5e48ae..2f17c664c 100644 --- a/api/basic_json/empty/index.html +++ b/api/basic_json/empty/index.html @@ -42,4 +42,4 @@ false true false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/end/index.html b/api/basic_json/end/index.html index ee5a45a68..acd0d512b 100644 --- a/api/basic_json/end/index.html +++ b/api/basic_json/end/index.html @@ -20,4 +20,4 @@ std::cout << *it << '\n'; }

Output:

5
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/end_pos/index.html b/api/basic_json/end_pos/index.html index 911843d8e..e52a693e2 100644 --- a/api/basic_json/end_pos/index.html +++ b/api/basic_json/end_pos/index.html @@ -101,4 +101,4 @@ Original string: 1 Parsed string: 1 -

The output shows the start/end positions of all the objects and fields in the JSON string.

See also

Version history

\ No newline at end of file +

The output shows the start/end positions of all the objects and fields in the JSON string.

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/erase/index.html b/api/basic_json/erase/index.html index 20828c39a..ba0bd1285 100644 --- a/api/basic_json/erase/index.html +++ b/api/basic_json/erase/index.html @@ -148,4 +148,4 @@ std::cout << j_array << '\n'; }

Output:

[0,1,3,4,5]
-

Version history

  1. Added in version 1.0.0. Added support for binary types in version 3.8.0.
  2. Added in version 1.0.0. Added support for binary types in version 3.8.0.
  3. Added in version 1.0.0.
  4. Added in version 3.11.0.
  5. Added in version 1.0.0.
\ No newline at end of file +

Version history

  1. Added in version 1.0.0. Added support for binary types in version 3.8.0.
  2. Added in version 1.0.0. Added support for binary types in version 3.8.0.
  3. Added in version 1.0.0.
  4. Added in version 3.11.0.
  5. Added in version 1.0.0.
\ No newline at end of file diff --git a/api/basic_json/error_handler_t/index.html b/api/basic_json/error_handler_t/index.html index cddf7b4b4..8e06de99d 100644 --- a/api/basic_json/error_handler_t/index.html +++ b/api/basic_json/error_handler_t/index.html @@ -30,4 +30,4 @@

Output:

[json.exception.type_error.316] invalid UTF-8 byte at index 2: 0xA9
 string with replaced invalid characters: "ä�ü"
 string with ignored invalid characters: "äü"
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/exception/index.html b/api/basic_json/exception/index.html index b71a0d578..8be67228a 100644 --- a/api/basic_json/exception/index.html +++ b/api/basic_json/exception/index.html @@ -49,4 +49,4 @@ }

Output:

message: [json.exception.out_of_range.403] key 'non-existing' not found
 exception id: 403
-

See also

List of exceptions

Version history

\ No newline at end of file +

See also

List of exceptions

Version history

\ No newline at end of file diff --git a/api/basic_json/find/index.html b/api/basic_json/find/index.html index 781e0c819..a4902e744 100644 --- a/api/basic_json/find/index.html +++ b/api/basic_json/find/index.html @@ -55,4 +55,4 @@

Output:

"two" was found: true
 value at key "two": 2
 "three" was found: false
-

See also

Version history

  1. Added in version 3.11.0.
  2. Added in version 1.0.0. Changed to support comparable types in version 3.11.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 3.11.0.
  2. Added in version 1.0.0. Changed to support comparable types in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/flatten/index.html b/api/basic_json/flatten/index.html index 29426f0ed..6be6724bf 100644 --- a/api/basic_json/flatten/index.html +++ b/api/basic_json/flatten/index.html @@ -43,4 +43,4 @@ "/object/value": 42.99, "/pi": 3.141 } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/from_bjdata/index.html b/api/basic_json/from_bjdata/index.html index b17cc9175..ca4270190 100644 --- a/api/basic_json/from_bjdata/index.html +++ b/api/basic_json/from_bjdata/index.html @@ -32,4 +32,4 @@ "compact": true, "schema": 0 } -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/from_bson/index.html b/api/basic_json/from_bson/index.html index 4250caada..4dad856e3 100644 --- a/api/basic_json/from_bson/index.html +++ b/api/basic_json/from_bson/index.html @@ -33,4 +33,4 @@ "compact": true, "schema": 0 } -

See also

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

See also

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/from_cbor/index.html b/api/basic_json/from_cbor/index.html index 00c4da9e5..92fe40ab9 100644 --- a/api/basic_json/from_cbor/index.html +++ b/api/basic_json/from_cbor/index.html @@ -35,4 +35,4 @@ "compact": true, "schema": 0 } -

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/from_msgpack/index.html b/api/basic_json/from_msgpack/index.html index b4f772070..1da1e1a2a 100644 --- a/api/basic_json/from_msgpack/index.html +++ b/api/basic_json/from_msgpack/index.html @@ -32,4 +32,4 @@ "compact": true, "schema": 0 } -

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/from_ubjson/index.html b/api/basic_json/from_ubjson/index.html index b9c83a349..2b98af739 100644 --- a/api/basic_json/from_ubjson/index.html +++ b/api/basic_json/from_ubjson/index.html @@ -32,4 +32,4 @@ "compact": true, "schema": 0 } -

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

Version history

Deprecation

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/front/index.html b/api/basic_json/front/index.html index 67e761166..07024137a 100644 --- a/api/basic_json/front/index.html +++ b/api/basic_json/front/index.html @@ -35,4 +35,4 @@ 1 1 "Hello, world" -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/get/index.html b/api/basic_json/get/index.html index d50b06777..d8359f13e 100644 --- a/api/basic_json/get/index.html +++ b/api/basic_json/get/index.html @@ -103,4 +103,4 @@ }

Output:

17 17 17 17
 true
-

Version history

  1. Since version 2.1.0.
  2. Since version 2.1.0. Extended to work with other specializations of basic_json in version 3.2.0.
  3. Since version 1.0.0.
\ No newline at end of file +

Version history

  1. Since version 2.1.0.
  2. Since version 2.1.0. Extended to work with other specializations of basic_json in version 3.2.0.
  3. Since version 1.0.0.
\ No newline at end of file diff --git a/api/basic_json/get_allocator/index.html b/api/basic_json/get_allocator/index.html index a9308572d..b627137cc 100644 --- a/api/basic_json/get_allocator/index.html +++ b/api/basic_json/get_allocator/index.html @@ -18,4 +18,4 @@ traits_t::deallocate(alloc, j, 1); }

Output:

"Hello, world!"
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/get_binary/index.html b/api/basic_json/get_binary/index.html index 7b8cea00e..71fd5d091 100644 --- a/api/basic_json/get_binary/index.html +++ b/api/basic_json/get_binary/index.html @@ -18,4 +18,4 @@ std::cout << "type: " << j.type_name() << ", subtype: " << j.get_binary().subtype() << std::endl; }

Output:

type: binary, subtype: 42
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/get_ptr/index.html b/api/basic_json/get_ptr/index.html index 1f8e1a8d0..f11358039 100644 --- a/api/basic_json/get_ptr/index.html +++ b/api/basic_json/get_ptr/index.html @@ -44,4 +44,4 @@ value at 0x6000029fc088 is 1 }

Output:

17 17 17 17
 true
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/get_ref/index.html b/api/basic_json/get_ref/index.html index 4eab6f458..f560f3f77 100644 --- a/api/basic_json/get_ref/index.html +++ b/api/basic_json/get_ref/index.html @@ -32,4 +32,4 @@ }

Output:

17 17
 [json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/get_to/index.html b/api/basic_json/get_to/index.html index 611a4a744..ce5d85f40 100644 --- a/api/basic_json/get_to/index.html +++ b/api/basic_json/get_to/index.html @@ -74,4 +74,4 @@ null: null boolean: true array: [1,2,3,4,5] -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/index.html b/api/basic_json/index.html index 5a1e9b430..9826373de 100644 --- a/api/basic_json/index.html +++ b/api/basic_json/index.html @@ -78,4 +78,4 @@ "pi": 3.141, "size": 8 } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/input_format_t/index.html b/api/basic_json/input_format_t/index.html index 4023f29ee..35561d08b 100644 --- a/api/basic_json/input_format_t/index.html +++ b/api/basic_json/input_format_t/index.html @@ -123,4 +123,4 @@

Output:

binary(val=[...])
 
 result: true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/insert/index.html b/api/basic_json/insert/index.html index 1830e8467..65b2d264f 100644 --- a/api/basic_json/insert/index.html +++ b/api/basic_json/insert/index.html @@ -116,4 +116,4 @@

Output:

{"one":"eins","two":"zwei"}
 {"eleven":"elf","seventeen":"siebzehn"}
 {"eleven":"elf","one":"eins","seventeen":"siebzehn","two":"zwei"}
-

Version history

  1. Added in version 1.0.0.
  2. Added in version 1.0.0.
  3. Added in version 1.0.0.
  4. Added in version 1.0.0.
  5. Added in version 3.0.0.
\ No newline at end of file +

Version history

  1. Added in version 1.0.0.
  2. Added in version 1.0.0.
  3. Added in version 1.0.0.
  4. Added in version 1.0.0.
  5. Added in version 3.0.0.
\ No newline at end of file diff --git a/api/basic_json/invalid_iterator/index.html b/api/basic_json/invalid_iterator/index.html index c6c4dc85f..0ad99496f 100644 --- a/api/basic_json/invalid_iterator/index.html +++ b/api/basic_json/invalid_iterator/index.html @@ -50,4 +50,4 @@ }

Output:

message: [json.exception.invalid_iterator.207] cannot use key() for non-object iterators
 exception id: 207
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/is_array/index.html b/api/basic_json/is_array/index.html index d52230c47..55b7a5b5d 100644 --- a/api/basic_json/is_array/index.html +++ b/api/basic_json/is_array/index.html @@ -38,4 +38,4 @@ true false false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_binary/index.html b/api/basic_json/is_binary/index.html index 3e59acf15..972183f65 100644 --- a/api/basic_json/is_binary/index.html +++ b/api/basic_json/is_binary/index.html @@ -38,4 +38,4 @@ false false true -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_boolean/index.html b/api/basic_json/is_boolean/index.html index b44c073e2..2c3e5803a 100644 --- a/api/basic_json/is_boolean/index.html +++ b/api/basic_json/is_boolean/index.html @@ -38,4 +38,4 @@ false false false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_discarded/index.html b/api/basic_json/is_discarded/index.html index 33aff72e9..94b872f78 100644 --- a/api/basic_json/is_discarded/index.html +++ b/api/basic_json/is_discarded/index.html @@ -40,4 +40,4 @@ false false false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_null/index.html b/api/basic_json/is_null/index.html index 004eb90c3..20022e3b4 100644 --- a/api/basic_json/is_null/index.html +++ b/api/basic_json/is_null/index.html @@ -38,4 +38,4 @@ false false false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_number/index.html b/api/basic_json/is_number/index.html index a454188a2..444a1949f 100644 --- a/api/basic_json/is_number/index.html +++ b/api/basic_json/is_number/index.html @@ -42,4 +42,4 @@ false false false -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/is_number_float/index.html b/api/basic_json/is_number_float/index.html index 0d17f2c43..b3c872690 100644 --- a/api/basic_json/is_number_float/index.html +++ b/api/basic_json/is_number_float/index.html @@ -38,4 +38,4 @@ false false false -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/is_number_integer/index.html b/api/basic_json/is_number_integer/index.html index 770e96940..69914002d 100644 --- a/api/basic_json/is_number_integer/index.html +++ b/api/basic_json/is_number_integer/index.html @@ -38,4 +38,4 @@ false false false -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/is_number_unsigned/index.html b/api/basic_json/is_number_unsigned/index.html index c3feccd95..aaf6d1338 100644 --- a/api/basic_json/is_number_unsigned/index.html +++ b/api/basic_json/is_number_unsigned/index.html @@ -38,4 +38,4 @@ false false false -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/is_object/index.html b/api/basic_json/is_object/index.html index dea252408..f98afe0c8 100644 --- a/api/basic_json/is_object/index.html +++ b/api/basic_json/is_object/index.html @@ -38,4 +38,4 @@ false false false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_primitive/index.html b/api/basic_json/is_primitive/index.html index 9d4c50d3e..bba5d3971 100644 --- a/api/basic_json/is_primitive/index.html +++ b/api/basic_json/is_primitive/index.html @@ -42,4 +42,4 @@ false true true -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/is_string/index.html b/api/basic_json/is_string/index.html index df40d3328..fe920d5b8 100644 --- a/api/basic_json/is_string/index.html +++ b/api/basic_json/is_string/index.html @@ -38,4 +38,4 @@ false true false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/is_structured/index.html b/api/basic_json/is_structured/index.html index 6feb3ae57..d72f39748 100644 --- a/api/basic_json/is_structured/index.html +++ b/api/basic_json/is_structured/index.html @@ -42,4 +42,4 @@ true false false -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/items/index.html b/api/basic_json/items/index.html index 2d40b367f..c274027bd 100644 --- a/api/basic_json/items/index.html +++ b/api/basic_json/items/index.html @@ -47,4 +47,4 @@ key: 2, value: 4 key: 3, value: 8 key: 4, value: 16 -

Version history

Deprecation

This function replaces the static function iterator_wrapper which was introduced in version 1.0.0, but has been deprecated in version 3.1.0. Function iterator_wrapper will be removed in version 4.0.0. Please replace all occurrences of iterator_wrapper(j) with j.items().

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

Version history

Deprecation

This function replaces the static function iterator_wrapper which was introduced in version 1.0.0, but has been deprecated in version 3.1.0. Function iterator_wrapper will be removed in version 4.0.0. Please replace all occurrences of iterator_wrapper(j) with j.items().

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/json_base_class_t/index.html b/api/basic_json/json_base_class_t/index.html index 49eaf4b9c..23c92f054 100644 --- a/api/basic_json/json_base_class_t/index.html +++ b/api/basic_json/json_base_class_t/index.html @@ -91,4 +91,4 @@ /null - metadata = 42 -> null /object - metadata = 21 -> {"uint":1} /object/uint - metadata = 42 -> 1 -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/json_serializer/index.html b/api/basic_json/json_serializer/index.html index 6e81d2eda..d0c2dda63 100644 --- a/api/basic_json/json_serializer/index.html +++ b/api/basic_json/json_serializer/index.html @@ -54,4 +54,4 @@ std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl; }

Output:

Ned Flanders (60) lives in 744 Evergreen Terrace
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/max_size/index.html b/api/basic_json/max_size/index.html index 884c910a9..b10337dde 100644 --- a/api/basic_json/max_size/index.html +++ b/api/basic_json/max_size/index.html @@ -31,4 +31,4 @@ 115292150460684697 576460752303423487 1 -

Note the output is platform-dependent.

Version history

\ No newline at end of file +

Note the output is platform-dependent.

Version history

\ No newline at end of file diff --git a/api/basic_json/merge_patch/index.html b/api/basic_json/merge_patch/index.html index 6ce3de462..f2188ecd5 100644 --- a/api/basic_json/merge_patch/index.html +++ b/api/basic_json/merge_patch/index.html @@ -64,4 +64,4 @@ ], "title": "Hello!" } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/meta/index.html b/api/basic_json/meta/index.html index 6cff0d4c9..6bbdf9dbe 100644 --- a/api/basic_json/meta/index.html +++ b/api/basic_json/meta/index.html @@ -27,4 +27,4 @@ "string": "3.12.0" } } -

Note the output is platform-dependent.

See also

Version history

\ No newline at end of file +

Note the output is platform-dependent.

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/number_float_t/index.html b/api/basic_json/number_float_t/index.html index 03978770c..804c3e1e3 100644 --- a/api/basic_json/number_float_t/index.html +++ b/api/basic_json/number_float_t/index.html @@ -10,4 +10,4 @@ std::cout << std::boolalpha << std::is_same<double, json::number_float_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/number_integer_t/index.html b/api/basic_json/number_integer_t/index.html index da164a052..daa35e051 100644 --- a/api/basic_json/number_integer_t/index.html +++ b/api/basic_json/number_integer_t/index.html @@ -10,4 +10,4 @@ std::cout << std::boolalpha << std::is_same<std::int64_t, json::number_integer_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/number_unsigned_t/index.html b/api/basic_json/number_unsigned_t/index.html index 63f31279d..40c79825d 100644 --- a/api/basic_json/number_unsigned_t/index.html +++ b/api/basic_json/number_unsigned_t/index.html @@ -10,4 +10,4 @@ std::cout << std::boolalpha << std::is_same<std::uint64_t, json::number_unsigned_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/object/index.html b/api/basic_json/object/index.html index 03fd278ab..3937e0e78 100644 --- a/api/basic_json/object/index.html +++ b/api/basic_json/object/index.html @@ -31,4 +31,4 @@ {} {"one":1,"two":2} [json.exception.type_error.301] cannot create object from initializer list -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/object_comparator_t/index.html b/api/basic_json/object_comparator_t/index.html index 0cd8bd71a..f008fdcd4 100644 --- a/api/basic_json/object_comparator_t/index.html +++ b/api/basic_json/object_comparator_t/index.html @@ -14,4 +14,4 @@ }

Output:

json::object_comparator_t("one", "two") = true
 json::object_comparator_t("three", "four") = false
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/object_t/index.html b/api/basic_json/object_t/index.html index 1615365b6..229a4c08c 100644 --- a/api/basic_json/object_t/index.html +++ b/api/basic_json/object_t/index.html @@ -28,4 +28,4 @@ std::cout << std::boolalpha << std::is_same<std::map<json::string_t, json>, json::object_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/operator+=/index.html b/api/basic_json/operator+=/index.html index 82535af15..357ca5543 100644 --- a/api/basic_json/operator+=/index.html +++ b/api/basic_json/operator+=/index.html @@ -96,4 +96,4 @@ null {"four":4,"one":1,"three":3,"two":2} [["five",5]] -

See also

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 2.0.0.
\ No newline at end of file +

See also

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 2.0.0.
\ No newline at end of file diff --git a/api/basic_json/operator=/index.html b/api/basic_json/operator=/index.html index a3e4fa9f5..f3456a8d9 100644 --- a/api/basic_json/operator=/index.html +++ b/api/basic_json/operator=/index.html @@ -24,4 +24,4 @@ }

Output:

23
 23
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/operator[]/index.html b/api/basic_json/operator[]/index.html index fe8adc16a..707d82632 100644 --- a/api/basic_json/operator[]/index.html +++ b/api/basic_json/operator[]/index.html @@ -283,4 +283,4 @@ "foo" [1,2] 2 -

See also

Version history

  1. Added in version 1.0.0.
  2. Added in version 1.0.0. Added overloads for T* key in version 1.1.0. Removed overloads for T* key (replaced by 3) in version 3.11.0.
  3. Added in version 3.11.0.
  4. Added in version 2.0.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0.
  2. Added in version 1.0.0. Added overloads for T* key in version 1.1.0. Removed overloads for T* key (replaced by 3) in version 3.11.0.
  3. Added in version 3.11.0.
  4. Added in version 2.0.0.
\ No newline at end of file diff --git a/api/basic_json/operator_ValueType/index.html b/api/basic_json/operator_ValueType/index.html index 0fd1707b1..23e1d8854 100644 --- a/api/basic_json/operator_ValueType/index.html +++ b/api/basic_json/operator_ValueType/index.html @@ -76,4 +76,4 @@ boolean: true array: [1,2,3,4,5] [json.exception.type_error.302] type must be boolean, but is string -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/operator_eq/index.html b/api/basic_json/operator_eq/index.html index ed2004fa9..a9458dc91 100644 --- a/api/basic_json/operator_eq/index.html +++ b/api/basic_json/operator_eq/index.html @@ -115,4 +115,4 @@ 17 == nullptr false "foo" == nullptr false null == nullptr true -

Version history

  1. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
  2. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
\ No newline at end of file +

Version history

  1. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
  2. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_ge/index.html b/api/basic_json/operator_ge/index.html index 1425cbb2d..78584504e 100644 --- a/api/basic_json/operator_ge/index.html +++ b/api/basic_json/operator_ge/index.html @@ -34,4 +34,4 @@ {"A":"a","B":"b"} >= {"A":"a","B":"b"} true 17 >= 17.0000000000001 false "foo" >= "bar" true -

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_gt/index.html b/api/basic_json/operator_gt/index.html index 836305598..48879609a 100644 --- a/api/basic_json/operator_gt/index.html +++ b/api/basic_json/operator_gt/index.html @@ -34,4 +34,4 @@ {"A":"a","B":"b"} > {"A":"a","B":"b"} false 17 > 17.0000000000001 false "foo" > "bar" true -

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_le/index.html b/api/basic_json/operator_le/index.html index 29d9521c4..501509311 100644 --- a/api/basic_json/operator_le/index.html +++ b/api/basic_json/operator_le/index.html @@ -34,4 +34,4 @@ {"A":"a","B":"b"} <= {"A":"a","B":"b"} true 17 <= 17.0000000000001 true "foo" <= "bar" false -

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_lt/index.html b/api/basic_json/operator_lt/index.html index 43bb015ec..70e1e5fbb 100644 --- a/api/basic_json/operator_lt/index.html +++ b/api/basic_json/operator_lt/index.html @@ -34,4 +34,4 @@ {"A":"a","B":"b"} == {"A":"a","B":"b"} false 17 == 17.0000000000001 true "foo" == "bar" false -

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
  2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_ne/index.html b/api/basic_json/operator_ne/index.html index d2ef0bc50..4b2433785 100644 --- a/api/basic_json/operator_ne/index.html +++ b/api/basic_json/operator_ne/index.html @@ -69,4 +69,4 @@ 17 != nullptr true "foo" != nullptr true null != nullptr false -

Version history

  1. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
  2. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
\ No newline at end of file +

Version history

  1. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
  2. Added in version 1.0.0. Added C++20 member functions in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_spaceship/index.html b/api/basic_json/operator_spaceship/index.html index 884abd857..19ea7de1a 100644 --- a/api/basic_json/operator_spaceship/index.html +++ b/api/basic_json/operator_spaceship/index.html @@ -93,4 +93,4 @@ 17 <=> 17.000000 := equivalent 17 <=> nan := unordered "17" <=> 17 := greater -

See also

Version history

  1. Added in version 3.11.0.
  2. Added in version 3.11.0.
\ No newline at end of file +

See also

Version history

  1. Added in version 3.11.0.
  2. Added in version 3.11.0.
\ No newline at end of file diff --git a/api/basic_json/operator_value_t/index.html b/api/basic_json/operator_value_t/index.html index 49b1bdffd..f81329ba6 100644 --- a/api/basic_json/operator_value_t/index.html +++ b/api/basic_json/operator_value_t/index.html @@ -45,4 +45,4 @@ true true true -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/other_error/index.html b/api/basic_json/other_error/index.html index 4cb98ad5c..51835a97a 100644 --- a/api/basic_json/other_error/index.html +++ b/api/basic_json/other_error/index.html @@ -59,4 +59,4 @@ }

Output:

message: [json.exception.other_error.501] unsuccessful: {"op":"test","path":"/best_biscuit/name","value":"Choco Leibniz"}
 exception id: 501
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/out_of_range/index.html b/api/basic_json/out_of_range/index.html index 516f82106..2c69ccf4b 100644 --- a/api/basic_json/out_of_range/index.html +++ b/api/basic_json/out_of_range/index.html @@ -49,4 +49,4 @@ }

Output:

message: [json.exception.out_of_range.401] array index 4 is out of range
 exception id: 401
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/parse/index.html b/api/basic_json/parse/index.html index a0afb178c..138c20ec1 100644 --- a/api/basic_json/parse/index.html +++ b/api/basic_json/parse/index.html @@ -424,4 +424,4 @@ "Neptune" ] } -

See also

Version history

Deprecation

Overload (2) replaces calls to parse with a pair of iterators as their first parameter which has been deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like parse({ptr, ptr+len}, ...); with parse(ptr, ptr+len, ...);.

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file +

See also

Version history

Deprecation

Overload (2) replaces calls to parse with a pair of iterators as their first parameter which has been deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like parse({ptr, ptr+len}, ...); with parse(ptr, ptr+len, ...);.

You should be warned by your compiler with a -Wdeprecated-declarations warning if you are using a deprecated function.

\ No newline at end of file diff --git a/api/basic_json/parse_error/index.html b/api/basic_json/parse_error/index.html index 0262395b4..055931e32 100644 --- a/api/basic_json/parse_error/index.html +++ b/api/basic_json/parse_error/index.html @@ -50,4 +50,4 @@

Output:

message: [json.exception.parse_error.101] parse error at line 1, column 8: syntax error while parsing value - unexpected ']'; expected '[', '{', or a literal
 exception id: 101
 byte position of error: 8
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/parse_event_t/index.html b/api/basic_json/parse_event_t/index.html index ff39499fe..fb0f082d5 100644 --- a/api/basic_json/parse_event_t/index.html +++ b/api/basic_json/parse_event_t/index.html @@ -6,4 +6,4 @@ key, value }; -

The parser callback distinguishes the following events:

Examples

Example when certain parse events are triggered

Version history

\ No newline at end of file +

The parser callback distinguishes the following events:

Examples

Example when certain parse events are triggered

Version history

\ No newline at end of file diff --git a/api/basic_json/parser_callback_t/index.html b/api/basic_json/parser_callback_t/index.html index 98aa38f16..6b554af6d 100644 --- a/api/basic_json/parser_callback_t/index.html +++ b/api/basic_json/parser_callback_t/index.html @@ -83,4 +83,4 @@ "Width": 800 } } -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/patch/index.html b/api/basic_json/patch/index.html index be633c6a8..b59b3f9ca 100644 --- a/api/basic_json/patch/index.html +++ b/api/basic_json/patch/index.html @@ -43,4 +43,4 @@ "world" ] } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/patch_inplace/index.html b/api/basic_json/patch_inplace/index.html index d43429acd..16f48f19f 100644 --- a/api/basic_json/patch_inplace/index.html +++ b/api/basic_json/patch_inplace/index.html @@ -47,4 +47,4 @@ "world" ] } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/push_back/index.html b/api/basic_json/push_back/index.html index 17df278ca..d251b388c 100644 --- a/api/basic_json/push_back/index.html +++ b/api/basic_json/push_back/index.html @@ -96,4 +96,4 @@ null {"four":4,"one":1,"three":3,"two":2} [["five",5]] -

See also

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 2.0.0.
\ No newline at end of file +

See also

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 2.0.0.
\ No newline at end of file diff --git a/api/basic_json/rbegin/index.html b/api/basic_json/rbegin/index.html index 7273ac480..6e9a6e427 100644 --- a/api/basic_json/rbegin/index.html +++ b/api/basic_json/rbegin/index.html @@ -17,4 +17,4 @@ std::cout << *it << '\n'; }

Output:

5
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/rend/index.html b/api/basic_json/rend/index.html index c20d700ab..cbe5f4be9 100644 --- a/api/basic_json/rend/index.html +++ b/api/basic_json/rend/index.html @@ -20,4 +20,4 @@ std::cout << *it << '\n'; }

Output:

1
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/sax_parse/index.html b/api/basic_json/sax_parse/index.html index 7c4772551..10b9e6659 100644 --- a/api/basic_json/sax_parse/index.html +++ b/api/basic_json/sax_parse/index.html @@ -183,4 +183,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

Deprecation

Overload (2) replaces calls to sax_parse with a pair of iterators as their first parameter which has been deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like sax_parse({ptr, ptr+len}); with sax_parse(ptr, ptr+len);.

\ No newline at end of file +

Version history

Deprecation

Overload (2) replaces calls to sax_parse with a pair of iterators as their first parameter which has been deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like sax_parse({ptr, ptr+len}); with sax_parse(ptr, ptr+len);.

\ No newline at end of file diff --git a/api/basic_json/size/index.html b/api/basic_json/size/index.html index 4a7aefcb3..e8d19b9b5 100644 --- a/api/basic_json/size/index.html +++ b/api/basic_json/size/index.html @@ -37,4 +37,4 @@ 5 0 1 -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/start_pos/index.html b/api/basic_json/start_pos/index.html index affb5d3f4..7dd1e4c38 100644 --- a/api/basic_json/start_pos/index.html +++ b/api/basic_json/start_pos/index.html @@ -101,4 +101,4 @@ Original string: 1 Parsed string: 1 -

The output shows the start/end positions of all the objects and fields in the JSON string.

See also

Version history

\ No newline at end of file +

The output shows the start/end positions of all the objects and fields in the JSON string.

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/std_hash/index.html b/api/basic_json/std_hash/index.html index fc933c3a2..2e442a0c9 100644 --- a/api/basic_json/std_hash/index.html +++ b/api/basic_json/std_hash/index.html @@ -28,4 +28,4 @@ hash({}) = 2654435832 hash([]) = 2654435899 hash({"hello": "world"}) = 4469488738203676328 -

Note the output is platform-dependent.

Version history

\ No newline at end of file +

Note the output is platform-dependent.

Version history

\ No newline at end of file diff --git a/api/basic_json/std_swap/index.html b/api/basic_json/std_swap/index.html index a3af40f5f..7d7664d36 100644 --- a/api/basic_json/std_swap/index.html +++ b/api/basic_json/std_swap/index.html @@ -26,4 +26,4 @@ }

Output:

j1 = {"one":1,"two":2} | j2 = [1,2,4,8,16]
 j1 = [1,2,4,8,16] | j2 = {"one":1,"two":2}
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/string_t/index.html b/api/basic_json/string_t/index.html index 66433ccfc..3fb4c12fd 100644 --- a/api/basic_json/string_t/index.html +++ b/api/basic_json/string_t/index.html @@ -10,4 +10,4 @@ std::cout << std::boolalpha << std::is_same<std::string, json::string_t>::value << std::endl; }

Output:

true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/swap/index.html b/api/basic_json/swap/index.html index acea035a1..4f8d8b6f9 100644 --- a/api/basic_json/swap/index.html +++ b/api/basic_json/swap/index.html @@ -126,4 +126,4 @@ }

Output:

value = {"bytes":[4,5,6],"subtype":null}
 binary = {"bytes":[1,2,3],"subtype":null}
-

See also

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 1.0.0.
  4. Since version 1.0.0.
  5. Since version 1.0.0.
  6. Since version 3.8.0.
  7. Since version 3.8.0.
\ No newline at end of file +

See also

Version history

  1. Since version 1.0.0.
  2. Since version 1.0.0.
  3. Since version 1.0.0.
  4. Since version 1.0.0.
  5. Since version 1.0.0.
  6. Since version 3.8.0.
  7. Since version 3.8.0.
\ No newline at end of file diff --git a/api/basic_json/to_bjdata/index.html b/api/basic_json/to_bjdata/index.html index 7f347b0a5..aff7a73c8 100644 --- a/api/basic_json/to_bjdata/index.html +++ b/api/basic_json/to_bjdata/index.html @@ -79,4 +79,4 @@ [i1i2i3i4i5i6i7i8] [#i8i1i2i3i4i5i6i7i8 [$i#i812345678 -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/to_bson/index.html b/api/basic_json/to_bson/index.html index 4561d9ca3..7cf5964d8 100644 --- a/api/basic_json/to_bson/index.html +++ b/api/basic_json/to_bson/index.html @@ -27,4 +27,4 @@ std::cout << std::endl; }

Output:

0x1b 0x00 0x00 0x00 0x08 0x63 0x6f 0x6d 0x70 0x61 0x63 0x74 0x00 0x01 0x10 0x73 0x63 0x68 0x65 0x6d 0x61 0x00 0x00 0x00 0x00 0x00 0x00 
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/to_cbor/index.html b/api/basic_json/to_cbor/index.html index 913bffc3e..105d66df4 100644 --- a/api/basic_json/to_cbor/index.html +++ b/api/basic_json/to_cbor/index.html @@ -27,4 +27,4 @@ std::cout << std::endl; }

Output:

0xa2 0x67 0x63 0x6f 0x6d 0x70 0x61 0x63 0x74 0xf5 0x66 0x73 0x63 0x68 0x65 0x6d 0x61 0x00 
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/to_msgpack/index.html b/api/basic_json/to_msgpack/index.html index 8d3ef4378..bd630ae77 100644 --- a/api/basic_json/to_msgpack/index.html +++ b/api/basic_json/to_msgpack/index.html @@ -27,4 +27,4 @@ std::cout << std::endl; }

Output:

0x82 0xa7 0x63 0x6f 0x6d 0x70 0x61 0x63 0x74 0xc3 0xa6 0x73 0x63 0x68 0x65 0x6d 0x61 0x00 
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/to_string/index.html b/api/basic_json/to_string/index.html index 93029b096..37accb98b 100644 --- a/api/basic_json/to_string/index.html +++ b/api/basic_json/to_string/index.html @@ -28,4 +28,4 @@

Output:

{"one":1,"two":2}
 
 42
-

See also

Version history

Added in version 3.7.0.

\ No newline at end of file +

See also

Version history

Added in version 3.7.0.

\ No newline at end of file diff --git a/api/basic_json/to_ubjson/index.html b/api/basic_json/to_ubjson/index.html index 345b9b591..37cc991cd 100644 --- a/api/basic_json/to_ubjson/index.html +++ b/api/basic_json/to_ubjson/index.html @@ -76,4 +76,4 @@ [i1i2i3i4i5i6i7i8] [#i8i1i2i3i4i5i6i7i8 [$i#i812345678 -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/type/index.html b/api/basic_json/type/index.html index fe8146ca1..b5452a947 100644 --- a/api/basic_json/type/index.html +++ b/api/basic_json/type/index.html @@ -35,4 +35,4 @@ true true true -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/type_error/index.html b/api/basic_json/type_error/index.html index b387c9a08..ea9358594 100644 --- a/api/basic_json/type_error/index.html +++ b/api/basic_json/type_error/index.html @@ -49,4 +49,4 @@ }

Output:

message: [json.exception.type_error.308] cannot use push_back() with string
 exception id: 308
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/type_name/index.html b/api/basic_json/type_name/index.html index 97eebbd3f..ff8bb9028 100644 --- a/api/basic_json/type_name/index.html +++ b/api/basic_json/type_name/index.html @@ -34,4 +34,4 @@ {"one":1,"two":2} is an object [1,2,4,8,16] is an array "Hello, world" is a string -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/unflatten/index.html b/api/basic_json/unflatten/index.html index ebd38a8f7..03edb523a 100644 --- a/api/basic_json/unflatten/index.html +++ b/api/basic_json/unflatten/index.html @@ -43,4 +43,4 @@ }, "pi": 3.141 } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/basic_json/update/index.html b/api/basic_json/update/index.html index 0f1d65a21..2745e0323 100644 --- a/api/basic_json/update/index.html +++ b/api/basic_json/update/index.html @@ -110,4 +110,4 @@ "active": true, "name": {"de": "Maus", "en": "mouse", "es": "ratón"} } -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/value/index.html b/api/basic_json/value/index.html index ed39118a2..3257e1300 100644 --- a/api/basic_json/value/index.html +++ b/api/basic_json/value/index.html @@ -136,4 +136,4 @@ << " " << v_string << " " << v_boolean << "\n"; }

Output:

1 42.23 oops false
-

See also

Version history

  1. Added in version 1.0.0. Changed parameter default_value type from const ValueType& to ValueType&& in version 3.11.0.
  2. Added in version 3.11.0. Made ValueType the first template parameter in version 3.11.2.
  3. Added in version 2.0.2.
\ No newline at end of file +

See also

Version history

  1. Added in version 1.0.0. Changed parameter default_value type from const ValueType& to ValueType&& in version 3.11.0.
  2. Added in version 3.11.0. Made ValueType the first template parameter in version 3.11.2.
  3. Added in version 2.0.2.
\ No newline at end of file diff --git a/api/basic_json/value_t/index.html b/api/basic_json/value_t/index.html index e9526d9a7..d2583d047 100644 --- a/api/basic_json/value_t/index.html +++ b/api/basic_json/value_t/index.html @@ -46,4 +46,4 @@ true true true -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/basic_json/~basic_json/index.html b/api/basic_json/~basic_json/index.html index d4e07c23f..46779948f 100644 --- a/api/basic_json/~basic_json/index.html +++ b/api/basic_json/~basic_json/index.html @@ -1,2 +1,2 @@ (Destructor) - JSON for Modern C++
Skip to content

nlohmann::basic_json::~basic_json

~basic_json() noexcept;
-

Destroys the JSON value and frees all allocated memory.

Exception safety

No-throw guarantee: this member function never throws exceptions.

Complexity

Linear.

Version history

  • Added in version 1.0.0.
\ No newline at end of file +

Destroys the JSON value and frees all allocated memory.

Exception safety

No-throw guarantee: this member function never throws exceptions.

Complexity

Linear.

Version history

\ No newline at end of file diff --git a/api/byte_container_with_subtype/byte_container_with_subtype/index.html b/api/byte_container_with_subtype/byte_container_with_subtype/index.html index 664883937..ec241a91e 100644 --- a/api/byte_container_with_subtype/byte_container_with_subtype/index.html +++ b/api/byte_container_with_subtype/byte_container_with_subtype/index.html @@ -34,4 +34,4 @@

Output:

{"bytes":[],"subtype":null}
 {"bytes":[202,254,186,190],"subtype":null}
 {"bytes":[202,254,186,190],"subtype":42}
-

Version history

Since version 3.8.0.

\ No newline at end of file +

Version history

Since version 3.8.0.

\ No newline at end of file diff --git a/api/byte_container_with_subtype/clear_subtype/index.html b/api/byte_container_with_subtype/clear_subtype/index.html index d4245d9c9..0e7ba8af5 100644 --- a/api/byte_container_with_subtype/clear_subtype/index.html +++ b/api/byte_container_with_subtype/clear_subtype/index.html @@ -22,4 +22,4 @@ }

Output:

before calling clear_subtype(): {"bytes":[202,254,186,190],"subtype":42}
 after calling clear_subtype(): {"bytes":[202,254,186,190],"subtype":null}
-

Version history

Since version 3.8.0.

\ No newline at end of file +

Version history

Since version 3.8.0.

\ No newline at end of file diff --git a/api/byte_container_with_subtype/has_subtype/index.html b/api/byte_container_with_subtype/has_subtype/index.html index 086761fc5..2b554caf0 100644 --- a/api/byte_container_with_subtype/has_subtype/index.html +++ b/api/byte_container_with_subtype/has_subtype/index.html @@ -20,4 +20,4 @@ }

Output:

c1.has_subtype() = false
 c2.has_subtype() = true
-

Version history

Since version 3.8.0.

\ No newline at end of file +

Version history

Since version 3.8.0.

\ No newline at end of file diff --git a/api/byte_container_with_subtype/index.html b/api/byte_container_with_subtype/index.html index 6119e5925..e41c0476f 100644 --- a/api/byte_container_with_subtype/index.html +++ b/api/byte_container_with_subtype/index.html @@ -1,3 +1,3 @@ Overview - JSON for Modern C++
Skip to content

nlohmann::byte_container_with_subtype

template<typename BinaryType>
 class byte_container_with_subtype : public BinaryType;
-

This type extends the template parameter BinaryType provided to basic_json with a subtype used by BSON and MessagePack. This type exists so that the user does not have to specify a type themselves with a specific naming scheme in order to override the binary type.

Template parameters

BinaryType
container to store bytes (std::vector<std::uint8_t> by default)

Member types

  • container_type - the type of the underlying container (BinaryType)
  • subtype_type - the type of the subtype (std::uint64_t)

Member functions

Version history

  • Added in version 3.8.0.
  • Changed the type of subtypes to std::uint64_t in 3.10.0.
\ No newline at end of file +

This type extends the template parameter BinaryType provided to basic_json with a subtype used by BSON and MessagePack. This type exists so that the user does not have to specify a type themselves with a specific naming scheme in order to override the binary type.

Template parameters

BinaryType
container to store bytes (std::vector<std::uint8_t> by default)

Member types

Member functions

Version history

\ No newline at end of file diff --git a/api/byte_container_with_subtype/set_subtype/index.html b/api/byte_container_with_subtype/set_subtype/index.html index da920eee1..51e04c6a5 100644 --- a/api/byte_container_with_subtype/set_subtype/index.html +++ b/api/byte_container_with_subtype/set_subtype/index.html @@ -23,4 +23,4 @@ }

Output:

before calling set_subtype(42): {"bytes":[202,254,186,190],"subtype":null}
 after calling set_subtype(42): {"bytes":[202,254,186,190],"subtype":42}
-

Version history

Since version 3.8.0.

\ No newline at end of file +

Version history

Since version 3.8.0.

\ No newline at end of file diff --git a/api/byte_container_with_subtype/subtype/index.html b/api/byte_container_with_subtype/subtype/index.html index 443590e14..a9916a789 100644 --- a/api/byte_container_with_subtype/subtype/index.html +++ b/api/byte_container_with_subtype/subtype/index.html @@ -23,4 +23,4 @@ }

Output:

c1.subtype() = 18446744073709551615
 c2.subtype() = 42
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json/index.html b/api/json/index.html index fe05f5f6d..808dffc61 100644 --- a/api/json/index.html +++ b/api/json/index.html @@ -65,4 +65,4 @@ "pi": 3.141, "size": 8 } -

Version history

Since version 1.0.0.

\ No newline at end of file +

Version history

Since version 1.0.0.

\ No newline at end of file diff --git a/api/json_pointer/back/index.html b/api/json_pointer/back/index.html index d99fac54e..87a18655c 100644 --- a/api/json_pointer/back/index.html +++ b/api/json_pointer/back/index.html @@ -16,4 +16,4 @@ }

Output:

last reference token of "/foo" is "foo"
 last reference token of "/foo/0" is "0"
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_pointer/empty/index.html b/api/json_pointer/empty/index.html index e26f6f67a..7117f09d0 100644 --- a/api/json_pointer/empty/index.html +++ b/api/json_pointer/empty/index.html @@ -23,4 +23,4 @@ "": true "/foo": false "/foo/0": false -

Version history

Added in version 3.6.0.

\ No newline at end of file +

Version history

Added in version 3.6.0.

\ No newline at end of file diff --git a/api/json_pointer/index.html b/api/json_pointer/index.html index 67a0be15b..4420e2fd6 100644 --- a/api/json_pointer/index.html +++ b/api/json_pointer/index.html @@ -1,3 +1,3 @@ Overview - JSON for Modern C++
Skip to content

nlohmann::json_pointer

template<typename RefStringType>
 class json_pointer;
-

A JSON pointer defines a string syntax for identifying a specific value within a JSON document. It can be used with functions at and operator[]. Furthermore, JSON pointers are the base for JSON patches.

Template parameters

RefStringType
the string type used for the reference tokens making up the JSON pointer

Deprecation

For backwards compatibility RefStringType may also be a specialization of basic_json in which case string_t will be deduced as basic_json::string_t. This feature is deprecated and may be removed in a future major version.

Member types

  • string_t - the string type used for the reference tokens

Member functions

Literals

See also

Version history

  • Added in version 2.0.0.
  • Changed template parameter from basic_json to string type in version 3.11.0.
\ No newline at end of file +

A JSON pointer defines a string syntax for identifying a specific value within a JSON document. It can be used with functions at and operator[]. Furthermore, JSON pointers are the base for JSON patches.

Template parameters

RefStringType
the string type used for the reference tokens making up the JSON pointer

Deprecation

For backwards compatibility RefStringType may also be a specialization of basic_json in which case string_t will be deduced as basic_json::string_t. This feature is deprecated and may be removed in a future major version.

Member types

Member functions

Literals

See also

Version history

\ No newline at end of file diff --git a/api/json_pointer/json_pointer/index.html b/api/json_pointer/json_pointer/index.html index b594249e5..9846f9fa2 100644 --- a/api/json_pointer/json_pointer/index.html +++ b/api/json_pointer/json_pointer/index.html @@ -49,4 +49,4 @@

Output:

[json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'foo'
 [json.exception.parse_error.108] parse error: escape character '~' must be followed with '0' or '1'
 [json.exception.parse_error.108] parse error: escape character '~' must be followed with '0' or '1'
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_pointer/operator_eq/index.html b/api/json_pointer/operator_eq/index.html index b43433293..b6a552a87 100644 --- a/api/json_pointer/operator_eq/index.html +++ b/api/json_pointer/operator_eq/index.html @@ -82,4 +82,4 @@ "" == "": true "/foo" == "/foo": true "bar" == "/foo": [json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'bar' -

Version history

  1. Added in version 2.1.0. Added C++20 member functions in version 3.11.2.
  2. Added for backward compatibility and deprecated in version 3.11.2.
\ No newline at end of file +

Version history

  1. Added in version 2.1.0. Added C++20 member functions in version 3.11.2.
  2. Added for backward compatibility and deprecated in version 3.11.2.
\ No newline at end of file diff --git a/api/json_pointer/operator_ne/index.html b/api/json_pointer/operator_ne/index.html index 7100dd11e..44af80b68 100644 --- a/api/json_pointer/operator_ne/index.html +++ b/api/json_pointer/operator_ne/index.html @@ -72,4 +72,4 @@ "" != "": false "/foo" != "/foo": false "bar" != "/foo": [json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'bar' -

Version history

  1. Added in version 2.1.0.
  2. Added for backward compatibility and deprecated in version 3.11.2.
\ No newline at end of file +

Version history

  1. Added in version 2.1.0.
  2. Added for backward compatibility and deprecated in version 3.11.2.
\ No newline at end of file diff --git a/api/json_pointer/operator_slash/index.html b/api/json_pointer/operator_slash/index.html index 8141c5320..d722bc027 100644 --- a/api/json_pointer/operator_slash/index.html +++ b/api/json_pointer/operator_slash/index.html @@ -28,4 +28,4 @@

Output:

"/foo/bar/baz"
 "/foo/fob"
 "/foo/42"
-

Version history

  1. Added in version 3.6.0.
  2. Added in version 3.6.0. Changed type of token to string_t in version 3.11.0.
  3. Added in version 3.6.0.
\ No newline at end of file +

Version history

  1. Added in version 3.6.0.
  2. Added in version 3.6.0. Changed type of token to string_t in version 3.11.0.
  3. Added in version 3.6.0.
\ No newline at end of file diff --git a/api/json_pointer/operator_slasheq/index.html b/api/json_pointer/operator_slasheq/index.html index 7105a46d4..2af70669c 100644 --- a/api/json_pointer/operator_slasheq/index.html +++ b/api/json_pointer/operator_slasheq/index.html @@ -33,4 +33,4 @@ "/foo/bar/baz" "/foo/bar/baz/fob" "/foo/bar/baz/fob/42" -

Version history

  1. Added in version 3.6.0.
  2. Added in version 3.6.0. Changed type of token to string_t in version 3.11.0.
  3. Added in version 3.6.0.
\ No newline at end of file +

Version history

  1. Added in version 3.6.0.
  2. Added in version 3.6.0. Changed type of token to string_t in version 3.11.0.
  3. Added in version 3.6.0.
\ No newline at end of file diff --git a/api/json_pointer/operator_string_t/index.html b/api/json_pointer/operator_string_t/index.html index fdb3d02f5..7f67e0342 100644 --- a/api/json_pointer/operator_string_t/index.html +++ b/api/json_pointer/operator_string_t/index.html @@ -24,4 +24,4 @@ }

Output:

/foo/0
 /a~1b
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/json_pointer/parent_pointer/index.html b/api/json_pointer/parent_pointer/index.html index bcdfd8893..0e7d8aa1c 100644 --- a/api/json_pointer/parent_pointer/index.html +++ b/api/json_pointer/parent_pointer/index.html @@ -20,4 +20,4 @@

Output:

parent of "" is ""
 parent of "/foo" is ""
 parent of "/foo/0" is "/foo"
-

Version history

Added in version 3.6.0.

\ No newline at end of file +

Version history

Added in version 3.6.0.

\ No newline at end of file diff --git a/api/json_pointer/pop_back/index.html b/api/json_pointer/pop_back/index.html index 6fb75be9e..3ebbfd538 100644 --- a/api/json_pointer/pop_back/index.html +++ b/api/json_pointer/pop_back/index.html @@ -24,4 +24,4 @@ "/foo/bar" "/foo" "" -

Version history

Added in version 3.6.0.

\ No newline at end of file +

Version history

Added in version 3.6.0.

\ No newline at end of file diff --git a/api/json_pointer/push_back/index.html b/api/json_pointer/push_back/index.html index 11b1ea173..d9edf8add 100644 --- a/api/json_pointer/push_back/index.html +++ b/api/json_pointer/push_back/index.html @@ -26,4 +26,4 @@ "/foo" "/foo/0" "/foo/0/bar" -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_pointer/string_t/index.html b/api/json_pointer/string_t/index.html index 72fdd3b7d..755c67525 100644 --- a/api/json_pointer/string_t/index.html +++ b/api/json_pointer/string_t/index.html @@ -14,4 +14,4 @@ }

Output:

This is a string.
 true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_pointer/to_string/index.html b/api/json_pointer/to_string/index.html index e65fb5d32..86bf87092 100644 --- a/api/json_pointer/to_string/index.html +++ b/api/json_pointer/to_string/index.html @@ -46,4 +46,4 @@ "/k"l" "/ " "/m~0n" -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/binary/index.html b/api/json_sax/binary/index.html index 7facff441..1d1211de5 100644 --- a/api/json_sax/binary/index.html +++ b/api/json_sax/binary/index.html @@ -116,4 +116,4 @@

Output:

binary(val=[...])
 
 result: true
-

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/boolean/index.html b/api/json_sax/boolean/index.html index 8f3e1fe57..70e91a22b 100644 --- a/api/json_sax/boolean/index.html +++ b/api/json_sax/boolean/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/end_array/index.html b/api/json_sax/end_array/index.html index 7bcbe106f..4a64f783b 100644 --- a/api/json_sax/end_array/index.html +++ b/api/json_sax/end_array/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/end_object/index.html b/api/json_sax/end_object/index.html index 250304305..893abf6b4 100644 --- a/api/json_sax/end_object/index.html +++ b/api/json_sax/end_object/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/index.html b/api/json_sax/index.html index 5424ded44..009d98e79 100644 --- a/api/json_sax/index.html +++ b/api/json_sax/index.html @@ -1,3 +1,3 @@ Overview - JSON for Modern C++
Skip to content

nlohmann::json_sax

template<typename BasicJsonType>
 struct json_sax;
-

This class describes the SAX interface used by sax_parse. Each function is called in different situations while the input is parsed. The boolean return value informs the parser whether to continue processing the input.

Template parameters

BasicJsonType
a specialization of basic_json

Member types

Member functions

  • binary (virtual) - a binary value was read
  • boolean (virtual) - a boolean value was read
  • end_array (virtual) - the end of an array was read
  • end_object (virtual) - the end of an object was read
  • key (virtual) - an object key was read
  • null (virtual) - a null value was read
  • number_float (virtual) - a floating-point number was read
  • number_integer (virtual) - an integer number was read
  • number_unsigned (virtual) - an unsigned integer number was read
  • parse_error (virtual) - a parse error occurred
  • start_array (virtual) - the beginning of an array was read
  • start_object (virtual) - the beginning of an object was read
  • string (virtual) - a string value was read

Version history

  • Added in version 3.2.0.
  • Support for binary values (binary_t, binary) added in version 3.8.0.
\ No newline at end of file +

This class describes the SAX interface used by sax_parse. Each function is called in different situations while the input is parsed. The boolean return value informs the parser whether to continue processing the input.

Template parameters

BasicJsonType
a specialization of basic_json

Member types

Member functions

Version history

\ No newline at end of file diff --git a/api/json_sax/key/index.html b/api/json_sax/key/index.html index aa7970efd..3f1068aaa 100644 --- a/api/json_sax/key/index.html +++ b/api/json_sax/key/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/null/index.html b/api/json_sax/null/index.html index 9c79b024b..5cbf322f6 100644 --- a/api/json_sax/null/index.html +++ b/api/json_sax/null/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/number_float/index.html b/api/json_sax/number_float/index.html index 1ad98e7ef..484a122ba 100644 --- a/api/json_sax/number_float/index.html +++ b/api/json_sax/number_float/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/number_integer/index.html b/api/json_sax/number_integer/index.html index 4f537fe14..d79be927e 100644 --- a/api/json_sax/number_integer/index.html +++ b/api/json_sax/number_integer/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/number_unsigned/index.html b/api/json_sax/number_unsigned/index.html index bc9771b94..0818430a3 100644 --- a/api/json_sax/number_unsigned/index.html +++ b/api/json_sax/number_unsigned/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/parse_error/index.html b/api/json_sax/parse_error/index.html index db8661986..ca09e35d6 100644 --- a/api/json_sax/parse_error/index.html +++ b/api/json_sax/parse_error/index.html @@ -169,4 +169,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/start_array/index.html b/api/json_sax/start_array/index.html index 4326bea75..cf14042f8 100644 --- a/api/json_sax/start_array/index.html +++ b/api/json_sax/start_array/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/start_object/index.html b/api/json_sax/start_object/index.html index 3907e8b57..58253421f 100644 --- a/api/json_sax/start_object/index.html +++ b/api/json_sax/start_object/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/json_sax/string/index.html b/api/json_sax/string/index.html index b6069f9d2..62c57cb4f 100644 --- a/api/json_sax/string/index.html +++ b/api/json_sax/string/index.html @@ -167,4 +167,4 @@ ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) result: false -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/index.html b/api/macros/index.html index 1094ef401..9399ae8ab 100644 --- a/api/macros/index.html +++ b/api/macros/index.html @@ -1 +1 @@ - Overview - JSON for Modern C++
Skip to content

Macros

Some aspects of the library can be configured by defining preprocessor macros before including the json.hpp header. See also the macro overview page.

Runtime assertions

Exceptions

Language support

Library version

Library namespace

Type conversions

Comparison behavior

Serialization/deserialization macros

Enums

Classes and structs

\ No newline at end of file + Overview - JSON for Modern C++
Skip to content

Macros

Some aspects of the library can be configured by defining preprocessor macros before including the json.hpp header. See also the macro overview page.

Runtime assertions

Exceptions

Language support

Library version

Library namespace

Type conversions

Comparison behavior

Serialization/deserialization macros

Enums

Classes and structs

\ No newline at end of file diff --git a/api/macros/json_assert/index.html b/api/macros/json_assert/index.html index 3386d077c..321a22683 100644 --- a/api/macros/json_assert/index.html +++ b/api/macros/json_assert/index.html @@ -24,4 +24,4 @@ auto v = j["missing"]; }

Output:

assertion error in operator[]
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_diagnostic_positions/index.html b/api/macros/json_diagnostic_positions/index.html index 017df8d73..881f6ec4c 100644 --- a/api/macros/json_diagnostic_positions/index.html +++ b/api/macros/json_diagnostic_positions/index.html @@ -165,4 +165,4 @@ Parsed string: }

Output:

[json.exception.type_error.302] (/address/housenumber) (bytes 92-95) type must be number, but is string
 
The output shows the exception with diagnostic path info and start/end positions.
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_diagnostics/index.html b/api/macros/json_diagnostics/index.html index dab0450e2..8aefd62f7 100644 --- a/api/macros/json_diagnostics/index.html +++ b/api/macros/json_diagnostics/index.html @@ -75,4 +75,4 @@ } }

Output:

[json.exception.type_error.302] (bytes 92-95) type must be number, but is string
-
The output shows the exception with start/end positions only.

See also

Version history

\ No newline at end of file + The output shows the exception with start/end positions only.

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_disable_enum_serialization/index.html b/api/macros/json_disable_enum_serialization/index.html index f1f74d411..022486346 100644 --- a/api/macros/json_disable_enum_serialization/index.html +++ b/api/macros/json_disable_enum_serialization/index.html @@ -89,4 +89,4 @@ // uses user-defined from_json function Choice ch = j.get<Choice>(); } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_has_cpp_11/index.html b/api/macros/json_has_cpp_11/index.html index 6b567880f..e5d8e80fd 100644 --- a/api/macros/json_has_cpp_11/index.html +++ b/api/macros/json_has_cpp_11/index.html @@ -6,4 +6,4 @@ #include <nlohmann/json.hpp> ... -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/json_has_filesystem/index.html b/api/macros/json_has_filesystem/index.html index 68ddb2285..69a92c456 100644 --- a/api/macros/json_has_filesystem/index.html +++ b/api/macros/json_has_filesystem/index.html @@ -4,4 +4,4 @@ #include <nlohmann/json.hpp> ... -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/json_has_ranges/index.html b/api/macros/json_has_ranges/index.html index b646ab37e..e3d599374 100644 --- a/api/macros/json_has_ranges/index.html +++ b/api/macros/json_has_ranges/index.html @@ -3,4 +3,4 @@ #include <nlohmann/json.hpp> ... -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/json_has_static_rtti/index.html b/api/macros/json_has_static_rtti/index.html index 01d0da127..589886a1a 100644 --- a/api/macros/json_has_static_rtti/index.html +++ b/api/macros/json_has_static_rtti/index.html @@ -3,4 +3,4 @@ #include <nlohmann/json.hpp> ... -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/json_has_three_way_comparison/index.html b/api/macros/json_has_three_way_comparison/index.html index cd7594abf..b2af8aa0d 100644 --- a/api/macros/json_has_three_way_comparison/index.html +++ b/api/macros/json_has_three_way_comparison/index.html @@ -3,4 +3,4 @@ #include <nlohmann/json.hpp> ... -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/json_no_io/index.html b/api/macros/json_no_io/index.html index d8bd5bd41..eadc3ef34 100644 --- a/api/macros/json_no_io/index.html +++ b/api/macros/json_no_io/index.html @@ -4,4 +4,4 @@ #include <nlohmann/json.hpp> ... -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/macros/json_noexception/index.html b/api/macros/json_noexception/index.html index 9a1cbb67b..dceaa9ab6 100644 --- a/api/macros/json_noexception/index.html +++ b/api/macros/json_noexception/index.html @@ -4,4 +4,4 @@ #include <nlohmann/json.hpp> ... -

See also

Version history

Added in version 2.1.0.

\ No newline at end of file +

See also

Version history

Added in version 2.1.0.

\ No newline at end of file diff --git a/api/macros/json_skip_library_version_check/index.html b/api/macros/json_skip_library_version_check/index.html index ed70844a7..1820b5b01 100644 --- a/api/macros/json_skip_library_version_check/index.html +++ b/api/macros/json_skip_library_version_check/index.html @@ -1,4 +1,4 @@ JSON_SKIP_LIBRARY_VERSION_CHECK - JSON for Modern C++
Skip to content

JSON_SKIP_LIBRARY_VERSION_CHECK

#define JSON_SKIP_LIBRARY_VERSION_CHECK
 

When defined, the library will not create a compiler warning when a different version of the library was already included.

Default definition

By default, the macro is not defined.

#undef JSON_SKIP_LIBRARY_VERSION_CHECK
 

Notes

ABI compatibility

Mixing different library versions in the same code can be a problem as the different versions may not be ABI compatible.

Examples

Example

The following warning will be shown in case a different version of the library was already included:

Already included a different version of the library!
-

Version history

Added in version 3.11.0.

\ No newline at end of file +

Version history

Added in version 3.11.0.

\ No newline at end of file diff --git a/api/macros/json_skip_unsupported_compiler_check/index.html b/api/macros/json_skip_unsupported_compiler_check/index.html index 743c02300..434676da1 100644 --- a/api/macros/json_skip_unsupported_compiler_check/index.html +++ b/api/macros/json_skip_unsupported_compiler_check/index.html @@ -4,4 +4,4 @@ #include <nlohmann/json.hpp> ... -

Version history

Added in version 3.2.0.

\ No newline at end of file +

Version history

Added in version 3.2.0.

\ No newline at end of file diff --git a/api/macros/json_throw_user/index.html b/api/macros/json_throw_user/index.html index f5d214d1f..409b51a60 100644 --- a/api/macros/json_throw_user/index.html +++ b/api/macros/json_throw_user/index.html @@ -21,4 +21,4 @@ std::abort();} #include <nlohmann/json.hpp> -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_use_global_udls/index.html b/api/macros/json_use_global_udls/index.html index 4402b32a1..909e02aba 100644 --- a/api/macros/json_use_global_udls/index.html +++ b/api/macros/json_use_global_udls/index.html @@ -29,4 +29,4 @@ std::cout << j << std::endl; }

Output:

42
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_use_implicit_conversions/index.html b/api/macros/json_use_implicit_conversions/index.html index e69ab31cf..542467a48 100644 --- a/api/macros/json_use_implicit_conversions/index.html +++ b/api/macros/json_use_implicit_conversions/index.html @@ -4,4 +4,4 @@ std::string s = j;

When JSON_USE_IMPLICIT_CONVERSIONS is defined to 0, the code above does no longer compile. Instead, it must be written like this:

json j = "Hello, world!";
 auto s = j.get<std::string>();
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/json_use_legacy_discarded_value_comparison/index.html b/api/macros/json_use_legacy_discarded_value_comparison/index.html index 6d17bb6c1..521e63a85 100644 --- a/api/macros/json_use_legacy_discarded_value_comparison/index.html +++ b/api/macros/json_use_legacy_discarded_value_comparison/index.html @@ -4,4 +4,4 @@ #include <nlohmann/json.hpp> ... -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/nlohmann_define_derived_type/index.html b/api/macros/nlohmann_define_derived_type/index.html index e44179304..204eb4805 100644 --- a/api/macros/nlohmann_define_derived_type/index.html +++ b/api/macros/nlohmann_define_derived_type/index.html @@ -86,4 +86,4 @@ "Ba": 23, "Bb": 42 } -

Notes:

See also

Version history

  1. Added in version 3.12.0.
  2. Added in version 3.12.0.
  3. Added in version 3.12.0.
  4. Added in version 3.12.0.
  5. Added in version 3.12.0.
  6. Added in version 3.12.0.
\ No newline at end of file +

Notes:

See also

Version history

  1. Added in version 3.12.0.
  2. Added in version 3.12.0.
  3. Added in version 3.12.0.
  4. Added in version 3.12.0.
  5. Added in version 3.12.0.
  6. Added in version 3.12.0.
\ No newline at end of file diff --git a/api/macros/nlohmann_define_type_intrusive/index.html b/api/macros/nlohmann_define_type_intrusive/index.html index 3ffd1dab8..d372378b2 100644 --- a/api/macros/nlohmann_define_type_intrusive/index.html +++ b/api/macros/nlohmann_define_type_intrusive/index.html @@ -291,4 +291,4 @@ json j = p; std::cout << "serialization: " << j << std::endl; } -

See also

Version history

  1. Added in version 3.9.0.
  2. Added in version 3.11.0.
  3. Added in version 3.11.3.
\ No newline at end of file +

See also

Version history

  1. Added in version 3.9.0.
  2. Added in version 3.11.0.
  3. Added in version 3.11.3.
\ No newline at end of file diff --git a/api/macros/nlohmann_define_type_non_intrusive/index.html b/api/macros/nlohmann_define_type_non_intrusive/index.html index 3228cbfd8..000c03020 100644 --- a/api/macros/nlohmann_define_type_non_intrusive/index.html +++ b/api/macros/nlohmann_define_type_non_intrusive/index.html @@ -259,4 +259,4 @@ json j = p; std::cout << "serialization: " << j << std::endl; } -

See also

Version history

  1. Added in version 3.9.0.
  2. Added in version 3.11.0.
  3. Added in version 3.11.3.
\ No newline at end of file +

See also

Version history

  1. Added in version 3.9.0.
  2. Added in version 3.11.0.
  3. Added in version 3.11.3.
\ No newline at end of file diff --git a/api/macros/nlohmann_json_namespace/index.html b/api/macros/nlohmann_json_namespace/index.html index 0652323d4..cdfb098b0 100644 --- a/api/macros/nlohmann_json_namespace/index.html +++ b/api/macros/nlohmann_json_namespace/index.html @@ -14,4 +14,4 @@ std::cout << QUOTE(NLOHMANN_JSON_NAMESPACE) << std::endl; }

Output:

nlohmann::json_abi_v3_12_0
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/nlohmann_json_namespace_begin/index.html b/api/macros/nlohmann_json_namespace_begin/index.html index 93bad0540..9698e3e2d 100644 --- a/api/macros/nlohmann_json_namespace_begin/index.html +++ b/api/macros/nlohmann_json_namespace_begin/index.html @@ -40,4 +40,4 @@ std::cout << j << std::endl; }

Output:

[1,null]
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/nlohmann_json_namespace_no_version/index.html b/api/macros/nlohmann_json_namespace_no_version/index.html index 985cd2bda..6ed373acb 100644 --- a/api/macros/nlohmann_json_namespace_no_version/index.html +++ b/api/macros/nlohmann_json_namespace_no_version/index.html @@ -14,4 +14,4 @@ std::cout << QUOTE(NLOHMANN_JSON_NAMESPACE) << std::endl; }

Output:

nlohmann::json_abi
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/macros/nlohmann_json_serialize_enum/index.html b/api/macros/nlohmann_json_serialize_enum/index.html index 1db33c5ee..ed0cdc3ef 100644 --- a/api/macros/nlohmann_json_serialize_enum/index.html +++ b/api/macros/nlohmann_json_serialize_enum/index.html @@ -101,4 +101,4 @@

Output:

0 -> "red"
 "rot" -> 0
 "red" -> 0
-

See also

Version history

Added in version 3.4.0.

\ No newline at end of file +

See also

Version history

Added in version 3.4.0.

\ No newline at end of file diff --git a/api/macros/nlohmann_json_version_major/index.html b/api/macros/nlohmann_json_version_major/index.html index 7ca0c59bb..00f7cb3a8 100644 --- a/api/macros/nlohmann_json_version_major/index.html +++ b/api/macros/nlohmann_json_version_major/index.html @@ -14,4 +14,4 @@ << NLOHMANN_JSON_VERSION_PATCH << std::endl; }

Output:

JSON for Modern C++ version 3.12.0
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/operator_gtgt/index.html b/api/operator_gtgt/index.html index 692edadb9..fb79b9513 100644 --- a/api/operator_gtgt/index.html +++ b/api/operator_gtgt/index.html @@ -38,4 +38,4 @@ "number": 23, "string": "Hello, world!" } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/operator_literal_json/index.html b/api/operator_literal_json/index.html index 197d63e97..e6c3995a8 100644 --- a/api/operator_literal_json/index.html +++ b/api/operator_literal_json/index.html @@ -22,4 +22,4 @@ "answer": 42, "hello": "world" } -

Version history

\ No newline at end of file +

Version history

\ No newline at end of file diff --git a/api/operator_literal_json_pointer/index.html b/api/operator_literal_json_pointer/index.html index 9d3d104ca..9f2f17b2d 100644 --- a/api/operator_literal_json_pointer/index.html +++ b/api/operator_literal_json_pointer/index.html @@ -20,4 +20,4 @@ std::cout << std::setw(2) << val << '\n'; }

Output:

"world"
-

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/api/operator_ltlt/index.html b/api/operator_ltlt/index.html index c6380386d..f8c0fca17 100644 --- a/api/operator_ltlt/index.html +++ b/api/operator_ltlt/index.html @@ -57,4 +57,4 @@ std::cout << ptr << std::endl; }

Output:

/foo/bar/baz
-

Version history

  1. Added in version 1.0.0. Added support for indentation character and deprecated std::ostream& operator>>(const basic_json& j, std::ostream& o) in version 3.0.0.
  2. Added in version 3.11.0.
\ No newline at end of file +

Version history

  1. Added in version 1.0.0. Added support for indentation character and deprecated std::ostream& operator>>(const basic_json& j, std::ostream& o) in version 3.0.0.
  2. Added in version 3.11.0.
\ No newline at end of file diff --git a/api/ordered_json/index.html b/api/ordered_json/index.html index d2fb5fc2a..ec6a5dbcf 100644 --- a/api/ordered_json/index.html +++ b/api/ordered_json/index.html @@ -18,4 +18,4 @@ "two": 2, "three": 3 } -

See also

Version history

Since version 3.9.0.

\ No newline at end of file +

See also

Version history

Since version 3.9.0.

\ No newline at end of file diff --git a/api/ordered_map/index.html b/api/ordered_map/index.html index d8bd74692..1beb2a604 100644 --- a/api/ordered_map/index.html +++ b/api/ordered_map/index.html @@ -51,4 +51,4 @@ m_std = { one:eins three:drei two:zwei } m_ordered = { two:zwei three:drei one:eins } m_std = { one:eins three:drei two:zwei } -

See also

Version history

\ No newline at end of file +

See also

Version history

\ No newline at end of file diff --git a/assets/external/fonts.googleapis.com/css.61a430c9.css b/assets/external/fonts.googleapis.com/css.61a430c9.css index 9519337d2..0c9df56ca 100644 --- a/assets/external/fonts.googleapis.com/css.61a430c9.css +++ b/assets/external/fonts.googleapis.com/css.61a430c9.css @@ -221,7 +221,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @@ -231,7 +231,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* greek-ext */ @@ -241,7 +241,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2) format('woff2'); unicode-range: U+1F00-1FFF; } /* greek */ @@ -251,7 +251,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2) format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; } /* math */ @@ -261,7 +261,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; } /* symbols */ @@ -271,7 +271,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; } /* vietnamese */ @@ -281,7 +281,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2) format('woff2'); unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; } /* latin-ext */ @@ -291,7 +291,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @@ -301,7 +301,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* cyrillic-ext */ @@ -311,7 +311,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @@ -321,7 +321,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* greek-ext */ @@ -331,7 +331,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2) format('woff2'); unicode-range: U+1F00-1FFF; } /* greek */ @@ -341,7 +341,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2) format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; } /* math */ @@ -351,7 +351,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; } /* symbols */ @@ -361,7 +361,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; } /* vietnamese */ @@ -371,7 +371,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2) format('woff2'); unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; } /* latin-ext */ @@ -381,7 +381,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @@ -391,7 +391,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* cyrillic-ext */ @@ -401,7 +401,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @@ -411,7 +411,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* greek-ext */ @@ -421,7 +421,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2) format('woff2'); unicode-range: U+1F00-1FFF; } /* greek */ @@ -431,7 +431,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2) format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; } /* math */ @@ -441,7 +441,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; } /* symbols */ @@ -451,7 +451,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; } /* vietnamese */ @@ -461,7 +461,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2) format('woff2'); unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; } /* latin-ext */ @@ -471,7 +471,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @@ -481,7 +481,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* cyrillic-ext */ @@ -491,7 +491,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @@ -501,7 +501,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* greek-ext */ @@ -511,7 +511,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format('woff2'); unicode-range: U+1F00-1FFF; } /* greek */ @@ -521,7 +521,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; } /* math */ @@ -531,7 +531,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; } /* symbols */ @@ -541,7 +541,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; } /* vietnamese */ @@ -551,7 +551,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format('woff2'); unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; } /* latin-ext */ @@ -561,7 +561,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @@ -571,7 +571,7 @@ font-weight: 300; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* cyrillic-ext */ @@ -581,7 +581,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @@ -591,7 +591,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* greek-ext */ @@ -601,7 +601,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format('woff2'); unicode-range: U+1F00-1FFF; } /* greek */ @@ -611,7 +611,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; } /* math */ @@ -621,7 +621,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; } /* symbols */ @@ -631,7 +631,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; } /* vietnamese */ @@ -641,7 +641,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format('woff2'); unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; } /* latin-ext */ @@ -651,7 +651,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @@ -661,7 +661,7 @@ font-weight: 400; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* cyrillic-ext */ @@ -671,7 +671,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @@ -681,7 +681,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* greek-ext */ @@ -691,7 +691,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format('woff2'); unicode-range: U+1F00-1FFF; } /* greek */ @@ -701,7 +701,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format('woff2'); unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; } /* math */ @@ -711,7 +711,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF; } /* symbols */ @@ -721,7 +721,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF; } /* vietnamese */ @@ -731,7 +731,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format('woff2'); unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; } /* latin-ext */ @@ -741,7 +741,7 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @@ -751,6 +751,6 @@ font-weight: 700; font-stretch: 100%; font-display: fallback; - src: url(../fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format('woff2'); + src: url(../fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 deleted file mode 100644 index f99b50f2a..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 deleted file mode 100644 index a61e52eb1..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 deleted file mode 100644 index 7c9cbed63..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 deleted file mode 100644 index 20e048850..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 deleted file mode 100644 index b67713018..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 deleted file mode 100644 index cfd3d3a2e..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 deleted file mode 100644 index 6cc1de8c7..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 deleted file mode 100644 index ded8a41e2..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 deleted file mode 100644 index 93f33ae89..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 deleted file mode 100644 index 58e93b075..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 deleted file mode 100644 index 0ddf16c6c..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 deleted file mode 100644 index 3cbb8ad79..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 deleted file mode 100644 index 8e43aa428..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 deleted file mode 100644 index 7186c6574..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 deleted file mode 100644 index 2f8b493b7..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 deleted file mode 100644 index 7c16c79f7..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 deleted file mode 100644 index 6c8d1c003..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 deleted file mode 100644 index 528b3bf48..000000000 Binary files a/assets/external/fonts.gstatic.com/s/roboto/v50/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 and /dev/null differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 new file mode 100644 index 000000000..421afd079 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkAnkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 new file mode 100644 index 000000000..87e662992 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBXkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 new file mode 100644 index 000000000..ec15ce77d Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkBnka.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 new file mode 100644 index 000000000..96f6a3747 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkC3kaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 new file mode 100644 index 000000000..71a854c15 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCHkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 new file mode 100644 index 000000000..a78501731 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCXkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 new file mode 100644 index 000000000..9626e562d Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkCnkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 new file mode 100644 index 000000000..e8d8a1a4d Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkaHkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 new file mode 100644 index 000000000..c891195b6 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO5CnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmkenkaWzU.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 new file mode 100644 index 000000000..72840aa02 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 new file mode 100644 index 000000000..c1d46ffe0 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 new file mode 100644 index 000000000..54a61d71b Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 new file mode 100644 index 000000000..1ee37693e Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 new file mode 100644 index 000000000..b0c0d0cb9 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 new file mode 100644 index 000000000..9722525aa Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 new file mode 100644 index 000000000..9b0f14165 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 new file mode 100644 index 000000000..f7ee2d300 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 new file mode 100644 index 000000000..05903d158 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v51/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2 differ diff --git a/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js index 4a1271d6f..ed8de2806 100644 --- a/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js +++ b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js @@ -1,5 +1,5 @@ -"use strict";var __esbuild_esm_mermaid_nm;(__esbuild_esm_mermaid_nm||={}).mermaid=(()=>{var Y3e=Object.create;var Dy=Object.defineProperty;var X3e=Object.getOwnPropertyDescriptor;var j3e=Object.getOwnPropertyNames;var K3e=Object.getPrototypeOf,Q3e=Object.prototype.hasOwnProperty;var o=(t,e)=>Dy(t,"name",{value:e,configurable:!0});var M=(t,e)=>()=>(t&&(e=t(t=0)),e);var sa=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),dr=(t,e)=>{for(var r in e)Dy(t,r,{get:e[r],enumerable:!0})},W4=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of j3e(e))!Q3e.call(t,i)&&i!==r&&Dy(t,i,{get:()=>e[i],enumerable:!(n=X3e(e,i))||n.enumerable});return t},Lr=(t,e,r)=>(W4(t,e,"default"),r&&W4(r,e,"default")),La=(t,e,r)=>(r=t!=null?Y3e(K3e(t)):{},W4(e||!t||!t.__esModule?Dy(r,"default",{value:t,enumerable:!0}):r,t)),Z3e=t=>W4(Dy({},"__esModule",{value:!0}),t);var J3e,y0,t7,Wz,Y4=M(()=>{"use strict";J3e=Object.freeze({left:0,top:0,width:16,height:16}),y0=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),t7=Object.freeze({...J3e,...y0}),Wz=Object.freeze({...t7,body:"",hidden:!1})});var e5e,Yz,Xz=M(()=>{"use strict";Y4();e5e=Object.freeze({width:null,height:null}),Yz=Object.freeze({...e5e,...y0})});var r7,X4,jz=M(()=>{"use strict";r7=o((t,e,r,n="")=>{let i=t.split(":");if(t.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let l=i.pop(),u=i.pop(),h={provider:i.length>0?i[0]:n,prefix:u,name:l};return e&&!X4(h)?null:h}let a=i[0],s=a.split("-");if(s.length>1){let l={provider:n,prefix:s.shift(),name:s.join("-")};return e&&!X4(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return e&&!X4(l,r)?null:l}return null},"stringToIcon"),X4=o((t,e)=>t?!!((e&&t.prefix===""||t.prefix)&&t.name):!1,"validateIconName")});function Kz(t,e){let r={};!t.hFlip!=!e.hFlip&&(r.hFlip=!0),!t.vFlip!=!e.vFlip&&(r.vFlip=!0);let n=((t.rotate||0)+(e.rotate||0))%4;return n&&(r.rotate=n),r}var Qz=M(()=>{"use strict";o(Kz,"mergeIconTransformations")});function n7(t,e){let r=Kz(t,e);for(let n in Wz)n in y0?n in t&&!(n in r)&&(r[n]=y0[n]):n in e?r[n]=e[n]:n in t&&(r[n]=t[n]);return r}var Zz=M(()=>{"use strict";Y4();Qz();o(n7,"mergeIconData")});function Jz(t,e){let r=t.icons,n=t.aliases||Object.create(null),i=Object.create(null);function a(s){if(r[s])return i[s]=[];if(!(s in i)){i[s]=null;let l=n[s]&&n[s].parent,u=l&&a(l);u&&(i[s]=[l].concat(u))}return i[s]}return o(a,"resolve"),(e||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var eG=M(()=>{"use strict";o(Jz,"getIconsTree")});function tG(t,e,r){let n=t.icons,i=t.aliases||Object.create(null),a={};function s(l){a=n7(n[l]||i[l],a)}return o(s,"parse"),s(e),r.forEach(s),n7(t,a)}function i7(t,e){if(t.icons[e])return tG(t,e,[]);let r=Jz(t,[e])[e];return r?tG(t,e,r):null}var rG=M(()=>{"use strict";Zz();eG();o(tG,"internalGetIconData");o(i7,"getIconData")});function a7(t,e,r){if(e===1)return t;if(r=r||100,typeof t=="number")return Math.ceil(t*e*r)/r;if(typeof t!="string")return t;let n=t.split(t5e);if(n===null||!n.length)return t;let i=[],a=n.shift(),s=r5e.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*e*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var t5e,r5e,nG=M(()=>{"use strict";t5e=/(-?[0-9.]*[0-9]+[0-9.]*)/g,r5e=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(a7,"calculateSize")});function n5e(t,e="defs"){let r="",n=t.indexOf("<"+e);for(;n>=0;){let i=t.indexOf(">",n),a=t.indexOf("",a);if(s===-1)break;r+=t.slice(i+1,a).trim(),t=t.slice(0,n).trim()+t.slice(s+1)}return{defs:r,content:t}}function i5e(t,e){return t?""+t+""+e:e}function iG(t,e,r){let n=n5e(t);return i5e(n.defs,e+n.content+r)}var aG=M(()=>{"use strict";o(n5e,"splitSVGDefs");o(i5e,"mergeDefsAndContent");o(iG,"wrapSVGContent")});function s7(t,e){let r={...t7,...t},n={...Yz,...e},i={left:r.left,top:r.top,width:r.width,height:r.height},a=r.body;[r,n].forEach(y=>{let v=[],x=y.hFlip,b=y.vFlip,T=y.rotate;x?b?T+=2:(v.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),v.push("scale(-1 1)"),i.top=i.left=0):b&&(v.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),v.push("scale(1 -1)"),i.top=i.left=0);let S;switch(T<0&&(T-=Math.floor(T/4)*4),T=T%4,T){case 1:S=i.height/2+i.top,v.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:v.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:S=i.width/2+i.left,v.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}T%2===1&&(i.left!==i.top&&(S=i.left,i.left=i.top,i.top=S),i.width!==i.height&&(S=i.width,i.width=i.height,i.height=S)),v.length&&(a=iG(a,'',""))});let s=n.width,l=n.height,u=i.width,h=i.height,f,d;s===null?(d=l===null?"1em":l==="auto"?h:l,f=a7(d,u/h)):(f=s==="auto"?u:s,d=l===null?a7(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{a5e(v)||(p[y]=v.toString())},"setAttr");m("width",f),m("height",d);let g=[i.left,i.top,u,h];return p.viewBox=g.join(" "),{attributes:p,viewBox:g,body:a}}var a5e,sG=M(()=>{"use strict";Y4();Xz();nG();aG();a5e=o(t=>t==="unset"||t==="undefined"||t==="none","isUnsetKeyword");o(s7,"iconToSVG")});function o7(t,e=o5e){let r=[],n;for(;n=s5e.exec(t);)r.push(n[1]);if(!r.length)return t;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof e=="function"?e(a):e+(l5e++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),t=t.replace(new RegExp(i,"g"),""),t}var s5e,o5e,l5e,oG=M(()=>{"use strict";s5e=/\sid="(\S+)"/g,o5e="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),l5e=0;o(o7,"replaceIDs")});function l7(t,e){let r=t.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in e)r+=" "+n+'="'+e[n]+'"';return'"+t+""}var lG=M(()=>{"use strict";o(l7,"iconToHTML")});var cG=M(()=>{"use strict";jz();rG();sG();oG();lG()});var c7,Rn,v0=M(()=>{"use strict";c7=o((t,e,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(a=>c7(t,a,i)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(a=>{t.includes(a)||t.push(a)}),t):t===void 0||r<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(a=>{typeof e[a]=="object"&&(t[a]===void 0||typeof t[a]=="object")?(t[a]===void 0&&(t[a]=Array.isArray(e[a])?[]:{}),t[a]=c7(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},"assignWithDepth"),Rn=c7});var j4=sa((u7,h7)=>{"use strict";(function(t,e){typeof u7=="object"&&typeof h7<"u"?h7.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(u7,(function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",a="minute",s="hour",l="day",u="week",h="month",f="quarter",d="year",p="date",m="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,v={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:o(function(E){var _=["th","st","nd","rd"],D=E%100;return"["+E+(_[(D-20)%10]||_[D]||_[0])+"]"},"ordinal")},x=o(function(E,_,D){var O=String(E);return!O||O.length>=_?E:""+Array(_+1-O.length).join(D)+E},"m"),b={s:x,z:o(function(E){var _=-E.utcOffset(),D=Math.abs(_),O=Math.floor(D/60),N=D%60;return(_<=0?"+":"-")+x(O,2,"0")+":"+x(N,2,"0")},"z"),m:o(function E(_,D){if(_.date()1)return E(B[0])}else{var F=_.name;S[F]=_,N=F}return!O&&N&&(T=N),N||!O&&T},"t"),A=o(function(E,_){if(k(E))return E.clone();var D=typeof _=="object"?_:{};return D.date=E,D.args=arguments,new I(D)},"O"),L=b;L.l=C,L.i=k,L.w=function(E,_){return A(E,{locale:_.$L,utc:_.$u,x:_.$x,$offset:_.$offset})};var I=(function(){function E(D){this.$L=C(D.locale,null,!0),this.parse(D),this.$x=this.$x||D.x||{},this[w]=!0}o(E,"M");var _=E.prototype;return _.parse=function(D){this.$d=(function(O){var N=O.date,P=O.utc;if(N===null)return new Date(NaN);if(L.u(N))return new Date;if(N instanceof Date)return new Date(N);if(typeof N=="string"&&!/Z$/i.test(N)){var B=N.match(g);if(B){var F=B[2]-1||0,V=(B[7]||"0").substring(0,3);return P?new Date(Date.UTC(B[1],F,B[3]||1,B[4]||0,B[5]||0,B[6]||0,V)):new Date(B[1],F,B[3]||1,B[4]||0,B[5]||0,B[6]||0,V)}}return new Date(N)})(D),this.init()},_.init=function(){var D=this.$d;this.$y=D.getFullYear(),this.$M=D.getMonth(),this.$D=D.getDate(),this.$W=D.getDay(),this.$H=D.getHours(),this.$m=D.getMinutes(),this.$s=D.getSeconds(),this.$ms=D.getMilliseconds()},_.$utils=function(){return L},_.isValid=function(){return this.$d.toString()!==m},_.isSame=function(D,O){var N=A(D);return this.startOf(O)<=N&&N<=this.endOf(O)},_.isAfter=function(D,O){return A(D){"use strict";uG=La(j4(),1),au={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},X={trace:o((...t)=>{},"trace"),debug:o((...t)=>{},"debug"),info:o((...t)=>{},"info"),warn:o((...t)=>{},"warn"),error:o((...t)=>{},"error"),fatal:o((...t)=>{},"fatal")},Ly=o(function(t="fatal"){let e=au.fatal;typeof t=="string"?t.toLowerCase()in au&&(e=au[t]):typeof t=="number"&&(e=t),X.trace=()=>{},X.debug=()=>{},X.info=()=>{},X.warn=()=>{},X.error=()=>{},X.fatal=()=>{},e<=au.fatal&&(X.fatal=console.error?console.error.bind(console,Eo("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Eo("FATAL"))),e<=au.error&&(X.error=console.error?console.error.bind(console,Eo("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Eo("ERROR"))),e<=au.warn&&(X.warn=console.warn?console.warn.bind(console,Eo("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Eo("WARN"))),e<=au.info&&(X.info=console.info?console.info.bind(console,Eo("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Eo("INFO"))),e<=au.debug&&(X.debug=console.debug?console.debug.bind(console,Eo("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Eo("DEBUG"))),e<=au.trace&&(X.trace=console.debug?console.debug.bind(console,Eo("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Eo("TRACE")))},"setLogLevel"),Eo=o(t=>`%c${(0,uG.default)().format("ss.SSS")} : ${t} : `,"format")});var K4,hG,fG=M(()=>{"use strict";K4={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:o(t=>t>=255?255:t<0?0:t,"r"),g:o(t=>t>=255?255:t<0?0:t,"g"),b:o(t=>t>=255?255:t<0?0:t,"b"),h:o(t=>t%360,"h"),s:o(t=>t>=100?100:t<0?0:t,"s"),l:o(t=>t>=100?100:t<0?0:t,"l"),a:o(t=>t>=1?1:t<0?0:t,"a")},toLinear:o(t=>{let e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},"toLinear"),hue2rgb:o((t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?t+(e-t)*6*r:r<.5?e:r<.6666666666666666?t+(e-t)*(.6666666666666666-r)*6:t),"hue2rgb"),hsl2rgb:o(({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;let i=r<.5?r*(1+e):r+e-r*e,a=2*r-i;switch(n){case"r":return K4.hue2rgb(a,i,t+.3333333333333333)*255;case"g":return K4.hue2rgb(a,i,t)*255;case"b":return K4.hue2rgb(a,i,t-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;let i=Math.max(t,e,r),a=Math.min(t,e,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;let l=i-a,u=s>.5?l/(2-i-a):l/(i+a);if(n==="s")return u*100;switch(i){case t:return((e-r)/l+(e{"use strict";c5e={clamp:o((t,e,r)=>e>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),"clamp"),round:o(t=>Math.round(t*1e10)/1e10,"round")},dG=c5e});var u5e,mG,gG=M(()=>{"use strict";u5e={dec2hex:o(t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`},"dec2hex")},mG=u5e});var h5e,Kt,Xl=M(()=>{"use strict";fG();pG();gG();h5e={channel:hG,lang:dG,unit:mG},Kt=h5e});var su,Ni,Ry=M(()=>{"use strict";Xl();su={};for(let t=0;t<=255;t++)su[t]=Kt.unit.dec2hex(t);Ni={ALL:0,RGB:1,HSL:2}});var f7,yG,vG=M(()=>{"use strict";Ry();f7=class{static{o(this,"Type")}constructor(){this.type=Ni.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=Ni.ALL}is(e){return this.type===e}},yG=f7});var d7,xG,bG=M(()=>{"use strict";Xl();vG();Ry();d7=class{static{o(this,"Channels")}constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new yG}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=Ni.ALL,this}_ensureHSL(){let e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=Kt.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=Kt.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=Kt.channel.rgb2hsl(e,"l"))}_ensureRGB(){let e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=Kt.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=Kt.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=Kt.channel.hsl2rgb(e,"b"))}get r(){let e=this.data,r=e.r;return!this.type.is(Ni.HSL)&&r!==void 0?r:(this._ensureHSL(),Kt.channel.hsl2rgb(e,"r"))}get g(){let e=this.data,r=e.g;return!this.type.is(Ni.HSL)&&r!==void 0?r:(this._ensureHSL(),Kt.channel.hsl2rgb(e,"g"))}get b(){let e=this.data,r=e.b;return!this.type.is(Ni.HSL)&&r!==void 0?r:(this._ensureHSL(),Kt.channel.hsl2rgb(e,"b"))}get h(){let e=this.data,r=e.h;return!this.type.is(Ni.RGB)&&r!==void 0?r:(this._ensureRGB(),Kt.channel.rgb2hsl(e,"h"))}get s(){let e=this.data,r=e.s;return!this.type.is(Ni.RGB)&&r!==void 0?r:(this._ensureRGB(),Kt.channel.rgb2hsl(e,"s"))}get l(){let e=this.data,r=e.l;return!this.type.is(Ni.RGB)&&r!==void 0?r:(this._ensureRGB(),Kt.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(Ni.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(Ni.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(Ni.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(Ni.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(Ni.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(Ni.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},xG=d7});var f5e,fh,Ny=M(()=>{"use strict";bG();f5e=new xG({r:0,g:0,b:0,a:0},"transparent"),fh=f5e});var TG,od,p7=M(()=>{"use strict";Ny();Ry();TG={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(t=>{if(t.charCodeAt(0)!==35)return;let e=t.match(TG.re);if(!e)return;let r=e[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,l=s?1:17,u=s?8:4,h=a?0:-1,f=s?255:15;return fh.set({r:(n>>u*(h+3)&f)*l,g:(n>>u*(h+2)&f)*l,b:(n>>u*(h+1)&f)*l,a:a?(n&f)*l/255:1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`#${su[Math.round(e)]}${su[Math.round(r)]}${su[Math.round(n)]}${su[Math.round(i*255)]}`:`#${su[Math.round(e)]}${su[Math.round(r)]}${su[Math.round(n)]}`},"stringify")},od=TG});var Q4,My,wG=M(()=>{"use strict";Xl();Ny();Q4={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:o(t=>{let e=t.match(Q4.hueRe);if(e){let[,r,n]=e;switch(n){case"grad":return Kt.channel.clamp.h(parseFloat(r)*.9);case"rad":return Kt.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return Kt.channel.clamp.h(parseFloat(r)*360)}}return Kt.channel.clamp.h(parseFloat(t))},"_hue2deg"),parse:o(t=>{let e=t.charCodeAt(0);if(e!==104&&e!==72)return;let r=t.match(Q4.re);if(!r)return;let[,n,i,a,s,l]=r;return fh.set({h:Q4._hue2deg(n),s:Kt.channel.clamp.s(parseFloat(i)),l:Kt.channel.clamp.l(parseFloat(a)),a:s?Kt.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},t)},"parse"),stringify:o(t=>{let{h:e,s:r,l:n,a:i}=t;return i<1?`hsla(${Kt.lang.round(e)}, ${Kt.lang.round(r)}%, ${Kt.lang.round(n)}%, ${i})`:`hsl(${Kt.lang.round(e)}, ${Kt.lang.round(r)}%, ${Kt.lang.round(n)}%)`},"stringify")},My=Q4});var Z4,m7,kG=M(()=>{"use strict";p7();Z4={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:o(t=>{t=t.toLowerCase();let e=Z4.colors[t];if(e)return od.parse(e)},"parse"),stringify:o(t=>{let e=od.stringify(t);for(let r in Z4.colors)if(Z4.colors[r]===e)return r},"stringify")},m7=Z4});var EG,Iy,SG=M(()=>{"use strict";Xl();Ny();EG={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:o(t=>{let e=t.charCodeAt(0);if(e!==114&&e!==82)return;let r=t.match(EG.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return fh.set({r:Kt.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:Kt.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:Kt.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?Kt.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`rgba(${Kt.lang.round(e)}, ${Kt.lang.round(r)}, ${Kt.lang.round(n)}, ${Kt.lang.round(i)})`:`rgb(${Kt.lang.round(e)}, ${Kt.lang.round(r)}, ${Kt.lang.round(n)})`},"stringify")},Iy=EG});var d5e,Mi,ou=M(()=>{"use strict";p7();wG();kG();SG();Ry();d5e={format:{keyword:m7,hex:od,rgb:Iy,rgba:Iy,hsl:My,hsla:My},parse:o(t=>{if(typeof t!="string")return t;let e=od.parse(t)||Iy.parse(t)||My.parse(t)||m7.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},"parse"),stringify:o(t=>!t.changed&&t.color?t.color:t.type.is(Ni.HSL)||t.data.r===void 0?My.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Iy.stringify(t):od.stringify(t),"stringify")},Mi=d5e});var p5e,J4,g7=M(()=>{"use strict";Xl();ou();p5e=o((t,e)=>{let r=Mi.parse(t);for(let n in e)r[n]=Kt.channel.clamp[n](e[n]);return Mi.stringify(r)},"change"),J4=p5e});var m5e,Ka,y7=M(()=>{"use strict";Xl();Ny();ou();g7();m5e=o((t,e,r=0,n=1)=>{if(typeof t!="number")return J4(t,{a:e});let i=fh.set({r:Kt.channel.clamp.r(t),g:Kt.channel.clamp.g(e),b:Kt.channel.clamp.b(r),a:Kt.channel.clamp.a(n)});return Mi.stringify(i)},"rgba"),Ka=m5e});var g5e,ld,CG=M(()=>{"use strict";Xl();ou();g5e=o((t,e)=>Kt.lang.round(Mi.parse(t)[e]),"channel"),ld=g5e});var y5e,AG,_G=M(()=>{"use strict";Xl();ou();y5e=o(t=>{let{r:e,g:r,b:n}=Mi.parse(t),i=.2126*Kt.channel.toLinear(e)+.7152*Kt.channel.toLinear(r)+.0722*Kt.channel.toLinear(n);return Kt.lang.round(i)},"luminance"),AG=y5e});var v5e,DG,LG=M(()=>{"use strict";_G();v5e=o(t=>AG(t)>=.5,"isLight"),DG=v5e});var x5e,oa,RG=M(()=>{"use strict";LG();x5e=o(t=>!DG(t),"isDark"),oa=x5e});var b5e,e3,v7=M(()=>{"use strict";Xl();ou();b5e=o((t,e,r)=>{let n=Mi.parse(t),i=n[e],a=Kt.channel.clamp[e](i+r);return i!==a&&(n[e]=a),Mi.stringify(n)},"adjustChannel"),e3=b5e});var T5e,Rt,NG=M(()=>{"use strict";v7();T5e=o((t,e)=>e3(t,"l",e),"lighten"),Rt=T5e});var w5e,Pt,MG=M(()=>{"use strict";v7();w5e=o((t,e)=>e3(t,"l",-e),"darken"),Pt=w5e});var k5e,Pe,IG=M(()=>{"use strict";ou();g7();k5e=o((t,e)=>{let r=Mi.parse(t),n={};for(let i in e)e[i]&&(n[i]=r[i]+e[i]);return J4(t,n)},"adjust"),Pe=k5e});var E5e,OG,PG=M(()=>{"use strict";ou();y7();E5e=o((t,e,r=50)=>{let{r:n,g:i,b:a,a:s}=Mi.parse(t),{r:l,g:u,b:h,a:f}=Mi.parse(e),d=r/100,p=d*2-1,m=s-f,y=((p*m===-1?p:(p+m)/(1+p*m))+1)/2,v=1-y,x=n*y+l*v,b=i*y+u*v,T=a*y+h*v,S=s*d+f*(1-d);return Ka(x,b,T,S)},"mix"),OG=E5e});var S5e,Et,BG=M(()=>{"use strict";ou();PG();S5e=o((t,e=100)=>{let r=Mi.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,OG(r,t,e)},"invert"),Et=S5e});var FG=M(()=>{"use strict";y7();CG();RG();NG();MG();IG();BG()});var eo=M(()=>{"use strict";FG()});var dh,ph,Oy=M(()=>{"use strict";dh="#ffffff",ph="#f2f2f2"});var wi,x0=M(()=>{"use strict";eo();wi=o((t,e)=>e?Pe(t,{s:-40,l:10}):Pe(t,{s:-40,l:-10}),"mkBorder")});var b7,$G,zG=M(()=>{"use strict";eo();Oy();x0();b7=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||Pe(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Pe(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||wi(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||wi(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Et(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Et(this.tertiaryColor),this.lineColor=this.lineColor||Et(this.background),this.arrowheadColor=this.arrowheadColor||Et(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?Pt(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||Pt(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Et(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Rt(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||"navy",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode?(this.rowOdd=this.rowOdd||Pt(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||Pt(this.mainBkg,10)):(this.rowOdd=this.rowOdd||Rt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Rt(this.mainBkg,5)),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Pe(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Pe(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Pe(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Pe(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Pe(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Pe(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Pe(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Pe(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Pe(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},$G=o(t=>{let e=new b7;return e.calculate(t),e},"getThemeVariables")});var T7,GG,VG=M(()=>{"use strict";eo();x0();T7=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Rt(this.primaryColor,16),this.tertiaryColor=Pe(this.primaryColor,{h:-160}),this.primaryBorderColor=Et(this.background),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=Et(this.primaryColor),this.secondaryTextColor=Et(this.secondaryColor),this.tertiaryTextColor=Et(this.tertiaryColor),this.lineColor=Et(this.background),this.textColor=Et(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Rt(Et("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=Ka(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=Pt("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Pt(this.sectionBkgColor,10),this.taskBorderColor=Ka(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Ka(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Rt(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||Pt(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=Rt(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=Rt(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=Rt(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=Pe(this.primaryColor,{h:64}),this.fillType3=Pe(this.secondaryColor,{h:64}),this.fillType4=Pe(this.primaryColor,{h:-64}),this.fillType5=Pe(this.secondaryColor,{h:-64}),this.fillType6=Pe(this.primaryColor,{h:128}),this.fillType7=Pe(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Pe(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Pe(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Pe(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Pe(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Pe(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Pe(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Pe(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Pe(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Pe(this.primaryColor,{h:330});for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},GG=o(t=>{let e=new T7;return e.calculate(t),e},"getThemeVariables")});var w7,mh,Py=M(()=>{"use strict";eo();x0();Oy();w7=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Pe(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Pe(this.primaryColor,{h:-160}),this.primaryBorderColor=wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=Et(this.primaryColor),this.secondaryTextColor=Et(this.secondaryColor),this.tertiaryTextColor=Et(this.tertiaryColor),this.lineColor=Et(this.background),this.textColor=Et(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.sectionBkgColor=Ka(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="navy",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Pe(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Pe(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Pe(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Pe(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Pe(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Pe(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Pe(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Pe(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Pe(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Pt(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Pt(this.tertiaryColor,40);for(let e=0;e{this[n]==="calculated"&&(this[n]=void 0)}),typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},mh=o(t=>{let e=new w7;return e.calculate(t),e},"getThemeVariables")});var k7,UG,HG=M(()=>{"use strict";eo();Oy();x0();k7=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=Rt("#cde498",10),this.primaryBorderColor=wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=Et(this.primaryColor),this.secondaryTextColor=Et(this.secondaryColor),this.tertiaryTextColor=Et(this.primaryColor),this.lineColor=Et(this.background),this.textColor=Et(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=Pt(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Pe(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Pe(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Pe(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Pe(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Pe(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Pe(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Pe(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Pe(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Pe(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Pt(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Pt(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},UG=o(t=>{let e=new k7;return e.calculate(t),e},"getThemeVariables")});var E7,qG,WG=M(()=>{"use strict";eo();x0();Oy();E7=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Rt(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Pe(this.primaryColor,{h:-160}),this.primaryBorderColor=wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=Et(this.primaryColor),this.secondaryTextColor=Et(this.secondaryColor),this.tertiaryTextColor=Et(this.tertiaryColor),this.lineColor=Et(this.background),this.textColor=Et(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Rt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=Rt(this.contrast,55),this.border2=this.contrast,this.actorBorder=Rt(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},qG=o(t=>{let e=new E7;return e.calculate(t),e},"getThemeVariables")});var So,t3=M(()=>{"use strict";zG();VG();Py();HG();WG();So={base:{getThemeVariables:$G},dark:{getThemeVariables:GG},default:{getThemeVariables:mh},forest:{getThemeVariables:UG},neutral:{getThemeVariables:qG}}});var ul,YG=M(()=>{"use strict";ul={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200,inheritDir:!1},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,maxLabelWidth:360,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showDataLabel:!1,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200,layoutAlgorithm:"cose-bilkent"},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:.17},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1}});var XG,jG,KG,ur,Ra=M(()=>{"use strict";t3();YG();XG={...ul,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:So.default.getThemeVariables(),sequence:{...ul.sequence,messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:o(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:o(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1},gantt:{...ul.gantt,tickInterval:void 0,useWidth:void 0},c4:{...ul.c4,useWidth:void 0,personFont:o(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:{...ul.flowchart,inheritDir:!1},external_personFont:o(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:o(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:o(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:o(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:o(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:o(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:o(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:o(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:o(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:o(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:o(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:o(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:o(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:o(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:o(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:o(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:o(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:o(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:o(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:o(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...ul.pie,useWidth:984},xyChart:{...ul.xyChart,useWidth:void 0},requirement:{...ul.requirement,useWidth:void 0},packet:{...ul.packet},radar:{...ul.radar},treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","}},jG=o((t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...jG(t[n],"")]:[...r,e+n],[]),"keyify"),KG=new Set(jG(XG,"")),ur=XG});var b0,C5e,S7=M(()=>{"use strict";Ra();pt();b0=o(t=>{if(X.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>b0(e));return}for(let e of Object.keys(t)){if(X.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!KG.has(e)||t[e]==null){X.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){X.debug("sanitizing object",e),b0(t[e]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)e.includes(n)&&(X.debug("sanitizing css option",e),t[e]=C5e(t[e]))}if(t.themeVariables)for(let e of Object.keys(t.themeVariables)){let r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}X.debug("After sanitization",t)}},"sanitizeDirective"),C5e=o(t=>{let e=0,r=0;for(let n of t){if(e{"use strict";v0();pt();t3();Ra();S7();gh=Object.freeze(ur),Es=Rn({},gh),cd=[],By=Rn({},gh),n3=o((t,e)=>{let r=Rn({},t),n={};for(let i of e)eV(i),n=Rn(n,i);if(r=Rn(r,n),n.theme&&n.theme in So){let i=Rn({},r3),a=Rn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in So&&(r.themeVariables=So[r.theme].getThemeVariables(a))}return By=r,rV(By),By},"updateCurrentConfig"),C7=o(t=>(Es=Rn({},gh),Es=Rn(Es,t),t.theme&&So[t.theme]&&(Es.themeVariables=So[t.theme].getThemeVariables(t.themeVariables)),n3(Es,cd),Es),"setSiteConfig"),ZG=o(t=>{r3=Rn({},t)},"saveConfigFromInitialize"),JG=o(t=>(Es=Rn(Es,t),n3(Es,cd),Es),"updateSiteConfig"),A7=o(()=>Rn({},Es),"getSiteConfig"),i3=o(t=>(rV(t),Rn(By,t),Qt()),"setConfig"),Qt=o(()=>Rn({},By),"getConfig"),eV=o(t=>{t&&(["secure",...Es.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(X.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&eV(t[e])}))},"sanitize"),tV=o(t=>{b0(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),cd.push(t),n3(Es,cd)},"addDirective"),Fy=o((t=Es)=>{cd=[],n3(t,cd)},"reset"),A5e={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},QG={},_5e=o(t=>{QG[t]||(X.warn(A5e[t]),QG[t]=!0)},"issueWarning"),rV=o(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&_5e("LAZY_LOAD_DEPRECATED")},"checkConfig"),nV=o(()=>{let t={};r3&&(t=Rn(t,r3));for(let e of cd)t=Rn(t,e);return t},"getUserDefinedConfig")});function Ja(t){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:o3;iV&&iV(t,null);let n=e.length;for(;n--;){let i=e[n];if(typeof i=="string"){let a=r(i);a!==i&&(D5e(e)||(e[n]=a),i=a)}t[i]=!0}return t}function B5e(t){for(let e=0;e0&&arguments[0]!==void 0?arguments[0]:X5e(),e=o(Ct=>yV(Ct),"DOMPurify");if(e.version="3.2.6",e.removed=[],!t||!t.document||t.document.nodeType!==Uy.document||!t.Element)return e.isSupported=!1,e;let{document:r}=t,n=r,i=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:s,Node:l,Element:u,NodeFilter:h,NamedNodeMap:f=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:p,trustedTypes:m}=t,g=u.prototype,y=Vy(g,"cloneNode"),v=Vy(g,"remove"),x=Vy(g,"nextSibling"),b=Vy(g,"childNodes"),T=Vy(g,"parentNode");if(typeof s=="function"){let Ct=r.createElement("template");Ct.content&&Ct.content.ownerDocument&&(r=Ct.content.ownerDocument)}let S,w="",{implementation:k,createNodeIterator:C,createDocumentFragment:A,getElementsByTagName:L}=r,{importNode:I}=n,R=fV();e.isSupported=typeof dV=="function"&&typeof T=="function"&&k&&k.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:E,ERB_EXPR:_,TMPLIT_EXPR:D,DATA_ATTR:O,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:P,ATTR_WHITESPACE:B,CUSTOM_ELEMENT:F}=hV,{IS_ALLOWED_URI:V}=hV,$=null,U=Nr({},[...oV,...D7,...L7,...R7,...lV]),j=null,ee=Nr({},[...cV,...N7,...uV,...s3]),q=Object.seal(pV(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),oe=null,Q=null,ue=!0,te=!0,re=!1,J=!0,K=!1,ae=!0,Z=!1,de=!1,ne=!1,Te=!1,W=!1,Ve=!1,pe=!0,Be=!1,Ye="user-content-",He=!0,Le=!1,Ie={},Ne=null,Ce=Nr({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Fe=null,fe=Nr({},["audio","video","img","source","image","track"]),xe=null,Y=Nr({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),he="http://www.w3.org/1998/Math/MathML",z="http://www.w3.org/2000/svg",se="http://www.w3.org/1999/xhtml",le=se,ke=!1,ve=null,ye=Nr({},[he,z,se],_7),Re=Nr({},["mi","mo","mn","ms","mtext"]),_e=Nr({},["annotation-xml"]),ze=Nr({},["title","style","font","a","script"]),Ke=null,xt=["application/xhtml+xml","text/html"],We="text/html",Oe=null,et=null,Ue=r.createElement("form"),lt=o(function(Se){return Se instanceof RegExp||Se instanceof Function},"isRegexOrFunction"),Gt=o(function(){let Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(et&&et===Se)){if((!Se||typeof Se!="object")&&(Se={}),Se=lu(Se),Ke=xt.indexOf(Se.PARSER_MEDIA_TYPE)===-1?We:Se.PARSER_MEDIA_TYPE,Oe=Ke==="application/xhtml+xml"?_7:o3,$=hl(Se,"ALLOWED_TAGS")?Nr({},Se.ALLOWED_TAGS,Oe):U,j=hl(Se,"ALLOWED_ATTR")?Nr({},Se.ALLOWED_ATTR,Oe):ee,ve=hl(Se,"ALLOWED_NAMESPACES")?Nr({},Se.ALLOWED_NAMESPACES,_7):ye,xe=hl(Se,"ADD_URI_SAFE_ATTR")?Nr(lu(Y),Se.ADD_URI_SAFE_ATTR,Oe):Y,Fe=hl(Se,"ADD_DATA_URI_TAGS")?Nr(lu(fe),Se.ADD_DATA_URI_TAGS,Oe):fe,Ne=hl(Se,"FORBID_CONTENTS")?Nr({},Se.FORBID_CONTENTS,Oe):Ce,oe=hl(Se,"FORBID_TAGS")?Nr({},Se.FORBID_TAGS,Oe):lu({}),Q=hl(Se,"FORBID_ATTR")?Nr({},Se.FORBID_ATTR,Oe):lu({}),Ie=hl(Se,"USE_PROFILES")?Se.USE_PROFILES:!1,ue=Se.ALLOW_ARIA_ATTR!==!1,te=Se.ALLOW_DATA_ATTR!==!1,re=Se.ALLOW_UNKNOWN_PROTOCOLS||!1,J=Se.ALLOW_SELF_CLOSE_IN_ATTR!==!1,K=Se.SAFE_FOR_TEMPLATES||!1,ae=Se.SAFE_FOR_XML!==!1,Z=Se.WHOLE_DOCUMENT||!1,Te=Se.RETURN_DOM||!1,W=Se.RETURN_DOM_FRAGMENT||!1,Ve=Se.RETURN_TRUSTED_TYPE||!1,ne=Se.FORCE_BODY||!1,pe=Se.SANITIZE_DOM!==!1,Be=Se.SANITIZE_NAMED_PROPS||!1,He=Se.KEEP_CONTENT!==!1,Le=Se.IN_PLACE||!1,V=Se.ALLOWED_URI_REGEXP||mV,le=Se.NAMESPACE||se,Re=Se.MATHML_TEXT_INTEGRATION_POINTS||Re,_e=Se.HTML_INTEGRATION_POINTS||_e,q=Se.CUSTOM_ELEMENT_HANDLING||{},Se.CUSTOM_ELEMENT_HANDLING&<(Se.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(q.tagNameCheck=Se.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Se.CUSTOM_ELEMENT_HANDLING&<(Se.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(q.attributeNameCheck=Se.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Se.CUSTOM_ELEMENT_HANDLING&&typeof Se.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(q.allowCustomizedBuiltInElements=Se.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),K&&(te=!1),W&&(Te=!0),Ie&&($=Nr({},lV),j=[],Ie.html===!0&&(Nr($,oV),Nr(j,cV)),Ie.svg===!0&&(Nr($,D7),Nr(j,N7),Nr(j,s3)),Ie.svgFilters===!0&&(Nr($,L7),Nr(j,N7),Nr(j,s3)),Ie.mathMl===!0&&(Nr($,R7),Nr(j,uV),Nr(j,s3))),Se.ADD_TAGS&&($===U&&($=lu($)),Nr($,Se.ADD_TAGS,Oe)),Se.ADD_ATTR&&(j===ee&&(j=lu(j)),Nr(j,Se.ADD_ATTR,Oe)),Se.ADD_URI_SAFE_ATTR&&Nr(xe,Se.ADD_URI_SAFE_ATTR,Oe),Se.FORBID_CONTENTS&&(Ne===Ce&&(Ne=lu(Ne)),Nr(Ne,Se.FORBID_CONTENTS,Oe)),He&&($["#text"]=!0),Z&&Nr($,["html","head","body"]),$.table&&(Nr($,["tbody"]),delete oe.tbody),Se.TRUSTED_TYPES_POLICY){if(typeof Se.TRUSTED_TYPES_POLICY.createHTML!="function")throw Gy('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Se.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Gy('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');S=Se.TRUSTED_TYPES_POLICY,w=S.createHTML("")}else S===void 0&&(S=j5e(m,i)),S!==null&&typeof w=="string"&&(w=S.createHTML(""));Za&&Za(Se),et=Se}},"_parseConfig"),vt=Nr({},[...D7,...L7,...F5e]),Lt=Nr({},[...R7,...$5e]),dt=o(function(Se){let at=T(Se);(!at||!at.tagName)&&(at={namespaceURI:le,tagName:"template"});let Nt=o3(Se.tagName),wr=o3(at.tagName);return ve[Se.namespaceURI]?Se.namespaceURI===z?at.namespaceURI===se?Nt==="svg":at.namespaceURI===he?Nt==="svg"&&(wr==="annotation-xml"||Re[wr]):!!vt[Nt]:Se.namespaceURI===he?at.namespaceURI===se?Nt==="math":at.namespaceURI===z?Nt==="math"&&_e[wr]:!!Lt[Nt]:Se.namespaceURI===se?at.namespaceURI===z&&!_e[wr]||at.namespaceURI===he&&!Re[wr]?!1:!Lt[Nt]&&(ze[Nt]||!vt[Nt]):!!(Ke==="application/xhtml+xml"&&ve[Se.namespaceURI]):!1},"_checkValidNamespace"),nt=o(function(Se){$y(e.removed,{element:Se});try{T(Se).removeChild(Se)}catch{v(Se)}},"_forceRemove"),bt=o(function(Se,at){try{$y(e.removed,{attribute:at.getAttributeNode(Se),from:at})}catch{$y(e.removed,{attribute:null,from:at})}if(at.removeAttribute(Se),Se==="is")if(Te||W)try{nt(at)}catch{}else try{at.setAttribute(Se,"")}catch{}},"_removeAttribute"),wt=o(function(Se){let at=null,Nt=null;if(ne)Se=""+Se;else{let yn=sV(Se,/^[\r\n\t ]+/);Nt=yn&&yn[0]}Ke==="application/xhtml+xml"&&le===se&&(Se=''+Se+"");let wr=S?S.createHTML(Se):Se;if(le===se)try{at=new p().parseFromString(wr,Ke)}catch{}if(!at||!at.documentElement){at=k.createDocument(le,"template",null);try{at.documentElement.innerHTML=ke?w:wr}catch{}}let Tn=at.body||at.documentElement;return Se&&Nt&&Tn.insertBefore(r.createTextNode(Nt),Tn.childNodes[0]||null),le===se?L.call(at,Z?"html":"body")[0]:Z?at.documentElement:Tn},"_initDocument"),yt=o(function(Se){return C.call(Se.ownerDocument||Se,Se,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT|h.SHOW_PROCESSING_INSTRUCTION|h.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),ft=o(function(Se){return Se instanceof d&&(typeof Se.nodeName!="string"||typeof Se.textContent!="string"||typeof Se.removeChild!="function"||!(Se.attributes instanceof f)||typeof Se.removeAttribute!="function"||typeof Se.setAttribute!="function"||typeof Se.namespaceURI!="string"||typeof Se.insertBefore!="function"||typeof Se.hasChildNodes!="function")},"_isClobbered"),Ur=o(function(Se){return typeof l=="function"&&Se instanceof l},"_isNode");function _t(Ct,Se,at){a3(Ct,Nt=>{Nt.call(e,Se,at,et)})}o(_t,"_executeHooks");let bn=o(function(Se){let at=null;if(_t(R.beforeSanitizeElements,Se,null),ft(Se))return nt(Se),!0;let Nt=Oe(Se.nodeName);if(_t(R.uponSanitizeElement,Se,{tagName:Nt,allowedTags:$}),ae&&Se.hasChildNodes()&&!Ur(Se.firstElementChild)&&Qa(/<[/\w!]/g,Se.innerHTML)&&Qa(/<[/\w!]/g,Se.textContent)||Se.nodeType===Uy.progressingInstruction||ae&&Se.nodeType===Uy.comment&&Qa(/<[/\w]/g,Se.data))return nt(Se),!0;if(!$[Nt]||oe[Nt]){if(!oe[Nt]&&cr(Nt)&&(q.tagNameCheck instanceof RegExp&&Qa(q.tagNameCheck,Nt)||q.tagNameCheck instanceof Function&&q.tagNameCheck(Nt)))return!1;if(He&&!Ne[Nt]){let wr=T(Se)||Se.parentNode,Tn=b(Se)||Se.childNodes;if(Tn&&wr){let yn=Tn.length;for(let sn=yn-1;sn>=0;--sn){let Hi=y(Tn[sn],!0);Hi.__removalCount=(Se.__removalCount||0)+1,wr.insertBefore(Hi,x(Se))}}}return nt(Se),!0}return Se instanceof u&&!dt(Se)||(Nt==="noscript"||Nt==="noembed"||Nt==="noframes")&&Qa(/<\/no(script|embed|frames)/i,Se.innerHTML)?(nt(Se),!0):(K&&Se.nodeType===Uy.text&&(at=Se.textContent,a3([E,_,D],wr=>{at=zy(at,wr," ")}),Se.textContent!==at&&($y(e.removed,{element:Se.cloneNode()}),Se.textContent=at)),_t(R.afterSanitizeElements,Se,null),!1)},"_sanitizeElements"),Br=o(function(Se,at,Nt){if(pe&&(at==="id"||at==="name")&&(Nt in r||Nt in Ue))return!1;if(!(te&&!Q[at]&&Qa(O,at))){if(!(ue&&Qa(N,at))){if(!j[at]||Q[at]){if(!(cr(Se)&&(q.tagNameCheck instanceof RegExp&&Qa(q.tagNameCheck,Se)||q.tagNameCheck instanceof Function&&q.tagNameCheck(Se))&&(q.attributeNameCheck instanceof RegExp&&Qa(q.attributeNameCheck,at)||q.attributeNameCheck instanceof Function&&q.attributeNameCheck(at))||at==="is"&&q.allowCustomizedBuiltInElements&&(q.tagNameCheck instanceof RegExp&&Qa(q.tagNameCheck,Nt)||q.tagNameCheck instanceof Function&&q.tagNameCheck(Nt))))return!1}else if(!xe[at]){if(!Qa(V,zy(Nt,B,""))){if(!((at==="src"||at==="xlink:href"||at==="href")&&Se!=="script"&&I5e(Nt,"data:")===0&&Fe[Se])){if(!(re&&!Qa(P,zy(Nt,B,"")))){if(Nt)return!1}}}}}}return!0},"_isValidAttribute"),cr=o(function(Se){return Se!=="annotation-xml"&&sV(Se,F)},"_isBasicCustomElement"),ar=o(function(Se){_t(R.beforeSanitizeAttributes,Se,null);let{attributes:at}=Se;if(!at||ft(Se))return;let Nt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:j,forceKeepAttr:void 0},wr=at.length;for(;wr--;){let Tn=at[wr],{name:yn,namespaceURI:sn,value:Hi}=Tn,Zs=Oe(yn),Da=Hi,fr=yn==="value"?Da:O5e(Da);if(Nt.attrName=Zs,Nt.attrValue=fr,Nt.keepAttr=!0,Nt.forceKeepAttr=void 0,_t(R.uponSanitizeAttribute,Se,Nt),fr=Nt.attrValue,Be&&(Zs==="id"||Zs==="name")&&(bt(yn,Se),fr=Ye+fr),ae&&Qa(/((--!?|])>)|<\/(style|title)/i,fr)){bt(yn,Se);continue}if(Nt.forceKeepAttr)continue;if(!Nt.keepAttr){bt(yn,Se);continue}if(!J&&Qa(/\/>/i,fr)){bt(yn,Se);continue}K&&a3([E,_,D],kt=>{fr=zy(fr,kt," ")});let it=Oe(Se.nodeName);if(!Br(it,Zs,fr)){bt(yn,Se);continue}if(S&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!sn)switch(m.getAttributeType(it,Zs)){case"TrustedHTML":{fr=S.createHTML(fr);break}case"TrustedScriptURL":{fr=S.createScriptURL(fr);break}}if(fr!==Da)try{sn?Se.setAttributeNS(sn,yn,fr):Se.setAttribute(yn,fr),ft(Se)?nt(Se):aV(e.removed)}catch{bt(yn,Se)}}_t(R.afterSanitizeAttributes,Se,null)},"_sanitizeAttributes"),_r=o(function Ct(Se){let at=null,Nt=yt(Se);for(_t(R.beforeSanitizeShadowDOM,Se,null);at=Nt.nextNode();)_t(R.uponSanitizeShadowNode,at,null),bn(at),ar(at),at.content instanceof a&&Ct(at.content);_t(R.afterSanitizeShadowDOM,Se,null)},"_sanitizeShadowDOM");return e.sanitize=function(Ct){let Se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},at=null,Nt=null,wr=null,Tn=null;if(ke=!Ct,ke&&(Ct=""),typeof Ct!="string"&&!Ur(Ct))if(typeof Ct.toString=="function"){if(Ct=Ct.toString(),typeof Ct!="string")throw Gy("dirty is not a string, aborting")}else throw Gy("toString is not a function");if(!e.isSupported)return Ct;if(de||Gt(Se),e.removed=[],typeof Ct=="string"&&(Le=!1),Le){if(Ct.nodeName){let Hi=Oe(Ct.nodeName);if(!$[Hi]||oe[Hi])throw Gy("root node is forbidden and cannot be sanitized in-place")}}else if(Ct instanceof l)at=wt(""),Nt=at.ownerDocument.importNode(Ct,!0),Nt.nodeType===Uy.element&&Nt.nodeName==="BODY"||Nt.nodeName==="HTML"?at=Nt:at.appendChild(Nt);else{if(!Te&&!K&&!Z&&Ct.indexOf("<")===-1)return S&&Ve?S.createHTML(Ct):Ct;if(at=wt(Ct),!at)return Te?null:Ve?w:""}at&&ne&&nt(at.firstChild);let yn=yt(Le?Ct:at);for(;wr=yn.nextNode();)bn(wr),ar(wr),wr.content instanceof a&&_r(wr.content);if(Le)return Ct;if(Te){if(W)for(Tn=A.call(at.ownerDocument);at.firstChild;)Tn.appendChild(at.firstChild);else Tn=at;return(j.shadowroot||j.shadowrootmode)&&(Tn=I.call(n,Tn,!0)),Tn}let sn=Z?at.outerHTML:at.innerHTML;return Z&&$["!doctype"]&&at.ownerDocument&&at.ownerDocument.doctype&&at.ownerDocument.doctype.name&&Qa(gV,at.ownerDocument.doctype.name)&&(sn=" -`+sn),K&&a3([E,_,D],Hi=>{sn=zy(sn,Hi," ")}),S&&Ve?S.createHTML(sn):sn},e.setConfig=function(){let Ct=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Gt(Ct),de=!0},e.clearConfig=function(){et=null,de=!1},e.isValidAttribute=function(Ct,Se,at){et||Gt({});let Nt=Oe(Ct),wr=Oe(Se);return Br(Nt,wr,at)},e.addHook=function(Ct,Se){typeof Se=="function"&&$y(R[Ct],Se)},e.removeHook=function(Ct,Se){if(Se!==void 0){let at=N5e(R[Ct],Se);return at===-1?void 0:M5e(R[Ct],at,1)[0]}return aV(R[Ct])},e.removeHooks=function(Ct){R[Ct]=[]},e.removeAllHooks=function(){R=fV()},e}var dV,iV,D5e,L5e,R5e,Za,Co,pV,M7,I7,a3,N5e,aV,$y,M5e,o3,_7,sV,zy,I5e,O5e,hl,Qa,Gy,oV,D7,L7,F5e,R7,$5e,lV,cV,N7,uV,s3,z5e,G5e,V5e,U5e,H5e,mV,q5e,W5e,gV,Y5e,hV,Uy,X5e,j5e,fV,yh,O7=M(()=>{"use strict";({entries:dV,setPrototypeOf:iV,isFrozen:D5e,getPrototypeOf:L5e,getOwnPropertyDescriptor:R5e}=Object),{freeze:Za,seal:Co,create:pV}=Object,{apply:M7,construct:I7}=typeof Reflect<"u"&&Reflect;Za||(Za=o(function(e){return e},"freeze"));Co||(Co=o(function(e){return e},"seal"));M7||(M7=o(function(e,r,n){return e.apply(r,n)},"apply"));I7||(I7=o(function(e,r){return new e(...r)},"construct"));a3=Ja(Array.prototype.forEach),N5e=Ja(Array.prototype.lastIndexOf),aV=Ja(Array.prototype.pop),$y=Ja(Array.prototype.push),M5e=Ja(Array.prototype.splice),o3=Ja(String.prototype.toLowerCase),_7=Ja(String.prototype.toString),sV=Ja(String.prototype.match),zy=Ja(String.prototype.replace),I5e=Ja(String.prototype.indexOf),O5e=Ja(String.prototype.trim),hl=Ja(Object.prototype.hasOwnProperty),Qa=Ja(RegExp.prototype.test),Gy=P5e(TypeError);o(Ja,"unapply");o(P5e,"unconstruct");o(Nr,"addToSet");o(B5e,"cleanArray");o(lu,"clone");o(Vy,"lookupGetter");oV=Za(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),D7=Za(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),L7=Za(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),F5e=Za(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),R7=Za(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),$5e=Za(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),lV=Za(["#text"]),cV=Za(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),N7=Za(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),uV=Za(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),s3=Za(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),z5e=Co(/\{\{[\w\W]*|[\w\W]*\}\}/gm),G5e=Co(/<%[\w\W]*|[\w\W]*%>/gm),V5e=Co(/\$\{[\w\W]*/gm),U5e=Co(/^data-[\-\w.\u00B7-\uFFFF]+$/),H5e=Co(/^aria-[\-\w]+$/),mV=Co(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),q5e=Co(/^(?:\w+script|data):/i),W5e=Co(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),gV=Co(/^html$/i),Y5e=Co(/^[a-z][.\w]*(-[.\w]+)+$/i),hV=Object.freeze({__proto__:null,ARIA_ATTR:H5e,ATTR_WHITESPACE:W5e,CUSTOM_ELEMENT:Y5e,DATA_ATTR:U5e,DOCTYPE_NAME:gV,ERB_EXPR:G5e,IS_ALLOWED_URI:mV,IS_SCRIPT_OR_DATA:q5e,MUSTACHE_EXPR:z5e,TMPLIT_EXPR:V5e}),Uy={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},X5e=o(function(){return typeof window>"u"?null:window},"getGlobal"),j5e=o(function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));let a="dompurify"+(n?"#"+n:"");try{return e.createPolicy(a,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}},"_createTrustedTypesPolicy"),fV=o(function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},"_createHooksMap");o(yV,"createDOMPurify");yh=yV()});var jU={};dr(jU,{ParseError:()=>gt,SETTINGS_SCHEMA:()=>Yy,__defineFunction:()=>Mt,__defineMacro:()=>ce,__defineSymbol:()=>G,__domTree:()=>XU,__parse:()=>HU,__renderToDomTree:()=>I3,__renderToHTMLTree:()=>WU,__setFontMetrics:()=>QV,default:()=>zwe,render:()=>EA,renderToString:()=>UU,version:()=>YU});function rTe(t){return String(t).replace(tTe,e=>eTe[e])}function sTe(t){if(t.default)return t.default;var e=t.type,r=Array.isArray(e)?e[0]:e;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}function dTe(t){for(var e=0;e=i[0]&&t<=i[1])return r.name}return null}function KV(t){for(var e=0;e=x3[e]&&t<=x3[e+1])return!0;return!1}function QV(t,e){Ql[t]=e}function lA(t,e,r){if(!Ql[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=Ql[e][n];if(!i&&t[0]in xV&&(n=xV[t[0]].charCodeAt(0),i=Ql[e][n]),!i&&r==="text"&&KV(n)&&(i=Ql[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function ETe(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!P7[e]){var r=P7[e]={cssEmPerMu:l3.quad[e]/18};for(var n in l3)l3.hasOwnProperty(n)&&(r[n]=l3[n][e])}return P7[e]}function wV(t){if(t instanceof Cs)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function DTe(t){if(t instanceof fd)return t;throw new Error("Expected span but got "+String(t)+".")}function G(t,e,r,n,i,a){Nn[t][i]={font:e,group:r,replace:n},a&&n&&(Nn[t][n]=Nn[t][i])}function Mt(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},u=0;u0&&(a.push(m3(s,e)),s=[]),a.push(n[l]));s.length>0&&a.push(m3(s,e));var h;r?(h=m3(Ii(r,e,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=du(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=St(f.height+f.depth),f.depth&&(d.style.verticalAlign=St(-f.depth))}return f}function cU(t){return new hd(t)}function $7(t){if(!t)return!1;if(t.type==="mi"&&t.children.length===1){var e=t.children[0];return e instanceof _o&&e.text==="."}else if(t.type==="mo"&&t.children.length===1&&t.getAttribute("separator")==="true"&&t.getAttribute("lspace")==="0em"&&t.getAttribute("rspace")==="0em"){var r=t.children[0];return r instanceof _o&&r.text===","}else return!1}function AV(t,e,r,n,i){var a=As(t,r),s;a.length===1&&a[0]instanceof es&&er.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new mt.MathNode("mrow",a);var l=new mt.MathNode("annotation",[new mt.TextNode(e)]);l.setAttribute("encoding","application/x-tex");var u=new mt.MathNode("semantics",[s,l]),h=new mt.MathNode("math",[u]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var f=i?"katex":"katex-mathml";return $e.makeSpan([f],[h])}function Tr(t,e){if(!t||t.type!==e)throw new Error("Expected node of type "+e+", but got "+(t?"node of type "+t.type:String(t)));return t}function fA(t){var e=L3(t);if(!e)throw new Error("Expected node of symbol group type, but got "+(t?"node of type "+t.type:String(t)));return e}function L3(t){return t&&(t.type==="atom"||RTe.hasOwnProperty(t.type))?t:null}function dU(t,e){var r=Ii(t.body,e,!0);return owe([t.mclass],r,e)}function pU(t,e){var r,n=As(t.body,e);return t.mclass==="minner"?r=new mt.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new mt.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new mt.MathNode("mo",n),t.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):t.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):t.mclass==="mopen"||t.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):t.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function uwe(t,e,r){var n=lwe[t];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[e[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[e[1]],[]),u={type:"ordgroup",mode:"math",body:[i,s,l]};return r.callFunction("\\\\cdparent",[u],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function hwe(t){var e=[];for(t.gullet.beginGroup(),t.gullet.macros.set("\\cr","\\\\\\relax"),t.gullet.beginGroup();;){e.push(t.parseExpression(!1,"\\\\")),t.gullet.endGroup(),t.gullet.beginGroup();var r=t.fetch().text;if(r==="&"||r==="\\\\")t.consume();else if(r==="\\end"){e[e.length-1].length===0&&e.pop();break}else throw new gt("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a-1))if("<>AV".indexOf(h)>-1)for(var d=0;d<2;d++){for(var p=!0,m=u+1;mAV=|." after @',s[u]);var g=uwe(h,f,t),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=_V()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var v=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:v,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}function N3(t,e){var r=L3(t);if(r&&er.contains(Ewe,r.text))return r;throw r?new gt("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new gt("Invalid delimiter type '"+t.type+"'",t)}function RV(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function Jl(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u1||!f)&&y.pop(),x.length{"use strict";to=class t{static{o(this,"SourceLocation")}constructor(e,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=r,this.end=n}static range(e,r){return r?!e||!e.loc||!r.loc||e.loc.lexer!==r.loc.lexer?null:new t(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}},Do=class t{static{o(this,"Token")}constructor(e,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=r}range(e,r){return new t(r,to.range(this,e))}},gt=class t{static{o(this,"ParseError")}constructor(e,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+e,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var l=s.lexer.input;i=s.start,a=s.end,i===l.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var u=l.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+l.slice(i-15,i):h=l.slice(0,i);var f;a+15":">","<":"<",'"':""","'":"'"},tTe=/[&><"']/g;o(rTe,"escape");jV=o(function t(e){return e.type==="ordgroup"||e.type==="color"?e.body.length===1?t(e.body[0]):e:e.type==="font"?t(e.body):e},"getBaseElem"),nTe=o(function(e){var r=jV(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),iTe=o(function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},"assert"),aTe=o(function(e){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),er={contains:K5e,deflt:Q5e,escape:rTe,hyphenate:J5e,getBaseElem:jV,isCharacterBox:nTe,protocolFromUrl:aTe},Yy={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:o(t=>"#"+t,"cliProcessor")},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:o((t,e)=>(e.push(t),e),"cliProcessor")},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:o(t=>Math.max(0,t),"processor"),cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:o(t=>Math.max(0,t),"processor"),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:o(t=>Math.max(0,t),"processor"),cli:"-e, --max-expand ",cliProcessor:o(t=>t==="Infinity"?1/0:parseInt(t),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(sTe,"getDefaultValue");jy=class{static{o(this,"Settings")}constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{};for(var r in Yy)if(Yy.hasOwnProperty(r)){var n=Yy[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:sTe(n)}}reportNonstrict(e,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(e,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new gt("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+e+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]"))}}useStrictBehavior(e,r,n){var i=this.strict;if(typeof i=="function")try{i=i(e,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]")),!1)}isTrusted(e){if(e.url&&!e.protocol){var r=er.protocolFromUrl(e.url);if(r==null)return!1;e.protocol=r}var n=typeof this.trust=="function"?this.trust(e):this.trust;return!!n}},jl=class{static{o(this,"Style")}constructor(e,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=r,this.cramped=n}sup(){return Kl[oTe[this.id]]}sub(){return Kl[lTe[this.id]]}fracNum(){return Kl[cTe[this.id]]}fracDen(){return Kl[uTe[this.id]]}cramp(){return Kl[hTe[this.id]]}text(){return Kl[fTe[this.id]]}isTight(){return this.size>=2}},oA=0,b3=1,k0=2,hu=3,Ky=4,Ao=5,E0=6,ts=7,Kl=[new jl(oA,0,!1),new jl(b3,0,!0),new jl(k0,1,!1),new jl(hu,1,!0),new jl(Ky,2,!1),new jl(Ao,2,!0),new jl(E0,3,!1),new jl(ts,3,!0)],oTe=[Ky,Ao,Ky,Ao,E0,ts,E0,ts],lTe=[Ao,Ao,Ao,Ao,ts,ts,ts,ts],cTe=[k0,hu,Ky,Ao,E0,ts,E0,ts],uTe=[hu,hu,Ao,Ao,ts,ts,ts,ts],hTe=[b3,b3,hu,hu,Ao,Ao,ts,ts],fTe=[oA,b3,k0,hu,k0,hu,k0,hu],nr={DISPLAY:Kl[oA],TEXT:Kl[k0],SCRIPT:Kl[Ky],SCRIPTSCRIPT:Kl[E0]},j7=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];o(dTe,"scriptFromCodepoint");x3=[];j7.forEach(t=>t.blocks.forEach(e=>x3.push(...e)));o(KV,"supportedCodepoint");w0=80,pTe=o(function(e,r){return"M95,"+(622+e+r)+` +"use strict";var __esbuild_esm_mermaid_nm;(__esbuild_esm_mermaid_nm||={}).mermaid=(()=>{var JCe=Object.create;var Zv=Object.defineProperty;var e6e=Object.getOwnPropertyDescriptor;var t6e=Object.getOwnPropertyNames;var r6e=Object.getPrototypeOf,n6e=Object.prototype.hasOwnProperty;var o=(t,e)=>Zv(t,"name",{value:e,configurable:!0});var I=(t,e)=>()=>(t&&(e=t(t=0)),e);var Jt=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),vr=(t,e)=>{for(var r in e)Zv(t,r,{get:e[r],enumerable:!0})},_3=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of t6e(e))!n6e.call(t,i)&&i!==r&&Zv(t,i,{get:()=>e[i],enumerable:!(n=e6e(e,i))||n.enumerable});return t},$r=(t,e,r)=>(_3(t,e,"default"),r&&_3(r,e,"default")),Aa=(t,e,r)=>(r=t!=null?JCe(r6e(t)):{},_3(e||!t||!t.__esModule?Zv(r,"default",{value:t,enumerable:!0}):r,t)),D3=t=>_3(Zv({},"__esModule",{value:!0}),t);var i6e,eg,R8,RW,R3=I(()=>{"use strict";i6e=Object.freeze({left:0,top:0,width:16,height:16}),eg=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),R8=Object.freeze({...i6e,...eg}),RW=Object.freeze({...R8,body:"",hidden:!1})});var a6e,LW,NW=I(()=>{"use strict";R3();a6e=Object.freeze({width:null,height:null}),LW=Object.freeze({...a6e,...eg})});var L8,L3,MW=I(()=>{"use strict";L8=o((t,e,r,n="")=>{let i=t.split(":");if(t.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let l=i.pop(),u=i.pop(),h={provider:i.length>0?i[0]:n,prefix:u,name:l};return e&&!L3(h)?null:h}let a=i[0],s=a.split("-");if(s.length>1){let l={provider:n,prefix:s.shift(),name:s.join("-")};return e&&!L3(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return e&&!L3(l,r)?null:l}return null},"stringToIcon"),L3=o((t,e)=>t?!!((e&&t.prefix===""||t.prefix)&&t.name):!1,"validateIconName")});function IW(t,e){let r={};!t.hFlip!=!e.hFlip&&(r.hFlip=!0),!t.vFlip!=!e.vFlip&&(r.vFlip=!0);let n=((t.rotate||0)+(e.rotate||0))%4;return n&&(r.rotate=n),r}var OW=I(()=>{"use strict";o(IW,"mergeIconTransformations")});function N8(t,e){let r=IW(t,e);for(let n in RW)n in eg?n in t&&!(n in r)&&(r[n]=eg[n]):n in e?r[n]=e[n]:n in t&&(r[n]=t[n]);return r}var PW=I(()=>{"use strict";R3();OW();o(N8,"mergeIconData")});function BW(t,e){let r=t.icons,n=t.aliases||Object.create(null),i=Object.create(null);function a(s){if(r[s])return i[s]=[];if(!(s in i)){i[s]=null;let l=n[s]&&n[s].parent,u=l&&a(l);u&&(i[s]=[l].concat(u))}return i[s]}return o(a,"resolve"),(e||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var FW=I(()=>{"use strict";o(BW,"getIconsTree")});function $W(t,e,r){let n=t.icons,i=t.aliases||Object.create(null),a={};function s(l){a=N8(n[l]||i[l],a)}return o(s,"parse"),s(e),r.forEach(s),N8(t,a)}function M8(t,e){if(t.icons[e])return $W(t,e,[]);let r=BW(t,[e])[e];return r?$W(t,e,r):null}var zW=I(()=>{"use strict";PW();FW();o($W,"internalGetIconData");o(M8,"getIconData")});function I8(t,e,r){if(e===1)return t;if(r=r||100,typeof t=="number")return Math.ceil(t*e*r)/r;if(typeof t!="string")return t;let n=t.split(s6e);if(n===null||!n.length)return t;let i=[],a=n.shift(),s=o6e.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*e*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var s6e,o6e,GW=I(()=>{"use strict";s6e=/(-?[0-9.]*[0-9]+[0-9.]*)/g,o6e=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(I8,"calculateSize")});function l6e(t,e="defs"){let r="",n=t.indexOf("<"+e);for(;n>=0;){let i=t.indexOf(">",n),a=t.indexOf("",a);if(s===-1)break;r+=t.slice(i+1,a).trim(),t=t.slice(0,n).trim()+t.slice(s+1)}return{defs:r,content:t}}function c6e(t,e){return t?""+t+""+e:e}function VW(t,e,r){let n=l6e(t);return c6e(n.defs,e+n.content+r)}var qW=I(()=>{"use strict";o(l6e,"splitSVGDefs");o(c6e,"mergeDefsAndContent");o(VW,"wrapSVGContent")});function O8(t,e){let r={...R8,...t},n={...LW,...e},i={left:r.left,top:r.top,width:r.width,height:r.height},a=r.body;[r,n].forEach(y=>{let v=[],x=y.hFlip,b=y.vFlip,T=y.rotate;x?b?T+=2:(v.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),v.push("scale(-1 1)"),i.top=i.left=0):b&&(v.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),v.push("scale(1 -1)"),i.top=i.left=0);let E;switch(T<0&&(T-=Math.floor(T/4)*4),T=T%4,T){case 1:E=i.height/2+i.top,v.unshift("rotate(90 "+E.toString()+" "+E.toString()+")");break;case 2:v.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:E=i.width/2+i.left,v.unshift("rotate(-90 "+E.toString()+" "+E.toString()+")");break}T%2===1&&(i.left!==i.top&&(E=i.left,i.left=i.top,i.top=E),i.width!==i.height&&(E=i.width,i.width=i.height,i.height=E)),v.length&&(a=VW(a,'',""))});let s=n.width,l=n.height,u=i.width,h=i.height,f,d;s===null?(d=l===null?"1em":l==="auto"?h:l,f=I8(d,u/h)):(f=s==="auto"?u:s,d=l===null?I8(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{u6e(v)||(p[y]=v.toString())},"setAttr");m("width",f),m("height",d);let g=[i.left,i.top,u,h];return p.viewBox=g.join(" "),{attributes:p,viewBox:g,body:a}}var u6e,UW=I(()=>{"use strict";R3();NW();GW();qW();u6e=o(t=>t==="unset"||t==="undefined"||t==="none","isUnsetKeyword");o(O8,"iconToSVG")});function P8(t,e=f6e){let r=[],n;for(;n=h6e.exec(t);)r.push(n[1]);if(!r.length)return t;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof e=="function"?e(a):e+(d6e++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),t=t.replace(new RegExp(i,"g"),""),t}var h6e,f6e,d6e,WW=I(()=>{"use strict";h6e=/\sid="(\S+)"/g,f6e="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),d6e=0;o(P8,"replaceIDs")});function B8(t,e){let r=t.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in e)r+=" "+n+'="'+e[n]+'"';return'"+t+""}var HW=I(()=>{"use strict";o(B8,"iconToHTML")});var YW=I(()=>{"use strict";MW();zW();UW();WW();HW()});var F8,$n,tg=I(()=>{"use strict";F8=o((t,e,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(a=>F8(t,a,i)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(a=>{t.includes(a)||t.push(a)}),t):t===void 0||r<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(a=>{typeof e[a]=="object"&&(t[a]===void 0||typeof t[a]=="object")?(t[a]===void 0&&(t[a]=Array.isArray(e[a])?[]:{}),t[a]=F8(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},"assignWithDepth"),$n=F8});var N3=Jt(($8,z8)=>{"use strict";(function(t,e){typeof $8=="object"&&typeof z8<"u"?z8.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})($8,(function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",a="minute",s="hour",l="day",u="week",h="month",f="quarter",d="year",p="date",m="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,v={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:o(function(S){var A=["th","st","nd","rd"],_=S%100;return"["+S+(A[(_-20)%10]||A[_]||A[0])+"]"},"ordinal")},x=o(function(S,A,_){var N=String(S);return!N||N.length>=A?S:""+Array(A+1-N.length).join(_)+S},"m"),b={s:x,z:o(function(S){var A=-S.utcOffset(),_=Math.abs(A),N=Math.floor(_/60),M=_%60;return(A<=0?"+":"-")+x(N,2,"0")+":"+x(M,2,"0")},"z"),m:o(function S(A,_){if(A.date()<_.date())return-S(_,A);var N=12*(_.year()-A.year())+(_.month()-A.month()),M=A.clone().add(N,h),P=_-M<0,B=A.clone().add(N+(P?-1:1),h);return+(-(N+(_-M)/(P?M-B:B-M))||0)},"t"),a:o(function(S){return S<0?Math.ceil(S)||0:Math.floor(S)},"a"),p:o(function(S){return{M:h,y:d,w:u,d:l,D:p,h:s,m:a,s:i,ms:n,Q:f}[S]||String(S||"").toLowerCase().replace(/s$/,"")},"p"),u:o(function(S){return S===void 0},"u")},T="en",E={};E[T]=v;var w="$isDayjsObject",k=o(function(S){return S instanceof O||!(!S||!S[w])},"S"),C=o(function S(A,_,N){var M;if(!A)return T;if(typeof A=="string"){var P=A.toLowerCase();E[P]&&(M=P),_&&(E[P]=_,M=P);var B=A.split("-");if(!M&&B.length>1)return S(B[0])}else{var F=A.name;E[F]=A,M=F}return!N&&M&&(T=M),M||!N&&T},"t"),D=o(function(S,A){if(k(S))return S.clone();var _=typeof A=="object"?A:{};return _.date=S,_.args=arguments,new O(_)},"O"),R=b;R.l=C,R.i=k,R.w=function(S,A){return D(S,{locale:A.$L,utc:A.$u,x:A.$x,$offset:A.$offset})};var O=(function(){function S(_){this.$L=C(_.locale,null,!0),this.parse(_),this.$x=this.$x||_.x||{},this[w]=!0}o(S,"M");var A=S.prototype;return A.parse=function(_){this.$d=(function(N){var M=N.date,P=N.utc;if(M===null)return new Date(NaN);if(R.u(M))return new Date;if(M instanceof Date)return new Date(M);if(typeof M=="string"&&!/Z$/i.test(M)){var B=M.match(g);if(B){var F=B[2]-1||0,G=(B[7]||"0").substring(0,3);return P?new Date(Date.UTC(B[1],F,B[3]||1,B[4]||0,B[5]||0,B[6]||0,G)):new Date(B[1],F,B[3]||1,B[4]||0,B[5]||0,B[6]||0,G)}}return new Date(M)})(_),this.init()},A.init=function(){var _=this.$d;this.$y=_.getFullYear(),this.$M=_.getMonth(),this.$D=_.getDate(),this.$W=_.getDay(),this.$H=_.getHours(),this.$m=_.getMinutes(),this.$s=_.getSeconds(),this.$ms=_.getMilliseconds()},A.$utils=function(){return R},A.isValid=function(){return this.$d.toString()!==m},A.isSame=function(_,N){var M=D(_);return this.startOf(N)<=M&&M<=this.endOf(N)},A.isAfter=function(_,N){return D(_){"use strict";jW=Aa(N3(),1),ju={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},X={trace:o((...t)=>{},"trace"),debug:o((...t)=>{},"debug"),info:o((...t)=>{},"info"),warn:o((...t)=>{},"warn"),error:o((...t)=>{},"error"),fatal:o((...t)=>{},"fatal")},Jv=o(function(t="fatal"){let e=ju.fatal;typeof t=="string"?t.toLowerCase()in ju&&(e=ju[t]):typeof t=="number"&&(e=t),X.trace=()=>{},X.debug=()=>{},X.info=()=>{},X.warn=()=>{},X.error=()=>{},X.fatal=()=>{},e<=ju.fatal&&(X.fatal=console.error?console.error.bind(console,tl("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",tl("FATAL"))),e<=ju.error&&(X.error=console.error?console.error.bind(console,tl("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",tl("ERROR"))),e<=ju.warn&&(X.warn=console.warn?console.warn.bind(console,tl("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",tl("WARN"))),e<=ju.info&&(X.info=console.info?console.info.bind(console,tl("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",tl("INFO"))),e<=ju.debug&&(X.debug=console.debug?console.debug.bind(console,tl("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",tl("DEBUG"))),e<=ju.trace&&(X.trace=console.debug?console.debug.bind(console,tl("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",tl("TRACE")))},"setLogLevel"),tl=o(t=>`%c${(0,jW.default)().format("ss.SSS")} : ${t} : `,"format")});var M3,XW,KW=I(()=>{"use strict";M3={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:o(t=>t>=255?255:t<0?0:t,"r"),g:o(t=>t>=255?255:t<0?0:t,"g"),b:o(t=>t>=255?255:t<0?0:t,"b"),h:o(t=>t%360,"h"),s:o(t=>t>=100?100:t<0?0:t,"s"),l:o(t=>t>=100?100:t<0?0:t,"l"),a:o(t=>t>=1?1:t<0?0:t,"a")},toLinear:o(t=>{let e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},"toLinear"),hue2rgb:o((t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?t+(e-t)*6*r:r<.5?e:r<.6666666666666666?t+(e-t)*(.6666666666666666-r)*6:t),"hue2rgb"),hsl2rgb:o(({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;let i=r<.5?r*(1+e):r+e-r*e,a=2*r-i;switch(n){case"r":return M3.hue2rgb(a,i,t+.3333333333333333)*255;case"g":return M3.hue2rgb(a,i,t)*255;case"b":return M3.hue2rgb(a,i,t-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;let i=Math.max(t,e,r),a=Math.min(t,e,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;let l=i-a,u=s>.5?l/(2-i-a):l/(i+a);if(n==="s")return u*100;switch(i){case t:return((e-r)/l+(e{"use strict";p6e={clamp:o((t,e,r)=>e>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),"clamp"),round:o(t=>Math.round(t*1e10)/1e10,"round")},QW=p6e});var m6e,JW,eH=I(()=>{"use strict";m6e={dec2hex:o(t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`},"dec2hex")},JW=m6e});var g6e,er,Nc=I(()=>{"use strict";KW();ZW();eH();g6e={channel:XW,lang:QW,unit:JW},er=g6e});var Xu,Yi,e2=I(()=>{"use strict";Nc();Xu={};for(let t=0;t<=255;t++)Xu[t]=er.unit.dec2hex(t);Yi={ALL:0,RGB:1,HSL:2}});var G8,tH,rH=I(()=>{"use strict";e2();G8=class{static{o(this,"Type")}constructor(){this.type=Yi.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=Yi.ALL}is(e){return this.type===e}},tH=G8});var V8,nH,iH=I(()=>{"use strict";Nc();rH();e2();V8=class{static{o(this,"Channels")}constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new tH}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=Yi.ALL,this}_ensureHSL(){let e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=er.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=er.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=er.channel.rgb2hsl(e,"l"))}_ensureRGB(){let e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=er.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=er.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=er.channel.hsl2rgb(e,"b"))}get r(){let e=this.data,r=e.r;return!this.type.is(Yi.HSL)&&r!==void 0?r:(this._ensureHSL(),er.channel.hsl2rgb(e,"r"))}get g(){let e=this.data,r=e.g;return!this.type.is(Yi.HSL)&&r!==void 0?r:(this._ensureHSL(),er.channel.hsl2rgb(e,"g"))}get b(){let e=this.data,r=e.b;return!this.type.is(Yi.HSL)&&r!==void 0?r:(this._ensureHSL(),er.channel.hsl2rgb(e,"b"))}get h(){let e=this.data,r=e.h;return!this.type.is(Yi.RGB)&&r!==void 0?r:(this._ensureRGB(),er.channel.rgb2hsl(e,"h"))}get s(){let e=this.data,r=e.s;return!this.type.is(Yi.RGB)&&r!==void 0?r:(this._ensureRGB(),er.channel.rgb2hsl(e,"s"))}get l(){let e=this.data,r=e.l;return!this.type.is(Yi.RGB)&&r!==void 0?r:(this._ensureRGB(),er.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(Yi.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(Yi.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(Yi.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(Yi.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(Yi.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(Yi.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},nH=V8});var y6e,of,t2=I(()=>{"use strict";iH();y6e=new nH({r:0,g:0,b:0,a:0},"transparent"),of=y6e});var aH,Sp,q8=I(()=>{"use strict";t2();e2();aH={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(t=>{if(t.charCodeAt(0)!==35)return;let e=t.match(aH.re);if(!e)return;let r=e[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,l=s?1:17,u=s?8:4,h=a?0:-1,f=s?255:15;return of.set({r:(n>>u*(h+3)&f)*l,g:(n>>u*(h+2)&f)*l,b:(n>>u*(h+1)&f)*l,a:a?(n&f)*l/255:1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`#${Xu[Math.round(e)]}${Xu[Math.round(r)]}${Xu[Math.round(n)]}${Xu[Math.round(i*255)]}`:`#${Xu[Math.round(e)]}${Xu[Math.round(r)]}${Xu[Math.round(n)]}`},"stringify")},Sp=aH});var I3,r2,sH=I(()=>{"use strict";Nc();t2();I3={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:o(t=>{let e=t.match(I3.hueRe);if(e){let[,r,n]=e;switch(n){case"grad":return er.channel.clamp.h(parseFloat(r)*.9);case"rad":return er.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return er.channel.clamp.h(parseFloat(r)*360)}}return er.channel.clamp.h(parseFloat(t))},"_hue2deg"),parse:o(t=>{let e=t.charCodeAt(0);if(e!==104&&e!==72)return;let r=t.match(I3.re);if(!r)return;let[,n,i,a,s,l]=r;return of.set({h:I3._hue2deg(n),s:er.channel.clamp.s(parseFloat(i)),l:er.channel.clamp.l(parseFloat(a)),a:s?er.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},t)},"parse"),stringify:o(t=>{let{h:e,s:r,l:n,a:i}=t;return i<1?`hsla(${er.lang.round(e)}, ${er.lang.round(r)}%, ${er.lang.round(n)}%, ${i})`:`hsl(${er.lang.round(e)}, ${er.lang.round(r)}%, ${er.lang.round(n)}%)`},"stringify")},r2=I3});var O3,U8,oH=I(()=>{"use strict";q8();O3={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:o(t=>{t=t.toLowerCase();let e=O3.colors[t];if(e)return Sp.parse(e)},"parse"),stringify:o(t=>{let e=Sp.stringify(t);for(let r in O3.colors)if(O3.colors[r]===e)return r},"stringify")},U8=O3});var lH,n2,cH=I(()=>{"use strict";Nc();t2();lH={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:o(t=>{let e=t.charCodeAt(0);if(e!==114&&e!==82)return;let r=t.match(lH.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return of.set({r:er.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:er.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:er.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?er.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`rgba(${er.lang.round(e)}, ${er.lang.round(r)}, ${er.lang.round(n)}, ${er.lang.round(i)})`:`rgb(${er.lang.round(e)}, ${er.lang.round(r)}, ${er.lang.round(n)})`},"stringify")},n2=lH});var v6e,ji,Ku=I(()=>{"use strict";q8();sH();oH();cH();e2();v6e={format:{keyword:U8,hex:Sp,rgb:n2,rgba:n2,hsl:r2,hsla:r2},parse:o(t=>{if(typeof t!="string")return t;let e=Sp.parse(t)||n2.parse(t)||r2.parse(t)||U8.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},"parse"),stringify:o(t=>!t.changed&&t.color?t.color:t.type.is(Yi.HSL)||t.data.r===void 0?r2.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?n2.stringify(t):Sp.stringify(t),"stringify")},ji=v6e});var x6e,P3,W8=I(()=>{"use strict";Nc();Ku();x6e=o((t,e)=>{let r=ji.parse(t);for(let n in e)r[n]=er.channel.clamp[n](e[n]);return ji.stringify(r)},"change"),P3=x6e});var b6e,vs,H8=I(()=>{"use strict";Nc();t2();Ku();W8();b6e=o((t,e,r=0,n=1)=>{if(typeof t!="number")return P3(t,{a:e});let i=of.set({r:er.channel.clamp.r(t),g:er.channel.clamp.g(e),b:er.channel.clamp.b(r),a:er.channel.clamp.a(n)});return ji.stringify(i)},"rgba"),vs=b6e});var T6e,Ep,uH=I(()=>{"use strict";Nc();Ku();T6e=o((t,e)=>er.lang.round(ji.parse(t)[e]),"channel"),Ep=T6e});var w6e,hH,fH=I(()=>{"use strict";Nc();Ku();w6e=o(t=>{let{r:e,g:r,b:n}=ji.parse(t),i=.2126*er.channel.toLinear(e)+.7152*er.channel.toLinear(r)+.0722*er.channel.toLinear(n);return er.lang.round(i)},"luminance"),hH=w6e});var k6e,dH,pH=I(()=>{"use strict";fH();k6e=o(t=>hH(t)>=.5,"isLight"),dH=k6e});var S6e,_a,mH=I(()=>{"use strict";pH();S6e=o(t=>!dH(t),"isDark"),_a=S6e});var E6e,B3,Y8=I(()=>{"use strict";Nc();Ku();E6e=o((t,e,r)=>{let n=ji.parse(t),i=n[e],a=er.channel.clamp[e](i+r);return i!==a&&(n[e]=a),ji.stringify(n)},"adjustChannel"),B3=E6e});var C6e,It,gH=I(()=>{"use strict";Y8();C6e=o((t,e)=>B3(t,"l",e),"lighten"),It=C6e});var A6e,$t,yH=I(()=>{"use strict";Y8();A6e=o((t,e)=>B3(t,"l",-e),"darken"),$t=A6e});var _6e,Be,vH=I(()=>{"use strict";Ku();W8();_6e=o((t,e)=>{let r=ji.parse(t),n={};for(let i in e)e[i]&&(n[i]=r[i]+e[i]);return P3(t,n)},"adjust"),Be=_6e});var D6e,xH,bH=I(()=>{"use strict";Ku();H8();D6e=o((t,e,r=50)=>{let{r:n,g:i,b:a,a:s}=ji.parse(t),{r:l,g:u,b:h,a:f}=ji.parse(e),d=r/100,p=d*2-1,m=s-f,y=((p*m===-1?p:(p+m)/(1+p*m))+1)/2,v=1-y,x=n*y+l*v,b=i*y+u*v,T=a*y+h*v,E=s*d+f*(1-d);return vs(x,b,T,E)},"mix"),xH=D6e});var R6e,At,TH=I(()=>{"use strict";Ku();bH();R6e=o((t,e=100)=>{let r=ji.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,xH(r,t,e)},"invert"),At=R6e});var wH=I(()=>{"use strict";H8();uH();mH();gH();yH();vH();TH()});var _o=I(()=>{"use strict";wH()});var lf,cf,i2=I(()=>{"use strict";lf="#ffffff",cf="#f2f2f2"});var Pi,rg=I(()=>{"use strict";_o();Pi=o((t,e)=>e?Be(t,{s:-40,l:10}):Be(t,{s:-40,l:-10}),"mkBorder")});var X8,kH,SH=I(()=>{"use strict";_o();i2();rg();X8=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||Be(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Be(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||Pi(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Pi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Pi(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Pi(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||At(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||At(this.tertiaryColor),this.lineColor=this.lineColor||At(this.background),this.arrowheadColor=this.arrowheadColor||At(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?$t(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||$t(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||At(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||It(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||"navy",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode?(this.rowOdd=this.rowOdd||$t(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||$t(this.mainBkg,10)):(this.rowOdd=this.rowOdd||It(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||It(this.mainBkg,5)),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Be(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Be(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Be(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Be(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Be(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Be(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Be(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Be(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Be(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},kH=o(t=>{let e=new X8;return e.calculate(t),e},"getThemeVariables")});var K8,EH,CH=I(()=>{"use strict";_o();rg();K8=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=It(this.primaryColor,16),this.tertiaryColor=Be(this.primaryColor,{h:-160}),this.primaryBorderColor=At(this.background),this.secondaryBorderColor=Pi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Pi(this.tertiaryColor,this.darkMode),this.primaryTextColor=At(this.primaryColor),this.secondaryTextColor=At(this.secondaryColor),this.tertiaryTextColor=At(this.tertiaryColor),this.lineColor=At(this.background),this.textColor=At(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=It(At("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=vs(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=$t("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=$t(this.sectionBkgColor,10),this.taskBorderColor=vs(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=vs(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||It(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||$t(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=It(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=It(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=It(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=Be(this.primaryColor,{h:64}),this.fillType3=Be(this.secondaryColor,{h:64}),this.fillType4=Be(this.primaryColor,{h:-64}),this.fillType5=Be(this.secondaryColor,{h:-64}),this.fillType6=Be(this.primaryColor,{h:128}),this.fillType7=Be(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Be(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Be(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Be(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Be(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Be(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Be(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Be(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Be(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Be(this.primaryColor,{h:330});for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},EH=o(t=>{let e=new K8;return e.calculate(t),e},"getThemeVariables")});var Q8,uf,a2=I(()=>{"use strict";_o();rg();i2();Q8=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Be(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Be(this.primaryColor,{h:-160}),this.primaryBorderColor=Pi(this.primaryColor,this.darkMode),this.secondaryBorderColor=Pi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Pi(this.tertiaryColor,this.darkMode),this.primaryTextColor=At(this.primaryColor),this.secondaryTextColor=At(this.secondaryColor),this.tertiaryTextColor=At(this.tertiaryColor),this.lineColor=At(this.background),this.textColor=At(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.sectionBkgColor=vs(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="navy",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Be(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Be(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Be(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Be(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Be(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Be(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Be(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Be(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Be(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||$t(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||$t(this.tertiaryColor,40);for(let e=0;e{this[n]==="calculated"&&(this[n]=void 0)}),typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},uf=o(t=>{let e=new Q8;return e.calculate(t),e},"getThemeVariables")});var Z8,AH,_H=I(()=>{"use strict";_o();i2();rg();Z8=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=It("#cde498",10),this.primaryBorderColor=Pi(this.primaryColor,this.darkMode),this.secondaryBorderColor=Pi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Pi(this.tertiaryColor,this.darkMode),this.primaryTextColor=At(this.primaryColor),this.secondaryTextColor=At(this.secondaryColor),this.tertiaryTextColor=At(this.primaryColor),this.lineColor=At(this.background),this.textColor=At(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=$t(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Be(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Be(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Be(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Be(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Be(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Be(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Be(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Be(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Be(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||$t(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||$t(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},AH=o(t=>{let e=new Z8;return e.calculate(t),e},"getThemeVariables")});var J8,DH,RH=I(()=>{"use strict";_o();rg();i2();J8=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=It(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Be(this.primaryColor,{h:-160}),this.primaryBorderColor=Pi(this.primaryColor,this.darkMode),this.secondaryBorderColor=Pi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Pi(this.tertiaryColor,this.darkMode),this.primaryTextColor=At(this.primaryColor),this.secondaryTextColor=At(this.secondaryColor),this.tertiaryTextColor=At(this.tertiaryColor),this.lineColor=At(this.background),this.textColor=At(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||It(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=It(this.contrast,55),this.border2=this.contrast,this.actorBorder=It(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},DH=o(t=>{let e=new J8;return e.calculate(t),e},"getThemeVariables")});var rl,F3=I(()=>{"use strict";SH();CH();a2();_H();RH();rl={base:{getThemeVariables:kH},dark:{getThemeVariables:EH},default:{getThemeVariables:uf},forest:{getThemeVariables:AH},neutral:{getThemeVariables:DH}}});var ql,LH=I(()=>{"use strict";ql={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200,inheritDir:!1},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,maxLabelWidth:360,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showDataLabel:!1,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200,layoutAlgorithm:"cose-bilkent"},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:.17},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1}});var NH,MH,IH,gr,Ka=I(()=>{"use strict";F3();LH();NH={...ql,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:rl.default.getThemeVariables(),sequence:{...ql.sequence,messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:o(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:o(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1},gantt:{...ql.gantt,tickInterval:void 0,useWidth:void 0},c4:{...ql.c4,useWidth:void 0,personFont:o(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:{...ql.flowchart,inheritDir:!1},external_personFont:o(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:o(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:o(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:o(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:o(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:o(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:o(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:o(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:o(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:o(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:o(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:o(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:o(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:o(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:o(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:o(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:o(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:o(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:o(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:o(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...ql.pie,useWidth:984},xyChart:{...ql.xyChart,useWidth:void 0},requirement:{...ql.requirement,useWidth:void 0},packet:{...ql.packet},radar:{...ql.radar},treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","}},MH=o((t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...MH(t[n],"")]:[...r,e+n],[]),"keyify"),IH=new Set(MH(NH,"")),gr=NH});var ng,L6e,e_=I(()=>{"use strict";Ka();gt();ng=o(t=>{if(X.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>ng(e));return}for(let e of Object.keys(t)){if(X.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!IH.has(e)||t[e]==null){X.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){X.debug("sanitizing object",e),ng(t[e]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)e.includes(n)&&(X.debug("sanitizing css option",e),t[e]=L6e(t[e]))}if(t.themeVariables)for(let e of Object.keys(t.themeVariables)){let r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}X.debug("After sanitization",t)}},"sanitizeDirective"),L6e=o(t=>{let e=0,r=0;for(let n of t){if(e{"use strict";tg();gt();F3();Ka();e_();hf=Object.freeze(gr),Hs=$n({},hf),Cp=[],s2=$n({},hf),z3=o((t,e)=>{let r=$n({},t),n={};for(let i of e)FH(i),n=$n(n,i);if(r=$n(r,n),n.theme&&n.theme in rl){let i=$n({},$3),a=$n(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in rl&&(r.themeVariables=rl[r.theme].getThemeVariables(a))}return s2=r,zH(s2),s2},"updateCurrentConfig"),t_=o(t=>(Hs=$n({},hf),Hs=$n(Hs,t),t.theme&&rl[t.theme]&&(Hs.themeVariables=rl[t.theme].getThemeVariables(t.themeVariables)),z3(Hs,Cp),Hs),"setSiteConfig"),PH=o(t=>{$3=$n({},t)},"saveConfigFromInitialize"),BH=o(t=>(Hs=$n(Hs,t),z3(Hs,Cp),Hs),"updateSiteConfig"),r_=o(()=>$n({},Hs),"getSiteConfig"),G3=o(t=>(zH(t),$n(s2,t),tr()),"setConfig"),tr=o(()=>$n({},s2),"getConfig"),FH=o(t=>{t&&(["secure",...Hs.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(X.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&FH(t[e])}))},"sanitize"),$H=o(t=>{ng(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),Cp.push(t),z3(Hs,Cp)},"addDirective"),o2=o((t=Hs)=>{Cp=[],z3(t,Cp)},"reset"),N6e={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},OH={},M6e=o(t=>{OH[t]||(X.warn(N6e[t]),OH[t]=!0)},"issueWarning"),zH=o(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&M6e("LAZY_LOAD_DEPRECATED")},"checkConfig"),GH=o(()=>{let t={};$3&&(t=$n(t,$3));for(let e of Cp)t=$n(t,e);return t},"getUserDefinedConfig")});function Ts(t){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:U3;VH&&VH(t,null);let n=e.length;for(;n--;){let i=e[n];if(typeof i=="string"){let a=r(i);a!==i&&(I6e(e)||(e[n]=a),i=a)}t[i]=!0}return t}function V6e(t){for(let e=0;e0&&arguments[0]!==void 0?arguments[0]:J6e(),e=o(Dt=>tY(Dt),"DOMPurify");if(e.version="3.2.6",e.removed=[],!t||!t.document||t.document.nodeType!==f2.document||!t.Element)return e.isSupported=!1,e;let{document:r}=t,n=r,i=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:s,Node:l,Element:u,NodeFilter:h,NamedNodeMap:f=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:p,trustedTypes:m}=t,g=u.prototype,y=h2(g,"cloneNode"),v=h2(g,"remove"),x=h2(g,"nextSibling"),b=h2(g,"childNodes"),T=h2(g,"parentNode");if(typeof s=="function"){let Dt=r.createElement("template");Dt.content&&Dt.content.ownerDocument&&(r=Dt.content.ownerDocument)}let E,w="",{implementation:k,createNodeIterator:C,createDocumentFragment:D,getElementsByTagName:R}=r,{importNode:O}=n,L=KH();e.isSupported=typeof QH=="function"&&typeof T=="function"&&k&&k.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:S,ERB_EXPR:A,TMPLIT_EXPR:_,DATA_ATTR:N,ARIA_ATTR:M,IS_SCRIPT_OR_DATA:P,ATTR_WHITESPACE:B,CUSTOM_ELEMENT:F}=XH,{IS_ALLOWED_URI:G}=XH,$=null,V=Gr({},[...WH,...i_,...a_,...s_,...HH]),K=null,ee=Gr({},[...YH,...o_,...jH,...q3]),H=Object.seal(ZH(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),he=null,Z=null,de=!0,re=!0,ne=!1,te=!0,Q=!1,le=!0,J=!1,ge=!1,ie=!1,Te=!1,j=!1,Ge=!1,ye=!0,$e=!1,Xe="user-content-",Ue=!0,Le=!1,Ie={},Me=null,Ae=Gr({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),ze=null,Y=Gr({},["audio","video","img","source","image","track"]),ce=null,U=Gr({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ue="http://www.w3.org/1998/Math/MathML",z="http://www.w3.org/2000/svg",se="http://www.w3.org/1999/xhtml",oe=se,be=!1,pe=null,me=Gr({},[ue,z,se],n_),De=Gr({},["mi","mo","mn","ms","mtext"]),Ce=Gr({},["annotation-xml"]),Fe=Gr({},["title","style","font","a","script"]),Ye=null,xt=["application/xhtml+xml","text/html"],je="text/html",Pe=null,rt=null,We=r.createElement("form"),ut=o(function(_e){return _e instanceof RegExp||_e instanceof Function},"isRegexOrFunction"),Ut=o(function(){let _e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(rt&&rt===_e)){if((!_e||typeof _e!="object")&&(_e={}),_e=Qu(_e),Ye=xt.indexOf(_e.PARSER_MEDIA_TYPE)===-1?je:_e.PARSER_MEDIA_TYPE,Pe=Ye==="application/xhtml+xml"?n_:U3,$=Ul(_e,"ALLOWED_TAGS")?Gr({},_e.ALLOWED_TAGS,Pe):V,K=Ul(_e,"ALLOWED_ATTR")?Gr({},_e.ALLOWED_ATTR,Pe):ee,pe=Ul(_e,"ALLOWED_NAMESPACES")?Gr({},_e.ALLOWED_NAMESPACES,n_):me,ce=Ul(_e,"ADD_URI_SAFE_ATTR")?Gr(Qu(U),_e.ADD_URI_SAFE_ATTR,Pe):U,ze=Ul(_e,"ADD_DATA_URI_TAGS")?Gr(Qu(Y),_e.ADD_DATA_URI_TAGS,Pe):Y,Me=Ul(_e,"FORBID_CONTENTS")?Gr({},_e.FORBID_CONTENTS,Pe):Ae,he=Ul(_e,"FORBID_TAGS")?Gr({},_e.FORBID_TAGS,Pe):Qu({}),Z=Ul(_e,"FORBID_ATTR")?Gr({},_e.FORBID_ATTR,Pe):Qu({}),Ie=Ul(_e,"USE_PROFILES")?_e.USE_PROFILES:!1,de=_e.ALLOW_ARIA_ATTR!==!1,re=_e.ALLOW_DATA_ATTR!==!1,ne=_e.ALLOW_UNKNOWN_PROTOCOLS||!1,te=_e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Q=_e.SAFE_FOR_TEMPLATES||!1,le=_e.SAFE_FOR_XML!==!1,J=_e.WHOLE_DOCUMENT||!1,Te=_e.RETURN_DOM||!1,j=_e.RETURN_DOM_FRAGMENT||!1,Ge=_e.RETURN_TRUSTED_TYPE||!1,ie=_e.FORCE_BODY||!1,ye=_e.SANITIZE_DOM!==!1,$e=_e.SANITIZE_NAMED_PROPS||!1,Ue=_e.KEEP_CONTENT!==!1,Le=_e.IN_PLACE||!1,G=_e.ALLOWED_URI_REGEXP||JH,oe=_e.NAMESPACE||se,De=_e.MATHML_TEXT_INTEGRATION_POINTS||De,Ce=_e.HTML_INTEGRATION_POINTS||Ce,H=_e.CUSTOM_ELEMENT_HANDLING||{},_e.CUSTOM_ELEMENT_HANDLING&&ut(_e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(H.tagNameCheck=_e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),_e.CUSTOM_ELEMENT_HANDLING&&ut(_e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(H.attributeNameCheck=_e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),_e.CUSTOM_ELEMENT_HANDLING&&typeof _e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(H.allowCustomizedBuiltInElements=_e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Q&&(re=!1),j&&(Te=!0),Ie&&($=Gr({},HH),K=[],Ie.html===!0&&(Gr($,WH),Gr(K,YH)),Ie.svg===!0&&(Gr($,i_),Gr(K,o_),Gr(K,q3)),Ie.svgFilters===!0&&(Gr($,a_),Gr(K,o_),Gr(K,q3)),Ie.mathMl===!0&&(Gr($,s_),Gr(K,jH),Gr(K,q3))),_e.ADD_TAGS&&($===V&&($=Qu($)),Gr($,_e.ADD_TAGS,Pe)),_e.ADD_ATTR&&(K===ee&&(K=Qu(K)),Gr(K,_e.ADD_ATTR,Pe)),_e.ADD_URI_SAFE_ATTR&&Gr(ce,_e.ADD_URI_SAFE_ATTR,Pe),_e.FORBID_CONTENTS&&(Me===Ae&&(Me=Qu(Me)),Gr(Me,_e.FORBID_CONTENTS,Pe)),Ue&&($["#text"]=!0),J&&Gr($,["html","head","body"]),$.table&&(Gr($,["tbody"]),delete he.tbody),_e.TRUSTED_TYPES_POLICY){if(typeof _e.TRUSTED_TYPES_POLICY.createHTML!="function")throw u2('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof _e.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw u2('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');E=_e.TRUSTED_TYPES_POLICY,w=E.createHTML("")}else E===void 0&&(E=eAe(m,i)),E!==null&&typeof w=="string"&&(w=E.createHTML(""));bs&&bs(_e),rt=_e}},"_parseConfig"),Tt=Gr({},[...i_,...a_,...q6e]),Mt=Gr({},[...s_,...U6e]),mt=o(function(_e){let ot=T(_e);(!ot||!ot.tagName)&&(ot={namespaceURI:oe,tagName:"template"});let Ot=U3(_e.tagName),Dr=U3(ot.tagName);return pe[_e.namespaceURI]?_e.namespaceURI===z?ot.namespaceURI===se?Ot==="svg":ot.namespaceURI===ue?Ot==="svg"&&(Dr==="annotation-xml"||De[Dr]):!!Tt[Ot]:_e.namespaceURI===ue?ot.namespaceURI===se?Ot==="math":ot.namespaceURI===z?Ot==="math"&&Ce[Dr]:!!Mt[Ot]:_e.namespaceURI===se?ot.namespaceURI===z&&!Ce[Dr]||ot.namespaceURI===ue&&!De[Dr]?!1:!Mt[Ot]&&(Fe[Ot]||!Tt[Ot]):!!(Ye==="application/xhtml+xml"&&pe[_e.namespaceURI]):!1},"_checkValidNamespace"),at=o(function(_e){l2(e.removed,{element:_e});try{T(_e).removeChild(_e)}catch{v(_e)}},"_forceRemove"),wt=o(function(_e,ot){try{l2(e.removed,{attribute:ot.getAttributeNode(_e),from:ot})}catch{l2(e.removed,{attribute:null,from:ot})}if(ot.removeAttribute(_e),_e==="is")if(Te||j)try{at(ot)}catch{}else try{ot.setAttribute(_e,"")}catch{}},"_removeAttribute"),St=o(function(_e){let ot=null,Ot=null;if(ie)_e=""+_e;else{let Cn=UH(_e,/^[\r\n\t ]+/);Ot=Cn&&Cn[0]}Ye==="application/xhtml+xml"&&oe===se&&(_e=''+_e+"");let Dr=E?E.createHTML(_e):_e;if(oe===se)try{ot=new p().parseFromString(Dr,Ye)}catch{}if(!ot||!ot.documentElement){ot=k.createDocument(oe,"template",null);try{ot.documentElement.innerHTML=be?w:Dr}catch{}}let Rn=ot.body||ot.documentElement;return _e&&Ot&&Rn.insertBefore(r.createTextNode(Ot),Rn.childNodes[0]||null),oe===se?R.call(ot,J?"html":"body")[0]:J?ot.documentElement:Rn},"_initDocument"),bt=o(function(_e){return C.call(_e.ownerDocument||_e,_e,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT|h.SHOW_PROCESSING_INSTRUCTION|h.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),pt=o(function(_e){return _e instanceof d&&(typeof _e.nodeName!="string"||typeof _e.textContent!="string"||typeof _e.removeChild!="function"||!(_e.attributes instanceof f)||typeof _e.removeAttribute!="function"||typeof _e.setAttribute!="function"||typeof _e.namespaceURI!="string"||typeof _e.insertBefore!="function"||typeof _e.hasChildNodes!="function")},"_isClobbered"),Zr=o(function(_e){return typeof l=="function"&&_e instanceof l},"_isNode");function Lt(Dt,_e,ot){V3(Dt,Ot=>{Ot.call(e,_e,ot,rt)})}o(Lt,"_executeHooks");let Dn=o(function(_e){let ot=null;if(Lt(L.beforeSanitizeElements,_e,null),pt(_e))return at(_e),!0;let Ot=Pe(_e.nodeName);if(Lt(L.uponSanitizeElement,_e,{tagName:Ot,allowedTags:$}),le&&_e.hasChildNodes()&&!Zr(_e.firstElementChild)&&xs(/<[/\w!]/g,_e.innerHTML)&&xs(/<[/\w!]/g,_e.textContent)||_e.nodeType===f2.progressingInstruction||le&&_e.nodeType===f2.comment&&xs(/<[/\w]/g,_e.data))return at(_e),!0;if(!$[Ot]||he[Ot]){if(!he[Ot]&&mr(Ot)&&(H.tagNameCheck instanceof RegExp&&xs(H.tagNameCheck,Ot)||H.tagNameCheck instanceof Function&&H.tagNameCheck(Ot)))return!1;if(Ue&&!Me[Ot]){let Dr=T(_e)||_e.parentNode,Rn=b(_e)||_e.childNodes;if(Rn&&Dr){let Cn=Rn.length;for(let mn=Cn-1;mn>=0;--mn){let oa=y(Rn[mn],!0);oa.__removalCount=(_e.__removalCount||0)+1,Dr.insertBefore(oa,x(_e))}}}return at(_e),!0}return _e instanceof u&&!mt(_e)||(Ot==="noscript"||Ot==="noembed"||Ot==="noframes")&&xs(/<\/no(script|embed|frames)/i,_e.innerHTML)?(at(_e),!0):(Q&&_e.nodeType===f2.text&&(ot=_e.textContent,V3([S,A,_],Dr=>{ot=c2(ot,Dr," ")}),_e.textContent!==ot&&(l2(e.removed,{element:_e.cloneNode()}),_e.textContent=ot)),Lt(L.afterSanitizeElements,_e,null),!1)},"_sanitizeElements"),Hr=o(function(_e,ot,Ot){if(ye&&(ot==="id"||ot==="name")&&(Ot in r||Ot in We))return!1;if(!(re&&!Z[ot]&&xs(N,ot))){if(!(de&&xs(M,ot))){if(!K[ot]||Z[ot]){if(!(mr(_e)&&(H.tagNameCheck instanceof RegExp&&xs(H.tagNameCheck,_e)||H.tagNameCheck instanceof Function&&H.tagNameCheck(_e))&&(H.attributeNameCheck instanceof RegExp&&xs(H.attributeNameCheck,ot)||H.attributeNameCheck instanceof Function&&H.attributeNameCheck(ot))||ot==="is"&&H.allowCustomizedBuiltInElements&&(H.tagNameCheck instanceof RegExp&&xs(H.tagNameCheck,Ot)||H.tagNameCheck instanceof Function&&H.tagNameCheck(Ot))))return!1}else if(!ce[ot]){if(!xs(G,c2(Ot,B,""))){if(!((ot==="src"||ot==="xlink:href"||ot==="href")&&_e!=="script"&&$6e(Ot,"data:")===0&&ze[_e])){if(!(ne&&!xs(P,c2(Ot,B,"")))){if(Ot)return!1}}}}}}return!0},"_isValidAttribute"),mr=o(function(_e){return _e!=="annotation-xml"&&UH(_e,F)},"_isBasicCustomElement"),hr=o(function(_e){Lt(L.beforeSanitizeAttributes,_e,null);let{attributes:ot}=_e;if(!ot||pt(_e))return;let Ot={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:K,forceKeepAttr:void 0},Dr=ot.length;for(;Dr--;){let Rn=ot[Dr],{name:Cn,namespaceURI:mn,value:oa}=Rn,Co=Pe(Cn),Xa=oa,br=Cn==="value"?Xa:z6e(Xa);if(Ot.attrName=Co,Ot.attrValue=br,Ot.keepAttr=!0,Ot.forceKeepAttr=void 0,Lt(L.uponSanitizeAttribute,_e,Ot),br=Ot.attrValue,$e&&(Co==="id"||Co==="name")&&(wt(Cn,_e),br=Xe+br),le&&xs(/((--!?|])>)|<\/(style|title)/i,br)){wt(Cn,_e);continue}if(Ot.forceKeepAttr)continue;if(!Ot.keepAttr){wt(Cn,_e);continue}if(!te&&xs(/\/>/i,br)){wt(Cn,_e);continue}Q&&V3([S,A,_],Ct=>{br=c2(br,Ct," ")});let st=Pe(_e.nodeName);if(!Hr(st,Co,br)){wt(Cn,_e);continue}if(E&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!mn)switch(m.getAttributeType(st,Co)){case"TrustedHTML":{br=E.createHTML(br);break}case"TrustedScriptURL":{br=E.createScriptURL(br);break}}if(br!==Xa)try{mn?_e.setAttributeNS(mn,Cn,br):_e.setAttribute(Cn,br),pt(_e)?at(_e):qH(e.removed)}catch{wt(Cn,_e)}}Lt(L.afterSanitizeAttributes,_e,null)},"_sanitizeAttributes"),Br=o(function Dt(_e){let ot=null,Ot=bt(_e);for(Lt(L.beforeSanitizeShadowDOM,_e,null);ot=Ot.nextNode();)Lt(L.uponSanitizeShadowNode,ot,null),Dn(ot),hr(ot),ot.content instanceof a&&Dt(ot.content);Lt(L.afterSanitizeShadowDOM,_e,null)},"_sanitizeShadowDOM");return e.sanitize=function(Dt){let _e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ot=null,Ot=null,Dr=null,Rn=null;if(be=!Dt,be&&(Dt=""),typeof Dt!="string"&&!Zr(Dt))if(typeof Dt.toString=="function"){if(Dt=Dt.toString(),typeof Dt!="string")throw u2("dirty is not a string, aborting")}else throw u2("toString is not a function");if(!e.isSupported)return Dt;if(ge||Ut(_e),e.removed=[],typeof Dt=="string"&&(Le=!1),Le){if(Dt.nodeName){let oa=Pe(Dt.nodeName);if(!$[oa]||he[oa])throw u2("root node is forbidden and cannot be sanitized in-place")}}else if(Dt instanceof l)ot=St(""),Ot=ot.ownerDocument.importNode(Dt,!0),Ot.nodeType===f2.element&&Ot.nodeName==="BODY"||Ot.nodeName==="HTML"?ot=Ot:ot.appendChild(Ot);else{if(!Te&&!Q&&!J&&Dt.indexOf("<")===-1)return E&&Ge?E.createHTML(Dt):Dt;if(ot=St(Dt),!ot)return Te?null:Ge?w:""}ot&&ie&&at(ot.firstChild);let Cn=bt(Le?Dt:ot);for(;Dr=Cn.nextNode();)Dn(Dr),hr(Dr),Dr.content instanceof a&&Br(Dr.content);if(Le)return Dt;if(Te){if(j)for(Rn=D.call(ot.ownerDocument);ot.firstChild;)Rn.appendChild(ot.firstChild);else Rn=ot;return(K.shadowroot||K.shadowrootmode)&&(Rn=O.call(n,Rn,!0)),Rn}let mn=J?ot.outerHTML:ot.innerHTML;return J&&$["!doctype"]&&ot.ownerDocument&&ot.ownerDocument.doctype&&ot.ownerDocument.doctype.name&&xs(eY,ot.ownerDocument.doctype.name)&&(mn=" +`+mn),Q&&V3([S,A,_],oa=>{mn=c2(mn,oa," ")}),E&&Ge?E.createHTML(mn):mn},e.setConfig=function(){let Dt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ut(Dt),ge=!0},e.clearConfig=function(){rt=null,ge=!1},e.isValidAttribute=function(Dt,_e,ot){rt||Ut({});let Ot=Pe(Dt),Dr=Pe(_e);return Hr(Ot,Dr,ot)},e.addHook=function(Dt,_e){typeof _e=="function"&&l2(L[Dt],_e)},e.removeHook=function(Dt,_e){if(_e!==void 0){let ot=B6e(L[Dt],_e);return ot===-1?void 0:F6e(L[Dt],ot,1)[0]}return qH(L[Dt])},e.removeHooks=function(Dt){L[Dt]=[]},e.removeAllHooks=function(){L=KH()},e}var QH,VH,I6e,O6e,P6e,bs,nl,ZH,l_,c_,V3,B6e,qH,l2,F6e,U3,n_,UH,c2,$6e,z6e,Ul,xs,u2,WH,i_,a_,q6e,s_,U6e,HH,YH,o_,jH,q3,W6e,H6e,Y6e,j6e,X6e,JH,K6e,Q6e,eY,Z6e,XH,f2,J6e,eAe,KH,ff,u_=I(()=>{"use strict";({entries:QH,setPrototypeOf:VH,isFrozen:I6e,getPrototypeOf:O6e,getOwnPropertyDescriptor:P6e}=Object),{freeze:bs,seal:nl,create:ZH}=Object,{apply:l_,construct:c_}=typeof Reflect<"u"&&Reflect;bs||(bs=o(function(e){return e},"freeze"));nl||(nl=o(function(e){return e},"seal"));l_||(l_=o(function(e,r,n){return e.apply(r,n)},"apply"));c_||(c_=o(function(e,r){return new e(...r)},"construct"));V3=Ts(Array.prototype.forEach),B6e=Ts(Array.prototype.lastIndexOf),qH=Ts(Array.prototype.pop),l2=Ts(Array.prototype.push),F6e=Ts(Array.prototype.splice),U3=Ts(String.prototype.toLowerCase),n_=Ts(String.prototype.toString),UH=Ts(String.prototype.match),c2=Ts(String.prototype.replace),$6e=Ts(String.prototype.indexOf),z6e=Ts(String.prototype.trim),Ul=Ts(Object.prototype.hasOwnProperty),xs=Ts(RegExp.prototype.test),u2=G6e(TypeError);o(Ts,"unapply");o(G6e,"unconstruct");o(Gr,"addToSet");o(V6e,"cleanArray");o(Qu,"clone");o(h2,"lookupGetter");WH=bs(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),i_=bs(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),a_=bs(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),q6e=bs(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),s_=bs(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),U6e=bs(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),HH=bs(["#text"]),YH=bs(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),o_=bs(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),jH=bs(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),q3=bs(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),W6e=nl(/\{\{[\w\W]*|[\w\W]*\}\}/gm),H6e=nl(/<%[\w\W]*|[\w\W]*%>/gm),Y6e=nl(/\$\{[\w\W]*/gm),j6e=nl(/^data-[\-\w.\u00B7-\uFFFF]+$/),X6e=nl(/^aria-[\-\w]+$/),JH=nl(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),K6e=nl(/^(?:\w+script|data):/i),Q6e=nl(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),eY=nl(/^html$/i),Z6e=nl(/^[a-z][.\w]*(-[.\w]+)+$/i),XH=Object.freeze({__proto__:null,ARIA_ATTR:X6e,ATTR_WHITESPACE:Q6e,CUSTOM_ELEMENT:Z6e,DATA_ATTR:j6e,DOCTYPE_NAME:eY,ERB_EXPR:H6e,IS_ALLOWED_URI:JH,IS_SCRIPT_OR_DATA:K6e,MUSTACHE_EXPR:W6e,TMPLIT_EXPR:Y6e}),f2={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},J6e=o(function(){return typeof window>"u"?null:window},"getGlobal"),eAe=o(function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));let a="dompurify"+(n?"#"+n:"");try{return e.createPolicy(a,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}},"_createTrustedTypesPolicy"),KH=o(function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},"_createHooksMap");o(tY,"createDOMPurify");ff=tY()});var Mj={};vr(Mj,{ParseError:()=>vt,SETTINGS_SCHEMA:()=>g2,__defineFunction:()=>Pt,__defineMacro:()=>fe,__defineSymbol:()=>q,__domTree:()=>Nj,__parse:()=>_j,__renderToDomTree:()=>yw,__renderToHTMLTree:()=>Rj,__setFontMetrics:()=>OY,default:()=>W7e,render:()=>J_,renderToString:()=>Aj,version:()=>Lj});function oAe(t){return String(t).replace(sAe,e=>aAe[e])}function hAe(t){if(t.default)return t.default;var e=t.type,r=Array.isArray(e)?e[0]:e;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}function vAe(t){for(var e=0;e=i[0]&&t<=i[1])return r.name}return null}function IY(t){for(var e=0;e=rw[e]&&t<=rw[e+1])return!0;return!1}function OY(t,e){Oc[t]=e}function B_(t,e,r){if(!Oc[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=Oc[e][n];if(!i&&t[0]in nY&&(n=nY[t[0]].charCodeAt(0),i=Oc[e][n]),!i&&r==="text"&&IY(n)&&(i=Oc[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function DAe(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!h_[e]){var r=h_[e]={cssEmPerMu:W3.quad[e]/18};for(var n in W3)W3.hasOwnProperty(n)&&(r[n]=W3[n][e])}return h_[e]}function sY(t){if(t instanceof js)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function IAe(t){if(t instanceof Dp)return t;throw new Error("Expected span but got "+String(t)+".")}function q(t,e,r,n,i,a){zn[t][i]={font:e,group:r,replace:n},a&&n&&(zn[t][n]=zn[t][i])}function Pt(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},u=0;u0&&(a.push(Z3(s,e)),s=[]),a.push(n[l]));s.length>0&&a.push(Z3(s,e));var h;r?(h=Z3(Xi(r,e,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=rh(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=_t(f.height+f.depth),f.depth&&(d.style.verticalAlign=_t(-f.depth))}return f}function YY(t){return new _p(t)}function p_(t){if(!t)return!1;if(t.type==="mi"&&t.children.length===1){var e=t.children[0];return e instanceof al&&e.text==="."}else if(t.type==="mo"&&t.children.length===1&&t.getAttribute("separator")==="true"&&t.getAttribute("lspace")==="0em"&&t.getAttribute("rspace")==="0em"){var r=t.children[0];return r instanceof al&&r.text===","}else return!1}function hY(t,e,r,n,i){var a=Xs(t,r),s;a.length===1&&a[0]instanceof ws&&ar.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new yt.MathNode("mrow",a);var l=new yt.MathNode("annotation",[new yt.TextNode(e)]);l.setAttribute("encoding","application/x-tex");var u=new yt.MathNode("semantics",[s,l]),h=new yt.MathNode("math",[u]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var f=i?"katex":"katex-mathml";return Ve.makeSpan([f],[h])}function _r(t,e){if(!t||t.type!==e)throw new Error("Expected node of type "+e+", but got "+(t?"node of type "+t.type:String(t)));return t}function G_(t){var e=dw(t);if(!e)throw new Error("Expected node of symbol group type, but got "+(t?"node of type "+t.type:String(t)));return e}function dw(t){return t&&(t.type==="atom"||PAe.hasOwnProperty(t.type))?t:null}function QY(t,e){var r=Xi(t.body,e,!0);return f7e([t.mclass],r,e)}function ZY(t,e){var r,n=Xs(t.body,e);return t.mclass==="minner"?r=new yt.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new yt.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new yt.MathNode("mo",n),t.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):t.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):t.mclass==="mopen"||t.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):t.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function m7e(t,e,r){var n=d7e[t];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[e[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[e[1]],[]),u={type:"ordgroup",mode:"math",body:[i,s,l]};return r.callFunction("\\\\cdparent",[u],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function g7e(t){var e=[];for(t.gullet.beginGroup(),t.gullet.macros.set("\\cr","\\\\\\relax"),t.gullet.beginGroup();;){e.push(t.parseExpression(!1,"\\\\")),t.gullet.endGroup(),t.gullet.beginGroup();var r=t.fetch().text;if(r==="&"||r==="\\\\")t.consume();else if(r==="\\end"){e[e.length-1].length===0&&e.pop();break}else throw new vt("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a-1))if("<>AV".indexOf(h)>-1)for(var d=0;d<2;d++){for(var p=!0,m=u+1;mAV=|." after @',s[u]);var g=m7e(h,f,t),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=fY()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var v=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:v,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}function mw(t,e){var r=dw(t);if(r&&ar.contains(D7e,r.text))return r;throw r?new vt("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new vt("Invalid delimiter type '"+t.type+"'",t)}function mY(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function Bc(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u1||!f)&&y.pop(),x.length{"use strict";Do=class t{static{o(this,"SourceLocation")}constructor(e,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=r,this.end=n}static range(e,r){return r?!e||!e.loc||!r.loc||e.loc.lexer!==r.loc.lexer?null:new t(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}},sl=class t{static{o(this,"Token")}constructor(e,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=r}range(e,r){return new t(r,Do.range(this,e))}},vt=class t{static{o(this,"ParseError")}constructor(e,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+e,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var l=s.lexer.input;i=s.start,a=s.end,i===l.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var u=l.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+l.slice(i-15,i):h=l.slice(0,i);var f;a+15":">","<":"<",'"':""","'":"'"},sAe=/[&><"']/g;o(oAe,"escape");MY=o(function t(e){return e.type==="ordgroup"||e.type==="color"?e.body.length===1?t(e.body[0]):e:e.type==="font"?t(e.body):e},"getBaseElem"),lAe=o(function(e){var r=MY(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),cAe=o(function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},"assert"),uAe=o(function(e){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),ar={contains:tAe,deflt:rAe,escape:oAe,hyphenate:iAe,getBaseElem:MY,isCharacterBox:lAe,protocolFromUrl:uAe},g2={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:o(t=>"#"+t,"cliProcessor")},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:o((t,e)=>(e.push(t),e),"cliProcessor")},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:o(t=>Math.max(0,t),"processor"),cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:o(t=>Math.max(0,t),"processor"),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:o(t=>Math.max(0,t),"processor"),cli:"-e, --max-expand ",cliProcessor:o(t=>t==="Infinity"?1/0:parseInt(t),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(hAe,"getDefaultValue");v2=class{static{o(this,"Settings")}constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{};for(var r in g2)if(g2.hasOwnProperty(r)){var n=g2[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:hAe(n)}}reportNonstrict(e,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(e,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new vt("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+e+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]"))}}useStrictBehavior(e,r,n){var i=this.strict;if(typeof i=="function")try{i=i(e,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]")),!1)}isTrusted(e){if(e.url&&!e.protocol){var r=ar.protocolFromUrl(e.url);if(r==null)return!1;e.protocol=r}var n=typeof this.trust=="function"?this.trust(e):this.trust;return!!n}},Mc=class{static{o(this,"Style")}constructor(e,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=r,this.cramped=n}sup(){return Ic[fAe[this.id]]}sub(){return Ic[dAe[this.id]]}fracNum(){return Ic[pAe[this.id]]}fracDen(){return Ic[mAe[this.id]]}cramp(){return Ic[gAe[this.id]]}text(){return Ic[yAe[this.id]]}isTight(){return this.size>=2}},P_=0,nw=1,sg=2,eh=3,x2=4,il=5,og=6,ks=7,Ic=[new Mc(P_,0,!1),new Mc(nw,0,!0),new Mc(sg,1,!1),new Mc(eh,1,!0),new Mc(x2,2,!1),new Mc(il,2,!0),new Mc(og,3,!1),new Mc(ks,3,!0)],fAe=[x2,il,x2,il,og,ks,og,ks],dAe=[il,il,il,il,ks,ks,ks,ks],pAe=[sg,eh,x2,il,og,ks,og,ks],mAe=[eh,eh,il,il,ks,ks,ks,ks],gAe=[nw,nw,eh,eh,il,il,ks,ks],yAe=[P_,nw,sg,eh,sg,eh,sg,eh],lr={DISPLAY:Ic[P_],TEXT:Ic[sg],SCRIPT:Ic[x2],SCRIPTSCRIPT:Ic[og]},S_=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];o(vAe,"scriptFromCodepoint");rw=[];S_.forEach(t=>t.blocks.forEach(e=>rw.push(...e)));o(IY,"supportedCodepoint");ag=80,xAe=o(function(e,r){return"M95,"+(622+e+r)+` c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 @@ -10,7 +10,7 @@ c5.3,-9.3,12,-14,20,-14 H400000v`+(40+e)+`H845.2724 s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z -M`+(834+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtMain"),mTe=o(function(e,r){return"M263,"+(601+e+r)+`c0.7,0,18,39.7,52,119 +M`+(834+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtMain"),bAe=o(function(e,r){return"M263,"+(601+e+r)+`c0.7,0,18,39.7,52,119 c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120 c340,-704.7,510.7,-1060.3,512,-1067 l`+e/2.084+" -"+e+` @@ -20,7 +20,7 @@ s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5, c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1 s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26 c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z -M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize1"),gTe=o(function(e,r){return"M983 "+(10+e+r)+` +M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize1"),TAe=o(function(e,r){return"M983 "+(10+e+r)+` l`+e/3.13+" -"+e+` c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+` H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7 @@ -29,7 +29,7 @@ c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30 c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722 c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5 c53.7,-170.3,84.5,-266.8,92.5,-289.5z -M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize2"),yTe=o(function(e,r){return"M424,"+(2398+e+r)+` +M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize2"),wAe=o(function(e,r){return"M424,"+(2398+e+r)+` c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514 c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20 s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121 @@ -39,18 +39,18 @@ v`+(40+e)+`H1014.6 s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185 c-2,6,-10,9,-24,9 c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+r+` -h400000v`+(40+e)+"h-400000z"},"sqrtSize3"),vTe=o(function(e,r){return"M473,"+(2713+e+r)+` +h400000v`+(40+e)+"h-400000z"},"sqrtSize3"),kAe=o(function(e,r){return"M473,"+(2713+e+r)+` c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+` c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7 s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9 c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200 c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26 s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104, -606zM`+(1001+e)+" "+r+"h400000v"+(40+e)+"H1017.7z"},"sqrtSize4"),xTe=o(function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},"phasePath"),bTe=o(function(e,r,n){var i=n-54-r-e;return"M702 "+(e+r)+"H400000"+(40+e)+` +606zM`+(1001+e)+" "+r+"h400000v"+(40+e)+"H1017.7z"},"sqrtSize4"),SAe=o(function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},"phasePath"),EAe=o(function(e,r,n){var i=n-54-r-e;return"M702 "+(e+r)+"H400000"+(40+e)+` H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1 h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170 c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667 -219 661 l218 661zM702 `+r+"H400000v"+(40+e)+"H742z"},"sqrtTall"),TTe=o(function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=pTe(r,w0);break;case"sqrtSize1":i=mTe(r,w0);break;case"sqrtSize2":i=gTe(r,w0);break;case"sqrtSize3":i=yTe(r,w0);break;case"sqrtSize4":i=vTe(r,w0);break;case"sqrtTall":i=bTe(r,w0,n)}return i},"sqrtPath"),wTe=o(function(e,r){switch(e){case"\u239C":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"\u2223":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"\u2225":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"\u239F":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"\u23A2":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"\u23A5":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"\u23AA":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"\u23D0":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"\u2016":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},"innerPath"),vV={doubleleftarrow:`M262 157 +219 661 l218 661zM702 `+r+"H400000v"+(40+e)+"H742z"},"sqrtTall"),CAe=o(function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=xAe(r,ag);break;case"sqrtSize1":i=bAe(r,ag);break;case"sqrtSize2":i=TAe(r,ag);break;case"sqrtSize3":i=wAe(r,ag);break;case"sqrtSize4":i=kAe(r,ag);break;case"sqrtTall":i=EAe(r,ag,n)}return i},"sqrtPath"),AAe=o(function(e,r){switch(e){case"\u239C":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"\u2223":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"\u2225":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"\u239F":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"\u23A2":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"\u23A5":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"\u23AA":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"\u23D0":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"\u2016":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},"innerPath"),rY={doubleleftarrow:`M262 157 l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5 @@ -225,7 +225,7 @@ M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z` c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, -231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z -M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},kTe=o(function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84 +M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},_Ae=o(function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84 H403z M403 1759 V0 H319 V1759 v`+r+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v1759 H0 v84 H347z M347 1759 V0 H263 V1759 v`+r+" v1759 h84z";case"vert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 @@ -253,24 +253,24 @@ c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6 c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17 c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558 l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7, --470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}},"tallDelim"),hd=class{static{o(this,"DocumentFragment")}constructor(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(e){return er.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),r=0;rr.toText(),"toText");return this.children.map(e).join("")}},Ql={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},l3={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},xV={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};o(QV,"setFontMetrics");o(lA,"getCharacterMetrics");P7={};o(ETe,"getGlobalMetrics");STe=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],bV=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],TV=o(function(e,r){return r.size<2?e:STe[e-1][r.size-1]},"sizeAtStyle"),T3=class t{static{o(this,"Options")}constructor(e){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=e.style,this.color=e.color,this.size=e.size||t.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=bV[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return new t(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:TV(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:bV[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=TV(t.BASESIZE,e);return this.size===r&&this.textSize===t.BASESIZE&&this.style===e?this:this.extend({style:e,size:r})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==t.BASESIZE?["sizing","reset-size"+this.size,"size"+t.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=ETe(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};T3.BASESIZE=6;K7={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},CTe={ex:!0,em:!0,mu:!0},ZV=o(function(e){return typeof e!="string"&&(e=e.unit),e in K7||e in CTe||e==="ex"},"validUnit"),ii=o(function(e,r){var n;if(e.unit in K7)n=K7[e.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(e.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,e.unit==="ex")n=i.fontMetrics().xHeight;else if(e.unit==="em")n=i.fontMetrics().quad;else throw new gt("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},"calculateSize"),St=o(function(e){return+e.toFixed(4)+"em"},"makeEm"),bh=o(function(e){return e.filter(r=>r).join(" ")},"createClass"),JV=o(function(e,r,n){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},"initNode"),eU=o(function(e){var r=document.createElement(e);r.className=bh(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a/=\x00-\x1f]/,tU=o(function(e){var r="<"+e;this.classes.length&&(r+=' class="'+er.escape(bh(this.classes))+'"');var n="";for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=er.hyphenate(i)+":"+this.style[i]+";");n&&(r+=' style="'+er.escape(n)+'"');for(var a in this.attributes)if(this.attributes.hasOwnProperty(a)){if(ATe.test(a))throw new gt("Invalid attribute name '"+a+"'");r+=" "+a+'="'+er.escape(this.attributes[a])+'"'}r+=">";for(var s=0;s",r},"toMarkup"),fd=class{static{o(this,"Span")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,JV.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return er.contains(this.classes,e)}toNode(){return eU.call(this,"span")}toMarkup(){return tU.call(this,"span")}},Qy=class{static{o(this,"Anchor")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,JV.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return er.contains(this.classes,e)}toNode(){return eU.call(this,"a")}toMarkup(){return tU.call(this,"a")}},Q7=class{static{o(this,"Img")}constructor(e,r,n){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=r,this.src=e,this.classes=["mord"],this.style=n}hasClass(e){return er.contains(this.classes,e)}toNode(){var e=document.createElement("img");e.src=this.src,e.alt=this.alt,e.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(e.style[r]=this.style[r]);return e}toMarkup(){var e=''+er.escape(this.alt)+'0&&(r=document.createElement("span"),r.style.marginRight=St(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=bh(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=er.hyphenate(i)+":"+this.style[i]+";");n&&(e=!0,r+=' style="'+er.escape(n)+'"');var a=er.escape(this.text);return e?(r+=">",r+=a,r+="",r):a}},dl=class{static{o(this,"SvgNode")}constructor(e,r){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=r||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"svg");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i':''}},Zy=class{static{o(this,"LineNode")}constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e="","\\gt",!0);G(H,ie,Ee,"\u2208","\\in",!0);G(H,ie,Ee,"\uE020","\\@not");G(H,ie,Ee,"\u2282","\\subset",!0);G(H,ie,Ee,"\u2283","\\supset",!0);G(H,ie,Ee,"\u2286","\\subseteq",!0);G(H,ie,Ee,"\u2287","\\supseteq",!0);G(H,we,Ee,"\u2288","\\nsubseteq",!0);G(H,we,Ee,"\u2289","\\nsupseteq",!0);G(H,ie,Ee,"\u22A8","\\models");G(H,ie,Ee,"\u2190","\\leftarrow",!0);G(H,ie,Ee,"\u2264","\\le");G(H,ie,Ee,"\u2264","\\leq",!0);G(H,ie,Ee,"<","\\lt",!0);G(H,ie,Ee,"\u2192","\\rightarrow",!0);G(H,ie,Ee,"\u2192","\\to");G(H,we,Ee,"\u2271","\\ngeq",!0);G(H,we,Ee,"\u2270","\\nleq",!0);G(H,ie,mu,"\xA0","\\ ");G(H,ie,mu,"\xA0","\\space");G(H,ie,mu,"\xA0","\\nobreakspace");G(ct,ie,mu,"\xA0","\\ ");G(ct,ie,mu,"\xA0"," ");G(ct,ie,mu,"\xA0","\\space");G(ct,ie,mu,"\xA0","\\nobreakspace");G(H,ie,mu,null,"\\nobreak");G(H,ie,mu,null,"\\allowbreak");G(H,ie,_3,",",",");G(H,ie,_3,";",";");G(H,we,Ot,"\u22BC","\\barwedge",!0);G(H,we,Ot,"\u22BB","\\veebar",!0);G(H,ie,Ot,"\u2299","\\odot",!0);G(H,ie,Ot,"\u2295","\\oplus",!0);G(H,ie,Ot,"\u2297","\\otimes",!0);G(H,ie,De,"\u2202","\\partial",!0);G(H,ie,Ot,"\u2298","\\oslash",!0);G(H,we,Ot,"\u229A","\\circledcirc",!0);G(H,we,Ot,"\u22A1","\\boxdot",!0);G(H,ie,Ot,"\u25B3","\\bigtriangleup");G(H,ie,Ot,"\u25BD","\\bigtriangledown");G(H,ie,Ot,"\u2020","\\dagger");G(H,ie,Ot,"\u22C4","\\diamond");G(H,ie,Ot,"\u22C6","\\star");G(H,ie,Ot,"\u25C3","\\triangleleft");G(H,ie,Ot,"\u25B9","\\triangleright");G(H,ie,ro,"{","\\{");G(ct,ie,De,"{","\\{");G(ct,ie,De,"{","\\textbraceleft");G(H,ie,rs,"}","\\}");G(ct,ie,De,"}","\\}");G(ct,ie,De,"}","\\textbraceright");G(H,ie,ro,"{","\\lbrace");G(H,ie,rs,"}","\\rbrace");G(H,ie,ro,"[","\\lbrack",!0);G(ct,ie,De,"[","\\lbrack",!0);G(H,ie,rs,"]","\\rbrack",!0);G(ct,ie,De,"]","\\rbrack",!0);G(H,ie,ro,"(","\\lparen",!0);G(H,ie,rs,")","\\rparen",!0);G(ct,ie,De,"<","\\textless",!0);G(ct,ie,De,">","\\textgreater",!0);G(H,ie,ro,"\u230A","\\lfloor",!0);G(H,ie,rs,"\u230B","\\rfloor",!0);G(H,ie,ro,"\u2308","\\lceil",!0);G(H,ie,rs,"\u2309","\\rceil",!0);G(H,ie,De,"\\","\\backslash");G(H,ie,De,"\u2223","|");G(H,ie,De,"\u2223","\\vert");G(ct,ie,De,"|","\\textbar",!0);G(H,ie,De,"\u2225","\\|");G(H,ie,De,"\u2225","\\Vert");G(ct,ie,De,"\u2225","\\textbardbl");G(ct,ie,De,"~","\\textasciitilde");G(ct,ie,De,"\\","\\textbackslash");G(ct,ie,De,"^","\\textasciicircum");G(H,ie,Ee,"\u2191","\\uparrow",!0);G(H,ie,Ee,"\u21D1","\\Uparrow",!0);G(H,ie,Ee,"\u2193","\\downarrow",!0);G(H,ie,Ee,"\u21D3","\\Downarrow",!0);G(H,ie,Ee,"\u2195","\\updownarrow",!0);G(H,ie,Ee,"\u21D5","\\Updownarrow",!0);G(H,ie,ki,"\u2210","\\coprod");G(H,ie,ki,"\u22C1","\\bigvee");G(H,ie,ki,"\u22C0","\\bigwedge");G(H,ie,ki,"\u2A04","\\biguplus");G(H,ie,ki,"\u22C2","\\bigcap");G(H,ie,ki,"\u22C3","\\bigcup");G(H,ie,ki,"\u222B","\\int");G(H,ie,ki,"\u222B","\\intop");G(H,ie,ki,"\u222C","\\iint");G(H,ie,ki,"\u222D","\\iiint");G(H,ie,ki,"\u220F","\\prod");G(H,ie,ki,"\u2211","\\sum");G(H,ie,ki,"\u2A02","\\bigotimes");G(H,ie,ki,"\u2A01","\\bigoplus");G(H,ie,ki,"\u2A00","\\bigodot");G(H,ie,ki,"\u222E","\\oint");G(H,ie,ki,"\u222F","\\oiint");G(H,ie,ki,"\u2230","\\oiiint");G(H,ie,ki,"\u2A06","\\bigsqcup");G(H,ie,ki,"\u222B","\\smallint");G(ct,ie,S0,"\u2026","\\textellipsis");G(H,ie,S0,"\u2026","\\mathellipsis");G(ct,ie,S0,"\u2026","\\ldots",!0);G(H,ie,S0,"\u2026","\\ldots",!0);G(H,ie,S0,"\u22EF","\\@cdots",!0);G(H,ie,S0,"\u22F1","\\ddots",!0);G(H,ie,De,"\u22EE","\\varvdots");G(ct,ie,De,"\u22EE","\\varvdots");G(H,ie,Wn,"\u02CA","\\acute");G(H,ie,Wn,"\u02CB","\\grave");G(H,ie,Wn,"\xA8","\\ddot");G(H,ie,Wn,"~","\\tilde");G(H,ie,Wn,"\u02C9","\\bar");G(H,ie,Wn,"\u02D8","\\breve");G(H,ie,Wn,"\u02C7","\\check");G(H,ie,Wn,"^","\\hat");G(H,ie,Wn,"\u20D7","\\vec");G(H,ie,Wn,"\u02D9","\\dot");G(H,ie,Wn,"\u02DA","\\mathring");G(H,ie,rr,"\uE131","\\@imath");G(H,ie,rr,"\uE237","\\@jmath");G(H,ie,De,"\u0131","\u0131");G(H,ie,De,"\u0237","\u0237");G(ct,ie,De,"\u0131","\\i",!0);G(ct,ie,De,"\u0237","\\j",!0);G(ct,ie,De,"\xDF","\\ss",!0);G(ct,ie,De,"\xE6","\\ae",!0);G(ct,ie,De,"\u0153","\\oe",!0);G(ct,ie,De,"\xF8","\\o",!0);G(ct,ie,De,"\xC6","\\AE",!0);G(ct,ie,De,"\u0152","\\OE",!0);G(ct,ie,De,"\xD8","\\O",!0);G(ct,ie,Wn,"\u02CA","\\'");G(ct,ie,Wn,"\u02CB","\\`");G(ct,ie,Wn,"\u02C6","\\^");G(ct,ie,Wn,"\u02DC","\\~");G(ct,ie,Wn,"\u02C9","\\=");G(ct,ie,Wn,"\u02D8","\\u");G(ct,ie,Wn,"\u02D9","\\.");G(ct,ie,Wn,"\xB8","\\c");G(ct,ie,Wn,"\u02DA","\\r");G(ct,ie,Wn,"\u02C7","\\v");G(ct,ie,Wn,"\xA8",'\\"');G(ct,ie,Wn,"\u02DD","\\H");G(ct,ie,Wn,"\u25EF","\\textcircled");rU={"--":!0,"---":!0,"``":!0,"''":!0};G(ct,ie,De,"\u2013","--",!0);G(ct,ie,De,"\u2013","\\textendash");G(ct,ie,De,"\u2014","---",!0);G(ct,ie,De,"\u2014","\\textemdash");G(ct,ie,De,"\u2018","`",!0);G(ct,ie,De,"\u2018","\\textquoteleft");G(ct,ie,De,"\u2019","'",!0);G(ct,ie,De,"\u2019","\\textquoteright");G(ct,ie,De,"\u201C","``",!0);G(ct,ie,De,"\u201C","\\textquotedblleft");G(ct,ie,De,"\u201D","''",!0);G(ct,ie,De,"\u201D","\\textquotedblright");G(H,ie,De,"\xB0","\\degree",!0);G(ct,ie,De,"\xB0","\\degree");G(ct,ie,De,"\xB0","\\textdegree",!0);G(H,ie,De,"\xA3","\\pounds");G(H,ie,De,"\xA3","\\mathsterling",!0);G(ct,ie,De,"\xA3","\\pounds");G(ct,ie,De,"\xA3","\\textsterling",!0);G(H,we,De,"\u2720","\\maltese");G(ct,we,De,"\u2720","\\maltese");kV='0123456789/@."';for(c3=0;c30)return fl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=ITe(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=aU[u].fontName,p=[u]):(d=p3(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(D3(a,d,i).metrics)return fl(a,d,i,r,s.concat(p));if(rU.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(bh(t.classes)!==bh(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize)return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in t.style)if(t.style.hasOwnProperty(n)&&t.style[n]!==e.style[n])return!1;for(var i in e.style)if(e.style.hasOwnProperty(i)&&t.style[i]!==e.style[i])return!1;return!0},"canCombine"),BTe=o(t=>{for(var e=0;er&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},"sizeElementFromChildren"),Ss=o(function(e,r,n,i){var a=new fd(e,r,n,i);return cA(a),a},"makeSpan"),nU=o((t,e,r,n)=>new fd(t,e,r,n),"makeSvgSpan"),FTe=o(function(e,r,n){var i=Ss([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=St(i.height),i.maxFontSize=1,i},"makeLineSpan"),$Te=o(function(e,r,n,i){var a=new Qy(e,r,n,i);return cA(a),a},"makeAnchor"),iU=o(function(e){var r=new hd(e);return cA(r),r},"makeFragment"),zTe=o(function(e,r){return e instanceof hd?Ss([],[e],r):e},"wrapFragment"),GTe=o(function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=Ss(["mspace"],[],e),n=ii(t,e);return r.style.marginRight=St(n),r},"makeGlue"),p3=o(function(e,r,n){var i="";switch(e){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=e}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),aU={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},sU={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},HTe=o(function(e,r){var[n,i,a]=sU[e],s=new Zl(n),l=new dl([s],{width:St(i),height:St(a),style:"width:"+St(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=nU(["overlay"],[l],r);return u.height=a,u.style.height=St(a),u.style.width=St(i),u},"staticSvg"),$e={fontMap:aU,makeSymbol:fl,mathsym:MTe,makeSpan:Ss,makeSvgSpan:nU,makeLineSpan:FTe,makeAnchor:$Te,makeFragment:iU,wrapFragment:zTe,makeVList:VTe,makeOrd:OTe,makeGlue:UTe,staticSvg:HTe,svgData:sU,tryCombineChars:BTe},ni={number:3,unit:"mu"},ud={number:4,unit:"mu"},uu={number:5,unit:"mu"},qTe={mord:{mop:ni,mbin:ud,mrel:uu,minner:ni},mop:{mord:ni,mop:ni,mrel:uu,minner:ni},mbin:{mord:ud,mop:ud,mopen:ud,minner:ud},mrel:{mord:uu,mop:uu,mopen:uu,minner:uu},mopen:{},mclose:{mop:ni,mbin:ud,mrel:uu,minner:ni},mpunct:{mord:ni,mop:ni,mrel:uu,mopen:ni,mclose:ni,mpunct:ni,minner:ni},minner:{mord:ni,mop:ni,mbin:ud,mrel:uu,mopen:ni,mpunct:ni,minner:ni}},WTe={mord:{mop:ni},mop:{mord:ni,mop:ni},mbin:{},mrel:{},mopen:{},mclose:{mop:ni},mpunct:{},minner:{mop:ni}},oU={},k3={},E3={};o(Mt,"defineFunction");o(dd,"defineFunctionBuilders");S3=o(function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},"normalizeArgument"),gi=o(function(e){return e.type==="ordgroup"?e.body:[e]},"ordargument"),du=$e.makeSpan,YTe=["leftmost","mbin","mopen","mrel","mop","mpunct"],XTe=["rightmost","mrel","mclose","mpunct"],jTe={display:nr.DISPLAY,text:nr.TEXT,script:nr.SCRIPT,scriptscript:nr.SCRIPTSCRIPT},KTe={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Ii=o(function(e,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],s=0;s{var v=y.classes[0],x=g.classes[0];v==="mbin"&&er.contains(XTe,x)?y.classes[0]="mord":x==="mbin"&&er.contains(YTe,v)&&(g.classes[0]="mord")},{node:d},p,m),CV(a,(g,y)=>{var v=J7(y),x=J7(g),b=v&&x?g.hasClass("mtight")?WTe[v][x]:qTe[v][x]:null;if(b)return $e.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),CV=o(function t(e,r,n,i,a){i&&e.push(i);for(var s=0;sp=>{e.splice(d+1,0,p),s++})(s)}i&&e.pop()},"traverseNonSpaceNodes"),lU=o(function(e){return e instanceof hd||e instanceof Qy||e instanceof fd&&e.hasClass("enclosing")?e:null},"checkPartialGroup"),QTe=o(function t(e,r){var n=lU(e);if(n){var i=n.children;if(i.length){if(r==="right")return t(i[i.length-1],"right");if(r==="left")return t(i[0],"left")}}return e},"getOutermostNode"),J7=o(function(e,r){return e?(r&&(e=QTe(e,r)),KTe[e.classes[0]]||null):null},"getTypeOfDomTree"),Jy=o(function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return du(r.concat(n))},"makeNullDelimiter"),Hr=o(function(e,r,n){if(!e)return du();if(k3[e.type]){var i=k3[e.type](e,r);if(n&&r.size!==n.size){i=du(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new gt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(m3,"buildHTMLUnbreakable");o(eA,"buildHTML");o(cU,"newDocumentFragment");es=class{static{o(this,"MathNode")}constructor(e,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(e,r){this.attributes[e]=r}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&e.setAttribute(r,this.attributes[r]);this.classes.length>0&&(e.className=bh(this.classes));for(var n=0;n0&&(e+=' class ="'+er.escape(bh(this.classes))+'"'),e+=">";for(var n=0;n",e}toText(){return this.children.map(e=>e.toText()).join("")}},_o=class{static{o(this,"TextNode")}constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return er.escape(this.toText())}toText(){return this.text}},tA=class{static{o(this,"SpaceNode")}constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character="\u200A":e>=.1666&&e<=.1667?this.character="\u2009":e>=.2222&&e<=.2223?this.character="\u2005":e>=.2777&&e<=.2778?this.character="\u2005\u200A":e>=-.05556&&e<=-.05555?this.character="\u200A\u2063":e>=-.1667&&e<=-.1666?this.character="\u2009\u2063":e>=-.2223&&e<=-.2222?this.character="\u205F\u2063":e>=-.2778&&e<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",St(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},mt={MathNode:es,TextNode:_o,SpaceNode:tA,newDocumentFragment:cU},Lo=o(function(e,r,n){return Nn[r][e]&&Nn[r][e].replace&&e.charCodeAt(0)!==55349&&!(rU.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=Nn[r][e].replace),new mt.TextNode(e)},"makeText"),uA=o(function(e){return e.length===1?e[0]:new mt.MathNode("mrow",e)},"makeRow"),hA=o(function(e,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=e.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return e.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathsfit")return"sans-serif-italic";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=e.text;if(er.contains(["\\imath","\\jmath"],a))return null;Nn[i][a]&&Nn[i][a].replace&&(a=Nn[i][a].replace);var s=$e.fontMap[n].fontName;return lA(a,s,i)?$e.fontMap[n].variant:null},"getVariant");o($7,"isNumberPunctuation");As=o(function(e,r,n){if(e.length===1){var i=wn(e[0],r);return n&&i instanceof es&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,l=0;l=1&&(s.type==="mn"||$7(s))){var h=u.children[0];h instanceof es&&h.type==="mn"&&(h.children=[...s.children,...h.children],a.pop())}else if(s.type==="mi"&&s.children.length===1){var f=s.children[0];if(f instanceof _o&&f.text==="\u0338"&&(u.type==="mo"||u.type==="mi"||u.type==="mn")){var d=u.children[0];d instanceof _o&&d.text.length>0&&(d.text=d.text.slice(0,1)+"\u0338"+d.text.slice(1),a.pop())}}}a.push(u),s=u}return a},"buildExpression"),Th=o(function(e,r,n){return uA(As(e,r,n))},"buildExpressionRow"),wn=o(function(e,r){if(!e)return new mt.MathNode("mrow");if(E3[e.type]){var n=E3[e.type](e,r);return n}else throw new gt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(AV,"buildMathML");uU=o(function(e){return new T3({style:e.displayMode?nr.DISPLAY:nr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},"optionsFromSettings"),hU=o(function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=$e.makeSpan(n,[e])}return e},"displayWrap"),ZTe=o(function(e,r,n){var i=uU(n),a;if(n.output==="mathml")return AV(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=eA(e,i);a=$e.makeSpan(["katex"],[s])}else{var l=AV(e,r,i,n.displayMode,!1),u=eA(e,i);a=$e.makeSpan(["katex"],[l,u])}return hU(a,n)},"buildTree"),JTe=o(function(e,r,n){var i=uU(n),a=eA(e,i),s=$e.makeSpan(["katex"],[a]);return hU(s,n)},"buildHTMLTree"),ewe={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},twe=o(function(e){var r=new mt.MathNode("mo",[new mt.TextNode(ewe[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),rwe={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},nwe=o(function(e){return e.type==="ordgroup"?e.body.length:1},"groupLength"),iwe=o(function(e,r){function n(){var l=4e5,u=e.label.slice(1);if(er.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=e,f=nwe(h.base),d,p,m;if(f>5)u==="widehat"||u==="widecheck"?(d=420,l=2364,m=.42,p=u+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var g=[1,1,2,2,3,3][f];u==="widehat"||u==="widecheck"?(l=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],m=[0,.24,.3,.3,.36,.42][g],p=u+g):(l=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],m=[0,.26,.286,.3,.306,.34][g],p="tilde"+g)}var y=new Zl(p),v=new dl([y],{width:"100%",height:St(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:$e.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=rwe[u],[T,S,w]=b,k=w/1e3,C=T.length,A,L;if(C===1){var I=b[3];A=["hide-tail"],L=[I]}else if(C===2)A=["halfarrow-left","halfarrow-right"],L=["xMinYMin","xMaxYMin"];else if(C===3)A=["brace-left","brace-center","brace-right"],L=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support - `+C+" children.");for(var R=0;R0&&(i.style.minWidth=St(a)),i},"svgSpan"),awe=o(function(e,r,n,i,a){var s,l=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=$e.makeSpan(["stretchy",r],[],a),r==="fbox"){var u=a.color&&a.getColor();u&&(s.style.borderColor=u)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new Zy({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new Zy({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new dl(h,{width:"100%",height:St(l)});s=$e.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=St(l),s},"encloseSpan"),pu={encloseSpan:awe,mathMLnode:twe,svgSpan:iwe};o(Tr,"assertNodeType");o(fA,"assertSymbolNodeType");o(L3,"checkSymbolNodeType");dA=o((t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=Tr(t.base,"accent"),r=n.base,t.base=r,i=DTe(Hr(t,e)),t.base=n):(n=Tr(t,"accent"),r=n.base);var a=Hr(r,e.havingCrampedStyle()),s=n.isShifty&&er.isCharacterBox(r),l=0;if(s){var u=er.getBaseElem(r),h=Hr(u,e.havingCrampedStyle());l=wV(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),p;if(n.isStretchy)p=pu.svgSpan(n,e),p=$e.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+St(2*l)+")",marginLeft:St(2*l)}:void 0}]},e);else{var m,g;n.label==="\\vec"?(m=$e.staticSvg("vec",e),g=$e.svgData.vec[1]):(m=$e.makeOrd({mode:n.mode,text:n.label},e,"textord"),m=wV(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=$e.makeSpan(["accent-body"],[m]);var y=n.label==="\\textcircled";y&&(p.classes.push("accent-full"),d=a.height);var v=l;y||(v-=g/2),p.style.left=St(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=$e.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},e)}var x=$e.makeSpan(["mord","accent"],[p],e);return i?(i.children[0]=x,i.height=Math.max(x.height,i.height),i.classes[0]="mord",i):x},"htmlBuilder$a"),fU=o((t,e)=>{var r=t.isStretchy?pu.mathMLnode(t.label):new mt.MathNode("mo",[Lo(t.label,t.mode)]),n=new mt.MathNode("mover",[wn(t.base,e),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),swe=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));Mt({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:o((t,e)=>{var r=S3(e[0]),n=!swe.test(t.funcName),i=!n||t.funcName==="\\widehat"||t.funcName==="\\widetilde"||t.funcName==="\\widecheck";return{type:"accent",mode:t.parser.mode,label:t.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:dA,mathmlBuilder:fU});Mt({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((t,e)=>{var r=e[0],n=t.parser.mode;return n==="math"&&(t.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+t.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:t.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:dA,mathmlBuilder:fU});Mt({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((t,e)=>{var r=Hr(t.base,e),n=pu.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=$e.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return $e.makeSpan(["mord","accentunder"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=pu.mathMLnode(t.label),n=new mt.MathNode("munder",[wn(t.base,e),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});g3=o(t=>{var e=new mt.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},"paddedNode");Mt({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n,funcName:i}=t;return{type:"xArrow",mode:n.mode,label:i,body:e[0],below:r[0]}},htmlBuilder(t,e){var r=e.style,n=e.havingStyle(r.sup()),i=$e.wrapFragment(Hr(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;t.below&&(n=e.havingStyle(r.sub()),s=$e.wrapFragment(Hr(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var l=pu.svgSpan(t,e),u=-e.fontMetrics().axisHeight+.5*l.height,h=-e.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-e.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=$e.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},e)}else f=$e.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},e);return f.children[0].children[0].children[1].classes.push("svg-align"),$e.makeSpan(["mrel","x-arrow"],[f],e)},mathmlBuilder(t,e){var r=pu.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=g3(wn(t.body,e));if(t.below){var a=g3(wn(t.below,e));n=new mt.MathNode("munderover",[r,a,i])}else n=new mt.MathNode("mover",[r,i])}else if(t.below){var s=g3(wn(t.below,e));n=new mt.MathNode("munder",[r,s])}else n=g3(),n=new mt.MathNode("mover",[r,n]);return n}});owe=$e.makeSpan;o(dU,"htmlBuilder$9");o(pU,"mathmlBuilder$8");Mt({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:gi(i),isCharacterBox:er.isCharacterBox(i)}},htmlBuilder:dU,mathmlBuilder:pU});R3=o(t=>{var e=t.type==="ordgroup"&&t.body.length?t.body[0]:t;return e.type==="atom"&&(e.family==="bin"||e.family==="rel")?"m"+e.family:"mord"},"binrelClass");Mt({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:R3(e[0]),body:gi(e[1]),isCharacterBox:er.isCharacterBox(e[1])}}});Mt({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],s;n!=="\\stackrel"?s=R3(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:gi(i)},u={type:"supsub",mode:a.mode,base:l,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[u],isCharacterBox:er.isCharacterBox(u)}},htmlBuilder:dU,mathmlBuilder:pU});Mt({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:R3(e[0]),body:gi(e[0])}},htmlBuilder(t,e){var r=Ii(t.body,e,!0),n=$e.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=As(t.body,e),n=new mt.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});lwe={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},_V=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),DV=o(t=>t.type==="textord"&&t.text==="@","isStartOfArrow"),cwe=o((t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e,"isLabelEnd");o(uwe,"cdArrow");o(hwe,"parseCD");Mt({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:e[0]}},htmlBuilder(t,e){var r=e.havingStyle(e.style.sup()),n=$e.wrapFragment(Hr(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=St(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new mt.MathNode("mrow",[wn(t.label,e)]);return r=new mt.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new mt.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Mt({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(t,e){var{parser:r}=t;return{type:"cdlabelparent",mode:r.mode,fragment:e[0]}},htmlBuilder(t,e){var r=$e.wrapFragment(Hr(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new mt.MathNode("mrow",[wn(t.fragment,e)])}});Mt({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=Tr(e[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new gt("\\@char with invalid code point "+a);return u<=65535?h=String.fromCharCode(u):(u-=65536,h=String.fromCharCode((u>>10)+55296,(u&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});mU=o((t,e)=>{var r=Ii(t.body,e.withColor(t.color),!1);return $e.makeFragment(r)},"htmlBuilder$8"),gU=o((t,e)=>{var r=As(t.body,e.withColor(t.color)),n=new mt.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n},"mathmlBuilder$7");Mt({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=Tr(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:gi(i)}},htmlBuilder:mU,mathmlBuilder:gU});Mt({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=Tr(e[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:mU,mathmlBuilder:gU});Mt({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(t,e,r){var{parser:n}=t,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&Tr(i,"size").value}},htmlBuilder(t,e){var r=$e.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=St(ii(t.size,e)))),r},mathmlBuilder(t,e){var r=new mt.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",St(ii(t.size,e)))),r}});rA={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},yU=o(t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new gt("Expected a control sequence",t);return e},"checkControlSequence"),fwe=o(t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},"getRHS"),vU=o((t,e,r,n)=>{var i=t.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!t.gullet.isExpandable(r.text)}),t.gullet.macros.set(e,i,n)},"letCommand");Mt({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e,funcName:r}=t;e.consumeSpaces();var n=e.fetch();if(rA[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=rA[n.text]),Tr(e.parseFunction(),"internal");throw new gt("Invalid token after macro prefix",n)}});Mt({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new gt("Expected a control sequence",n);for(var a=0,s,l=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){s=e.gullet.future(),l[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new gt('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new gt('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new gt("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=e.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=e.gullet.expandTokens(u),u.reverse()),e.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===rA[r]),{type:"internal",mode:e.mode}}});Mt({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=yU(e.gullet.popToken());e.gullet.consumeSpaces();var i=fwe(e);return vU(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});Mt({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=yU(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return vU(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});Wy=o(function(e,r,n){var i=Nn.math[e]&&Nn.math[e].replace,a=lA(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},"getMetrics"),pA=o(function(e,r,n,i){var a=n.havingBaseStyle(r),s=$e.makeSpan(i.concat(a.sizingClasses(n)),[e],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),xU=o(function(e,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=St(a),e.height-=a,e.depth+=a},"centerSpan"),dwe=o(function(e,r,n,i,a,s){var l=$e.makeSymbol(e,"Main-Regular",a,i),u=pA(l,r,i,s);return n&&xU(u,i,r),u},"makeSmallDelim"),pwe=o(function(e,r,n,i){return $e.makeSymbol(e,"Size"+r+"-Regular",n,i)},"mathrmSize"),bU=o(function(e,r,n,i,a,s){var l=pwe(e,r,a,i),u=pA($e.makeSpan(["delimsizing","size"+r],[l],i),nr.TEXT,i,s);return n&&xU(u,i,nr.TEXT),u},"makeLargeDelim"),z7=o(function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=$e.makeSpan(["delimsizinginner",i],[$e.makeSpan([],[$e.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),G7=o(function(e,r,n){var i=Ql["Size4-Regular"][e.charCodeAt(0)]?Ql["Size4-Regular"][e.charCodeAt(0)][4]:Ql["Size1-Regular"][e.charCodeAt(0)][4],a=new Zl("inner",wTe(e,Math.round(1e3*r))),s=new dl([a],{width:St(i),height:St(r),style:"width:"+St(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=$e.makeSvgSpan([],[s],n);return l.height=r,l.style.height=St(r),l.style.width=St(i),{type:"elem",elem:l}},"makeInner"),nA=.008,y3={type:"kern",size:-1*nA},mwe=["|","\\lvert","\\rvert","\\vert"],gwe=["\\|","\\lVert","\\rVert","\\Vert"],TU=o(function(e,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=e,u=null;var m="Size1-Regular";e==="\\uparrow"?h=f="\u23D0":e==="\\Uparrow"?h=f="\u2016":e==="\\downarrow"?l=h="\u23D0":e==="\\Downarrow"?l=h="\u2016":e==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):e==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):er.contains(mwe,e)?(h="\u2223",d="vert",p=333):er.contains(gwe,e)?(h="\u2225",d="doublevert",p=556):e==="["||e==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):e==="]"||e==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):e==="\\lfloor"||e==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):e==="\\lceil"||e==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):e==="\\rfloor"||e==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):e==="\\rceil"||e==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):e==="("||e==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):e===")"||e==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):e==="\\{"||e==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lgroup"||e==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\rgroup"||e==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lmoustache"||e==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(e==="\\rmoustache"||e==="\u23B1")&&(l="\u23AB",f="\u23A9",h="\u23AA",m="Size4-Regular");var g=Wy(l,m,a),y=g.height+g.depth,v=Wy(h,m,a),x=v.height+v.depth,b=Wy(f,m,a),T=b.height+b.depth,S=0,w=1;if(u!==null){var k=Wy(u,m,a);S=k.height+k.depth,w=2}var C=y+T+S,A=Math.max(0,Math.ceil((r-C)/(w*x))),L=C+A*w*x,I=i.fontMetrics().axisHeight;n&&(I*=i.sizeMultiplier);var R=L/2-I,E=[];if(d.length>0){var _=L-y-T,D=Math.round(L*1e3),O=kTe(d,Math.round(_*1e3)),N=new Zl(d,O),P=(p/1e3).toFixed(3)+"em",B=(D/1e3).toFixed(3)+"em",F=new dl([N],{width:P,height:B,viewBox:"0 0 "+p+" "+D}),V=$e.makeSvgSpan([],[F],i);V.height=D/1e3,V.style.width=P,V.style.height=B,E.push({type:"elem",elem:V})}else{if(E.push(z7(f,m,a)),E.push(y3),u===null){var $=L-y-T+2*nA;E.push(G7(h,$,i))}else{var U=(L-y-T-S)/2+2*nA;E.push(G7(h,U,i)),E.push(y3),E.push(z7(u,m,a)),E.push(y3),E.push(G7(h,U,i))}E.push(y3),E.push(z7(l,m,a))}var j=i.havingBaseStyle(nr.TEXT),ee=$e.makeVList({positionType:"bottom",positionData:R,children:E},j);return pA($e.makeSpan(["delimsizing","mult"],[ee],j),nr.TEXT,i,s)},"makeStackedDelim"),V7=80,U7=.08,H7=o(function(e,r,n,i,a){var s=TTe(e,i,n),l=new Zl(e,s),u=new dl([l],{width:"400em",height:St(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return $e.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),ywe=o(function(e,r){var n=r.havingBaseSizing(),i=SU("\\surd",e*n.sizeMultiplier,EU,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),l,u=0,h=0,f=0,d;return i.type==="small"?(f=1e3+1e3*s+V7,e<1?a=1:e<1.4&&(a=.7),u=(1+s+U7)/a,h=(1+s)/a,l=H7("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+V7)*Xy[i.size],h=(Xy[i.size]+s)/a,u=(Xy[i.size]+s+U7)/a,l=H7("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=e+s+U7,h=e+s,f=Math.floor(1e3*e+s)+V7,l=H7("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=St(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),wU=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],vwe=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],kU=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],Xy=[0,1.2,1.8,2.4,3],xwe=o(function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),er.contains(wU,e)||er.contains(kU,e))return bU(e,r,!1,n,i,a);if(er.contains(vwe,e))return TU(e,Xy[r],!1,n,i,a);throw new gt("Illegal delimiter: '"+e+"'")},"makeSizedDelim"),bwe=[{type:"small",style:nr.SCRIPTSCRIPT},{type:"small",style:nr.SCRIPT},{type:"small",style:nr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],Twe=[{type:"small",style:nr.SCRIPTSCRIPT},{type:"small",style:nr.SCRIPT},{type:"small",style:nr.TEXT},{type:"stack"}],EU=[{type:"small",style:nr.SCRIPTSCRIPT},{type:"small",style:nr.SCRIPT},{type:"small",style:nr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],wwe=o(function(e){if(e.type==="small")return"Main-Regular";if(e.type==="large")return"Size"+e.size+"-Regular";if(e.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},"delimTypeToFont"),SU=o(function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;sr)return n[s]}return n[n.length-1]},"traverseSequence"),CU=o(function(e,r,n,i,a,s){e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle");var l;er.contains(kU,e)?l=bwe:er.contains(wU,e)?l=EU:l=Twe;var u=SU(e,r,l,i);return u.type==="small"?dwe(e,u.style,n,i,a,s):u.type==="large"?bU(e,u.size,n,i,a,s):TU(e,r,n,i,a,s)},"makeCustomSizedDelim"),kwe=o(function(e,r,n,i,a,s){var l=i.fontMetrics().axisHeight*i.sizeMultiplier,u=901,h=5/i.fontMetrics().ptPerEm,f=Math.max(r-l,n+l),d=Math.max(f/500*u,2*f-h);return CU(e,d,!0,i,a,s)},"makeLeftRightDelim"),fu={sqrtImage:ywe,sizedDelim:xwe,sizeToMaxHeight:Xy,customSizedDelim:CU,leftRightDelim:kwe},LV={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},Ewe=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];o(N3,"checkDelimiter");Mt({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:o((t,e)=>{var r=N3(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:LV[t.funcName].size,mclass:LV[t.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>t.delim==="."?$e.makeSpan([t.mclass]):fu.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),"htmlBuilder"),mathmlBuilder:o(t=>{var e=[];t.delim!=="."&&e.push(Lo(t.delim,t.mode));var r=new mt.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=St(fu.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(RV,"assertParsed");Mt({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=t.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new gt("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:N3(e[0],t).text,color:r}},"handler")});Mt({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=N3(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=Tr(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((t,e)=>{RV(t);for(var r=Ii(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{RV(t);var r=As(t.body,e);if(t.left!=="."){var n=new mt.MathNode("mo",[Lo(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new mt.MathNode("mo",[Lo(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return uA(r)},"mathmlBuilder")});Mt({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=N3(e[0],t);if(!t.parser.leftrightDepth)throw new gt("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>{var r;if(t.delim===".")r=Jy(e,[]);else{r=fu.sizedDelim(t.delim,1,e,t.mode,[]);var n={delim:t.delim,options:e};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?Lo("|","text"):Lo(t.delim,t.mode),n=new mt.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});mA=o((t,e)=>{var r=$e.wrapFragment(Hr(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,l=er.isCharacterBox(t.body);if(n==="sout")a=$e.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var u=ii({number:.6,unit:"pt"},e),h=ii({number:.35,unit:"ex"},e),f=e.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=St(d/2+u);var p=Math.floor(1e3*d*i),m=xTe(p),g=new dl([new Zl("phase",m)],{width:"400em",height:St(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=$e.makeSvgSpan(["hide-tail"],[g],e),a.style.height=St(d),s=r.depth+u+h}else{/cancel/.test(n)?l||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var y=0,v=0,x=0;/box/.test(n)?(x=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),y=e.fontMetrics().fboxsep+(n==="colorbox"?0:x),v=y):n==="angl"?(x=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),y=4*x,v=Math.max(0,.25-r.depth)):(y=l?.2:0,v=y),a=pu.encloseSpan(r,n,y,v,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=St(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=St(x),a.style.borderRightWidth=St(x)),s=r.depth+v,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var b;if(t.backgroundColor)b=$e.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},e);else{var T=/cancel|phase/.test(n)?["svg-align"]:[];b=$e.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:T}]},e)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?$e.makeSpan(["mord","cancel-lap"],[b],e):$e.makeSpan(["mord"],[b],e)},"htmlBuilder$7"),gA=o((t,e)=>{var r=0,n=new mt.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[wn(t.body,e)]);switch(t.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),t.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(t.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n},"mathmlBuilder$6");Mt({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=Tr(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:mA,mathmlBuilder:gA});Mt({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=Tr(e[0],"color-token").color,s=Tr(e[1],"color-token").color,l=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:mA,mathmlBuilder:gA});Mt({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\fbox",body:e[0]}}});Mt({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:mA,mathmlBuilder:gA});Mt({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\angl",body:e[0]}}});AU={};o(Jl,"defineEnvironment");_U={};o(ce,"defineMacro");o(NV,"getHLines");M3=o(t=>{var e=t.parser.settings;if(!e.displayMode)throw new gt("{"+t.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(yA,"getAutoTag");o(wh,"parseArray");o(vA,"dCellStyle");ec=o(function(e,r){var n,i,a=e.body.length,s=e.hLinesBeforeRow,l=0,u=new Array(a),h=[],f=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),d=1/r.fontMetrics().ptPerEm,p=5*d;if(e.colSeparationType&&e.colSeparationType==="small"){var m=r.havingStyle(nr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=e.colSeparationType==="CD"?ii({number:3,unit:"ex"},r):12*d,y=3*d,v=e.arraystretch*g,x=.7*v,b=.3*v,T=0;function S(W){for(var Ve=0;Ve0&&(T+=.25),h.push({pos:T,isDashed:W[Ve]})}for(o(S,"setHLinePos"),S(s[0]),n=0;n0&&(R+=b,CW))for(n=0;n=l)){var Q=void 0;(i>0||e.hskipBeforeAndAfter)&&(Q=er.deflt(U.pregap,p),Q!==0&&(O=$e.makeSpan(["arraycolsep"],[]),O.style.width=St(Q),D.push(O)));var ue=[];for(n=0;n0){for(var K=$e.makeLineSpan("hline",r,f),ae=$e.makeLineSpan("hdashline",r,f),Z=[{type:"elem",elem:u,shift:0}];h.length>0;){var de=h.pop(),ne=de.pos-E;de.isDashed?Z.push({type:"elem",elem:ae,shift:ne}):Z.push({type:"elem",elem:K,shift:ne})}u=$e.makeVList({positionType:"individualShift",children:Z},r)}if(P.length===0)return $e.makeSpan(["mord"],[u],r);var Te=$e.makeVList({positionType:"individualShift",children:P},r);return Te=$e.makeSpan(["tag"],[Te],r),$e.makeFragment([u,Te])},"htmlBuilder"),Swe={c:"center ",l:"left ",r:"right "},tc=o(function(e,r){for(var n=[],i=new mt.MathNode("mtd",[],["mtr-glue"]),a=new mt.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var g=e.cols,y="",v=!1,x=0,b=g.length;g[0].type==="separator"&&(p+="top ",x=1),g[g.length-1].type==="separator"&&(p+="bottom ",b-=1);for(var T=x;T0?"left ":"",p+=A[A.length-1].length>0?"right ":"";for(var L=1;L-1?"alignat":"align",a=e.envName==="split",s=wh(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:yA(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var f="",d=0;d0&&m&&(v=1),n[g]={type:"align",align:y,pregap:v,postgap:0}}return s.colSeparationType=m?"align":"alignat",s},"alignedHandler");Jl({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=L3(e[0]),n=r?[e[0]]:Tr(e[0],"ordgroup").body,i=n.map(function(s){var l=fA(s),u=l.text;if("lcr".indexOf(u)!==-1)return{type:"align",align:u};if(u==="|")return{type:"separator",separator:"|"};if(u===":")return{type:"separator",separator:":"};throw new gt("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return wh(t.parser,a,vA(t.envName))},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(t){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[t.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(t.envName.charAt(t.envName.length-1)==="*"){var i=t.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new gt("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=wh(t.parser,n,vA(t.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=wh(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=L3(e[0]),n=r?[e[0]]:Tr(e[0],"ordgroup").body,i=n.map(function(s){var l=fA(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new gt("Unknown column alignment: "+u,s)});if(i.length>1)throw new gt("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=wh(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new gt("{subarray} can contain only one column");return a},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(t){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=wh(t.parser,e,vA(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.indexOf("r")>-1?".":"\\{",right:t.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:DU,htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){er.contains(["gather","gather*"],t.envName)&&M3(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:yA(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return wh(t.parser,e,"display")},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:DU,htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){M3(t);var e={autoTag:yA(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return wh(t.parser,e,"display")},htmlBuilder:ec,mathmlBuilder:tc});Jl({type:"array",names:["CD"],props:{numArgs:0},handler(t){return M3(t),hwe(t.parser)},htmlBuilder:ec,mathmlBuilder:tc});ce("\\nonumber","\\gdef\\@eqnsw{0}");ce("\\notag","\\nonumber");Mt({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new gt(t.funcName+" valid only within array environment")}});MV=AU;Mt({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];if(i.type!=="ordgroup")throw new gt("Invalid environment name",i);for(var a="",s=0;s{var r=t.font,n=e.withFont(r);return Hr(t.body,n)},"htmlBuilder$5"),RU=o((t,e)=>{var r=t.font,n=e.withFont(r);return wn(t.body,n)},"mathmlBuilder$4"),IV={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Mt({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=S3(e[0]),a=n;return a in IV&&(a=IV[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:LU,mathmlBuilder:RU});Mt({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r}=t,n=e[0],i=er.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:R3(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Mt({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n,breakOnTokenText:i}=t,{mode:a}=r,s=r.parseExpression(!0,i),l="math"+n.slice(1);return{type:"font",mode:a,font:l,body:{type:"ordgroup",mode:r.mode,body:s}}},"handler"),htmlBuilder:LU,mathmlBuilder:RU});NU=o((t,e)=>{var r=e;return t==="display"?r=r.id>=nr.SCRIPT.id?r.text():nr.DISPLAY:t==="text"&&r.size===nr.DISPLAY.size?r=nr.TEXT:t==="script"?r=nr.SCRIPT:t==="scriptscript"&&(r=nr.SCRIPTSCRIPT),r},"adjustStyle"),xA=o((t,e)=>{var r=NU(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=Hr(t.numer,a,e);if(t.continued){var l=8.5/e.fontMetrics().ptPerEm,u=3.5/e.fontMetrics().ptPerEm;s.height=s.height0?g=3*p:g=7*p,y=e.fontMetrics().denom1):(d>0?(m=e.fontMetrics().num2,g=p):(m=e.fontMetrics().num3,g=3*p),y=e.fontMetrics().denom2);var v;if(f){var b=e.fontMetrics().axisHeight;m-s.depth-(b+.5*d){var r=new mt.MathNode("mfrac",[wn(t.numer,e),wn(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=ii(t.barSize,e);r.setAttribute("linethickness",St(n))}var i=NU(t.size,e.style);if(i.size!==e.style.size){r=new mt.MathNode("mstyle",[r]);var a=i.size===nr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(t.leftDelim!=null||t.rightDelim!=null){var s=[];if(t.leftDelim!=null){var l=new mt.MathNode("mo",[new mt.TextNode(t.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),t.rightDelim!=null){var u=new mt.MathNode("mo",[new mt.TextNode(t.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return uA(s)}return r},"mathmlBuilder$3");Mt({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1],s,l=null,u=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",u=")";break;case"\\\\bracefrac":s=!1,l="\\{",u="\\}";break;case"\\\\brackfrac":s=!1,l="[",u="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:l,rightDelim:u,size:h,barSize:null}},"handler"),htmlBuilder:xA,mathmlBuilder:bA});Mt({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Mt({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(t){var{parser:e,funcName:r,token:n}=t,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:n}}});OV=["display","text","script","scriptscript"],PV=o(function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r},"delimFromValue");Mt({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(t,e){var{parser:r}=t,n=e[4],i=e[5],a=S3(e[0]),s=a.type==="atom"&&a.family==="open"?PV(a.text):null,l=S3(e[1]),u=l.type==="atom"&&l.family==="close"?PV(l.text):null,h=Tr(e[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=e[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=Tr(m.body[0],"textord");p=OV[Number(g.text)]}}else m=Tr(m,"textord"),p=OV[Number(m.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:f,barSize:d,leftDelim:s,rightDelim:u,size:p}},htmlBuilder:xA,mathmlBuilder:bA});Mt({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(t,e){var{parser:r,funcName:n,token:i}=t;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:Tr(e[0],"size").value,token:i}}});Mt({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=iTe(Tr(e[1],"infix").size),s=e[2],l=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:l,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},"handler"),htmlBuilder:xA,mathmlBuilder:bA});MU=o((t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?Hr(t.sup,e.havingStyle(r.sup()),e):Hr(t.sub,e.havingStyle(r.sub()),e),i=Tr(t.base,"horizBrace")):i=Tr(t,"horizBrace");var a=Hr(i.base,e.havingBaseStyle(nr.DISPLAY)),s=pu.svgSpan(i,e),l;if(i.isOver?(l=$e.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},e),l.children[0].children[0].children[1].classes.push("svg-align")):(l=$e.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},e),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=$e.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e);i.isOver?l=$e.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},e):l=$e.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},e)}return $e.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e)},"htmlBuilder$3"),Cwe=o((t,e)=>{var r=pu.mathMLnode(t.label);return new mt.MathNode(t.isOver?"mover":"munder",[wn(t.base,e),r])},"mathmlBuilder$2");Mt({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:e[0]}},htmlBuilder:MU,mathmlBuilder:Cwe});Mt({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[1],i=Tr(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:gi(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((t,e)=>{var r=Ii(t.body,e,!1);return $e.makeAnchor(t.href,[],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Th(t.body,e);return r instanceof es||(r=new es("mrow",[r])),r.setAttribute("href",t.href),r},"mathmlBuilder")});Mt({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=Tr(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a{var{parser:r,funcName:n,token:i}=t,a=Tr(e[0],"raw").string,s=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,u={};switch(n){case"\\htmlClass":u.class=a,l={command:"\\htmlClass",class:a};break;case"\\htmlId":u.id=a,l={command:"\\htmlId",id:a};break;case"\\htmlStyle":u.style=a,l={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),f=0;f{var r=Ii(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=$e.makeSpan(n,r,e);for(var a in t.attributes)a!=="class"&&t.attributes.hasOwnProperty(a)&&i.setAttribute(a,t.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((t,e)=>Th(t.body,e),"mathmlBuilder")});Mt({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:gi(e[0]),mathml:gi(e[1])}},"handler"),htmlBuilder:o((t,e)=>{var r=Ii(t.html,e,!1);return $e.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>Th(t.mathml,e),"mathmlBuilder")});q7=o(function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!r)throw new gt("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!ZV(n))throw new gt("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Mt({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((t,e,r)=>{var{parser:n}=t,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=Tr(r[0],"raw").string,h=u.split(","),f=0;f{var r=ii(t.height,e),n=0;t.totalheight.number>0&&(n=ii(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=ii(t.width,e));var a={height:St(r+n)};i>0&&(a.width=St(i)),n>0&&(a.verticalAlign=St(-n));var s=new Q7(t.src,t.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new mt.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=ii(t.height,e),i=0;if(t.totalheight.number>0&&(i=ii(t.totalheight,e)-n,r.setAttribute("valign",St(-i))),r.setAttribute("height",St(n+i)),t.width.number>0){var a=ii(t.width,e);r.setAttribute("width",St(a))}return r.setAttribute("src",t.src),r},"mathmlBuilder")});Mt({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=Tr(e[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):s&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(t,e){return $e.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=ii(t.dimension,e);return new mt.SpaceNode(r)}});Mt({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((t,e)=>{var r;t.alignment==="clap"?(r=$e.makeSpan([],[Hr(t.body,e)]),r=$e.makeSpan(["inner"],[r],e)):r=$e.makeSpan(["inner"],[Hr(t.body,e)]);var n=$e.makeSpan(["fix"],[]),i=$e.makeSpan([t.alignment],[r,n],e),a=$e.makeSpan(["strut"]);return a.style.height=St(i.height+i.depth),i.depth&&(a.style.verticalAlign=St(-i.depth)),i.children.unshift(a),i=$e.makeSpan(["thinbox"],[i],e),$e.makeSpan(["mord","vbox"],[i],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new mt.MathNode("mpadded",[wn(t.body,e)]);if(t.alignment!=="rlap"){var n=t.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Mt({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){var{funcName:r,parser:n}=t,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}});Mt({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new gt("Mismatched "+t.funcName)}});BV=o((t,e)=>{switch(e.style.size){case nr.DISPLAY.size:return t.display;case nr.TEXT.size:return t.text;case nr.SCRIPT.size:return t.script;case nr.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}},"chooseMathStyle");Mt({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:gi(e[0]),text:gi(e[1]),script:gi(e[2]),scriptscript:gi(e[3])}},"handler"),htmlBuilder:o((t,e)=>{var r=BV(t,e),n=Ii(r,e,!1);return $e.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=BV(t,e);return Th(r,e)},"mathmlBuilder")});IU=o((t,e,r,n,i,a,s)=>{t=$e.makeSpan([],[t]);var l=r&&er.isCharacterBox(r),u,h;if(e){var f=Hr(e,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Hr(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+t.depth+s;p=$e.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:St(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:St(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=t.height-s;p=$e.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:St(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t}]},n)}else if(h){var y=t.depth+s;p=$e.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:St(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var v=[p];if(u&&a!==0&&!l){var x=$e.makeSpan(["mspace"],[],n);x.style.marginRight=St(a),v.unshift(x)}return $e.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),OU=["\\smallint"],C0=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=Tr(t.base,"op"),i=!0):a=Tr(t,"op");var s=e.style,l=!1;s.size===nr.DISPLAY.size&&a.symbol&&!er.contains(OU,a.name)&&(l=!0);var u;if(a.symbol){var h=l?"Size2-Regular":"Size1-Regular",f="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(f=a.name.slice(1),a.name=f==="oiint"?"\\iint":"\\iiint"),u=$e.makeSymbol(a.name,h,"math",e,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=$e.staticSvg(f+"Size"+(l?"2":"1"),e);u=$e.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},e),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Ii(a.body,e,!0);m.length===1&&m[0]instanceof Cs?(u=m[0],u.classes[0]="mop"):u=$e.makeSpan(["mop"],m,e)}else{for(var g=[],y=1;y{var r;if(t.symbol)r=new es("mo",[Lo(t.name,t.mode)]),er.contains(OU,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new es("mo",As(t.body,e));else{r=new es("mi",[new _o(t.name.slice(1))]);var n=new es("mo",[Lo("\u2061","text")]);t.parentIsSupSub?r=new es("mrow",[r,n]):r=cU([r,n])}return r},"mathmlBuilder$1"),Awe={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Mt({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=Awe[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:C0,mathmlBuilder:ev});Mt({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:gi(n)}},"handler"),htmlBuilder:C0,mathmlBuilder:ev});_we={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Mt({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:C0,mathmlBuilder:ev});Mt({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:C0,mathmlBuilder:ev});Mt({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=_we[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:C0,mathmlBuilder:ev});PU=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=Tr(t.base,"operatorname"),i=!0):a=Tr(t,"operatorname");var s;if(a.body.length>0){for(var l=a.body.map(d=>{var p=d.text;return typeof p=="string"?{type:"textord",mode:d.mode,text:p}:d}),u=Ii(l,e.withFont("mathrm"),!0),h=0;h{for(var r=As(t.body,e.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new mt.TextNode(l)]}var u=new mt.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new mt.MathNode("mo",[Lo("\u2061","text")]);return t.parentIsSupSub?new mt.MathNode("mrow",[u,h]):mt.newDocumentFragment([u,h])},"mathmlBuilder");Mt({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"operatorname",mode:r.mode,body:gi(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:PU,mathmlBuilder:Dwe});ce("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");dd({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?$e.makeFragment(Ii(t.body,e,!1)):$e.makeSpan(["mord"],Ii(t.body,e,!0),e)},mathmlBuilder(t,e){return Th(t.body,e,!0)}});Mt({type:"overline",names:["\\overline"],props:{numArgs:1},handler(t,e){var{parser:r}=t,n=e[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(t,e){var r=Hr(t.body,e.havingCrampedStyle()),n=$e.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=$e.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return $e.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new mt.MathNode("mo",[new mt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new mt.MathNode("mover",[wn(t.body,e),r]);return n.setAttribute("accent","true"),n}});Mt({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"phantom",mode:r.mode,body:gi(n)}},"handler"),htmlBuilder:o((t,e)=>{var r=Ii(t.body,e.withPhantom(),!1);return $e.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=As(t.body,e);return new mt.MathNode("mphantom",r)},"mathmlBuilder")});Mt({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=$e.makeSpan([],[Hr(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=As(gi(t.body),e),n=new mt.MathNode("mphantom",r),i=new mt.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Mt({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=$e.makeSpan(["inner"],[Hr(t.body,e.withPhantom())]),n=$e.makeSpan(["fix"],[]);return $e.makeSpan(["mord","rlap"],[r,n],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=As(gi(t.body),e),n=new mt.MathNode("mphantom",r),i=new mt.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Mt({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=Tr(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=Hr(t.body,e),n=ii(t.dy,e);return $e.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new mt.MathNode("mpadded",[wn(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});Mt({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});Mt({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=Tr(e[0],"size"),s=Tr(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&Tr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=$e.makeSpan(["mord","rule"],[],e),n=ii(t.width,e),i=ii(t.height,e),a=t.shift?ii(t.shift,e):0;return r.style.borderRightWidth=St(n),r.style.borderTopWidth=St(i),r.style.bottom=St(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=ii(t.width,e),n=ii(t.height,e),i=t.shift?ii(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new mt.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",St(r)),s.setAttribute("height",St(n));var l=new mt.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",St(i)):(l.setAttribute("height",St(i)),l.setAttribute("depth",St(-i))),l.setAttribute("voffset",St(i)),l}});o(BU,"sizingGroup");FV=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],Lwe=o((t,e)=>{var r=e.havingSize(t.size);return BU(t.body,r,e)},"htmlBuilder");Mt({type:"sizing",names:FV,props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:FV.indexOf(n)+1,body:a}},"handler"),htmlBuilder:Lwe,mathmlBuilder:o((t,e)=>{var r=e.havingSize(t.size),n=As(t.body,r),i=new mt.MathNode("mstyle",n);return i.setAttribute("mathsize",St(r.sizeMultiplier)),i},"mathmlBuilder")});Mt({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((t,e,r)=>{var{parser:n}=t,i=!1,a=!1,s=r[0]&&Tr(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=$e.makeSpan([],[Hr(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new mt.MathNode("mpadded",[wn(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Mt({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n}=t,i=r[0],a=e[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(t,e){var r=Hr(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=$e.wrapFragment(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.idr.height+r.depth+s&&(s=(s+d-r.height-r.depth)/2);var p=u.height-r.height-s-h;r.style.paddingLeft=St(f);var m=$e.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+p)},{type:"elem",elem:u},{type:"kern",size:h}]},e);if(t.index){var g=e.havingStyle(nr.SCRIPTSCRIPT),y=Hr(t.index,g,e),v=.6*(m.height-m.depth),x=$e.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},e),b=$e.makeSpan(["root"],[x]);return $e.makeSpan(["mord","sqrt"],[b,m],e)}else return $e.makeSpan(["mord","sqrt"],[m],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new mt.MathNode("mroot",[wn(r,e),wn(n,e)]):new mt.MathNode("msqrt",[wn(r,e)])}});$V={display:nr.DISPLAY,text:nr.TEXT,script:nr.SCRIPT,scriptscript:nr.SCRIPTSCRIPT};Mt({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t,e){var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(t,e){var r=$V[t.style],n=e.havingStyle(r).withFont("");return BU(t.body,n,e)},mathmlBuilder(t,e){var r=$V[t.style],n=e.havingStyle(r),i=As(t.body,n),a=new mt.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[t.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});Rwe=o(function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===nr.DISPLAY.size||n.alwaysHandleSupSub);return i?C0:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===nr.DISPLAY.size||n.limits);return a?PU:null}else{if(n.type==="accent")return er.isCharacterBox(n.base)?dA:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?MU:null}else return null}else return null},"htmlBuilderDelegate");dd({type:"supsub",htmlBuilder(t,e){var r=Rwe(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=Hr(n,e),l,u,h=e.fontMetrics(),f=0,d=0,p=n&&er.isCharacterBox(n);if(i){var m=e.havingStyle(e.style.sup());l=Hr(i,m,e),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/e.sizeMultiplier)}if(a){var g=e.havingStyle(e.style.sub());u=Hr(a,g,e),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/e.sizeMultiplier)}var y;e.style===nr.DISPLAY?y=h.sup1:e.style.cramped?y=h.sup3:y=h.sup2;var v=e.sizeMultiplier,x=St(.5/h.ptPerEm/v),b=null;if(u){var T=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");(s instanceof Cs||T)&&(b=St(-s.italic))}var S;if(l&&u){f=Math.max(f,y,l.depth+.25*h.xHeight),d=Math.max(d,h.sub2);var w=h.defaultRuleThickness,k=4*w;if(f-l.depth-(u.height-d)0&&(f+=C,d-=C)}var A=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];S=$e.makeVList({positionType:"individualShift",children:A},e)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var L=[{type:"elem",elem:u,marginLeft:b,marginRight:x}];S=$e.makeVList({positionType:"shift",positionData:d,children:L},e)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),S=$e.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:x}]},e);else throw new Error("supsub must have either sup or sub.");var I=J7(s,"right")||"mord";return $e.makeSpan([I],[s,$e.makeSpan(["msupsub"],[S])],e)},mathmlBuilder(t,e){var r=!1,n,i;t.base&&t.base.type==="horizBrace"&&(i=!!t.sup,i===t.base.isOver&&(r=!0,n=t.base.isOver)),t.base&&(t.base.type==="op"||t.base.type==="operatorname")&&(t.base.parentIsSupSub=!0);var a=[wn(t.base,e)];t.sub&&a.push(wn(t.sub,e)),t.sup&&a.push(wn(t.sup,e));var s;if(r)s=n?"mover":"munder";else if(t.sub)if(t.sup){var h=t.base;h&&h.type==="op"&&h.limits&&e.style===nr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(e.style===nr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=t.base;u&&u.type==="op"&&u.limits&&(e.style===nr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||e.style===nr.DISPLAY)?s="munder":s="msub"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===nr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===nr.DISPLAY)?s="mover":s="msup"}return new mt.MathNode(s,a)}});dd({type:"atom",htmlBuilder(t,e){return $e.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new mt.MathNode("mo",[Lo(t.text,t.mode)]);if(t.family==="bin"){var n=hA(t,e);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else t.family==="punct"?r.setAttribute("separator","true"):(t.family==="open"||t.family==="close")&&r.setAttribute("stretchy","false");return r}});FU={mi:"italic",mn:"normal",mtext:"normal"};dd({type:"mathord",htmlBuilder(t,e){return $e.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new mt.MathNode("mi",[Lo(t.text,t.mode,e)]),n=hA(t,e)||"italic";return n!==FU[r.type]&&r.setAttribute("mathvariant",n),r}});dd({type:"textord",htmlBuilder(t,e){return $e.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=Lo(t.text,t.mode,e),n=hA(t,e)||"normal",i;return t.mode==="text"?i=new mt.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new mt.MathNode("mn",[r]):t.text==="\\prime"?i=new mt.MathNode("mo",[r]):i=new mt.MathNode("mi",[r]),n!==FU[i.type]&&i.setAttribute("mathvariant",n),i}});W7={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Y7={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};dd({type:"spacing",htmlBuilder(t,e){if(Y7.hasOwnProperty(t.text)){var r=Y7[t.text].className||"";if(t.mode==="text"){var n=$e.makeOrd(t,e,"textord");return n.classes.push(r),n}else return $e.makeSpan(["mspace",r],[$e.mathsym(t.text,t.mode,e)],e)}else{if(W7.hasOwnProperty(t.text))return $e.makeSpan(["mspace",W7[t.text]],[],e);throw new gt('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(Y7.hasOwnProperty(t.text))r=new mt.MathNode("mtext",[new mt.TextNode("\xA0")]);else{if(W7.hasOwnProperty(t.text))return new mt.MathNode("mspace");throw new gt('Unknown type of space "'+t.text+'"')}return r}});zV=o(()=>{var t=new mt.MathNode("mtd",[]);return t.setAttribute("width","50%"),t},"pad");dd({type:"tag",mathmlBuilder(t,e){var r=new mt.MathNode("mtable",[new mt.MathNode("mtr",[zV(),new mt.MathNode("mtd",[Th(t.body,e)]),zV(),new mt.MathNode("mtd",[Th(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});GV={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},VV={"\\textbf":"textbf","\\textmd":"textmd"},Nwe={"\\textit":"textit","\\textup":"textup"},UV=o((t,e)=>{var r=t.font;if(r){if(GV[r])return e.withTextFontFamily(GV[r]);if(VV[r])return e.withTextFontWeight(VV[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(Nwe[r])},"optionsWithFont");Mt({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"text",mode:r.mode,body:gi(i),font:n}},htmlBuilder(t,e){var r=UV(t,e),n=Ii(t.body,r,!0);return $e.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=UV(t,e);return Th(t.body,r)}});Mt({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"underline",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Hr(t.body,e),n=$e.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=$e.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},e);return $e.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new mt.MathNode("mo",[new mt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new mt.MathNode("munder",[wn(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});Mt({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"vcenter",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Hr(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return $e.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new mt.MathNode("mpadded",[wn(t.body,e)],["vcenter"])}});Mt({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new gt("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=HV(t),n=[],i=e.havingStyle(e.style.text()),a=0;at.body.replace(/ /g,t.star?"\u2423":"\xA0"),"makeVerb"),xh=oU,$U=`[ \r - ]`,Mwe="\\\\[a-zA-Z@]+",Iwe="\\\\[^\uD800-\uDFFF]",Owe="("+Mwe+")"+$U+"*",Pwe=`\\\\( +-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}},"tallDelim"),_p=class{static{o(this,"DocumentFragment")}constructor(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(e){return ar.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),r=0;rr.toText(),"toText");return this.children.map(e).join("")}},Oc={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},W3={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},nY={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};o(OY,"setFontMetrics");o(B_,"getCharacterMetrics");h_={};o(DAe,"getGlobalMetrics");RAe=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],iY=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],aY=o(function(e,r){return r.size<2?e:RAe[e-1][r.size-1]},"sizeAtStyle"),iw=class t{static{o(this,"Options")}constructor(e){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=e.style,this.color=e.color,this.size=e.size||t.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=iY[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return new t(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:aY(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:iY[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=aY(t.BASESIZE,e);return this.size===r&&this.textSize===t.BASESIZE&&this.style===e?this:this.extend({style:e,size:r})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==t.BASESIZE?["sizing","reset-size"+this.size,"size"+t.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=DAe(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};iw.BASESIZE=6;E_={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},LAe={ex:!0,em:!0,mu:!0},PY=o(function(e){return typeof e!="string"&&(e=e.unit),e in E_||e in LAe||e==="ex"},"validUnit"),mi=o(function(e,r){var n;if(e.unit in E_)n=E_[e.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(e.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,e.unit==="ex")n=i.fontMetrics().xHeight;else if(e.unit==="em")n=i.fontMetrics().quad;else throw new vt("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},"calculateSize"),_t=o(function(e){return+e.toFixed(4)+"em"},"makeEm"),mf=o(function(e){return e.filter(r=>r).join(" ")},"createClass"),BY=o(function(e,r,n){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},"initNode"),FY=o(function(e){var r=document.createElement(e);r.className=mf(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a/=\x00-\x1f]/,$Y=o(function(e){var r="<"+e;this.classes.length&&(r+=' class="'+ar.escape(mf(this.classes))+'"');var n="";for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=ar.hyphenate(i)+":"+this.style[i]+";");n&&(r+=' style="'+ar.escape(n)+'"');for(var a in this.attributes)if(this.attributes.hasOwnProperty(a)){if(NAe.test(a))throw new vt("Invalid attribute name '"+a+"'");r+=" "+a+'="'+ar.escape(this.attributes[a])+'"'}r+=">";for(var s=0;s",r},"toMarkup"),Dp=class{static{o(this,"Span")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,BY.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return ar.contains(this.classes,e)}toNode(){return FY.call(this,"span")}toMarkup(){return $Y.call(this,"span")}},b2=class{static{o(this,"Anchor")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,BY.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return ar.contains(this.classes,e)}toNode(){return FY.call(this,"a")}toMarkup(){return $Y.call(this,"a")}},C_=class{static{o(this,"Img")}constructor(e,r,n){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=r,this.src=e,this.classes=["mord"],this.style=n}hasClass(e){return ar.contains(this.classes,e)}toNode(){var e=document.createElement("img");e.src=this.src,e.alt=this.alt,e.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(e.style[r]=this.style[r]);return e}toMarkup(){var e=''+ar.escape(this.alt)+'0&&(r=document.createElement("span"),r.style.marginRight=_t(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=mf(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=ar.hyphenate(i)+":"+this.style[i]+";");n&&(e=!0,r+=' style="'+ar.escape(n)+'"');var a=ar.escape(this.text);return e?(r+=">",r+=a,r+="",r):a}},Hl=class{static{o(this,"SvgNode")}constructor(e,r){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=r||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"svg");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i':''}},T2=class{static{o(this,"LineNode")}constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e="","\\gt",!0);q(W,ae,Ee,"\u2208","\\in",!0);q(W,ae,Ee,"\uE020","\\@not");q(W,ae,Ee,"\u2282","\\subset",!0);q(W,ae,Ee,"\u2283","\\supset",!0);q(W,ae,Ee,"\u2286","\\subseteq",!0);q(W,ae,Ee,"\u2287","\\supseteq",!0);q(W,Se,Ee,"\u2288","\\nsubseteq",!0);q(W,Se,Ee,"\u2289","\\nsupseteq",!0);q(W,ae,Ee,"\u22A8","\\models");q(W,ae,Ee,"\u2190","\\leftarrow",!0);q(W,ae,Ee,"\u2264","\\le");q(W,ae,Ee,"\u2264","\\leq",!0);q(W,ae,Ee,"<","\\lt",!0);q(W,ae,Ee,"\u2192","\\rightarrow",!0);q(W,ae,Ee,"\u2192","\\to");q(W,Se,Ee,"\u2271","\\ngeq",!0);q(W,Se,Ee,"\u2270","\\nleq",!0);q(W,ae,ih,"\xA0","\\ ");q(W,ae,ih,"\xA0","\\space");q(W,ae,ih,"\xA0","\\nobreakspace");q(ht,ae,ih,"\xA0","\\ ");q(ht,ae,ih,"\xA0"," ");q(ht,ae,ih,"\xA0","\\space");q(ht,ae,ih,"\xA0","\\nobreakspace");q(W,ae,ih,null,"\\nobreak");q(W,ae,ih,null,"\\allowbreak");q(W,ae,hw,",",",");q(W,ae,hw,";",";");q(W,Se,Ft,"\u22BC","\\barwedge",!0);q(W,Se,Ft,"\u22BB","\\veebar",!0);q(W,ae,Ft,"\u2299","\\odot",!0);q(W,ae,Ft,"\u2295","\\oplus",!0);q(W,ae,Ft,"\u2297","\\otimes",!0);q(W,ae,Ne,"\u2202","\\partial",!0);q(W,ae,Ft,"\u2298","\\oslash",!0);q(W,Se,Ft,"\u229A","\\circledcirc",!0);q(W,Se,Ft,"\u22A1","\\boxdot",!0);q(W,ae,Ft,"\u25B3","\\bigtriangleup");q(W,ae,Ft,"\u25BD","\\bigtriangledown");q(W,ae,Ft,"\u2020","\\dagger");q(W,ae,Ft,"\u22C4","\\diamond");q(W,ae,Ft,"\u22C6","\\star");q(W,ae,Ft,"\u25C3","\\triangleleft");q(W,ae,Ft,"\u25B9","\\triangleright");q(W,ae,Ro,"{","\\{");q(ht,ae,Ne,"{","\\{");q(ht,ae,Ne,"{","\\textbraceleft");q(W,ae,Ss,"}","\\}");q(ht,ae,Ne,"}","\\}");q(ht,ae,Ne,"}","\\textbraceright");q(W,ae,Ro,"{","\\lbrace");q(W,ae,Ss,"}","\\rbrace");q(W,ae,Ro,"[","\\lbrack",!0);q(ht,ae,Ne,"[","\\lbrack",!0);q(W,ae,Ss,"]","\\rbrack",!0);q(ht,ae,Ne,"]","\\rbrack",!0);q(W,ae,Ro,"(","\\lparen",!0);q(W,ae,Ss,")","\\rparen",!0);q(ht,ae,Ne,"<","\\textless",!0);q(ht,ae,Ne,">","\\textgreater",!0);q(W,ae,Ro,"\u230A","\\lfloor",!0);q(W,ae,Ss,"\u230B","\\rfloor",!0);q(W,ae,Ro,"\u2308","\\lceil",!0);q(W,ae,Ss,"\u2309","\\rceil",!0);q(W,ae,Ne,"\\","\\backslash");q(W,ae,Ne,"\u2223","|");q(W,ae,Ne,"\u2223","\\vert");q(ht,ae,Ne,"|","\\textbar",!0);q(W,ae,Ne,"\u2225","\\|");q(W,ae,Ne,"\u2225","\\Vert");q(ht,ae,Ne,"\u2225","\\textbardbl");q(ht,ae,Ne,"~","\\textasciitilde");q(ht,ae,Ne,"\\","\\textbackslash");q(ht,ae,Ne,"^","\\textasciicircum");q(W,ae,Ee,"\u2191","\\uparrow",!0);q(W,ae,Ee,"\u21D1","\\Uparrow",!0);q(W,ae,Ee,"\u2193","\\downarrow",!0);q(W,ae,Ee,"\u21D3","\\Downarrow",!0);q(W,ae,Ee,"\u2195","\\updownarrow",!0);q(W,ae,Ee,"\u21D5","\\Updownarrow",!0);q(W,ae,Bi,"\u2210","\\coprod");q(W,ae,Bi,"\u22C1","\\bigvee");q(W,ae,Bi,"\u22C0","\\bigwedge");q(W,ae,Bi,"\u2A04","\\biguplus");q(W,ae,Bi,"\u22C2","\\bigcap");q(W,ae,Bi,"\u22C3","\\bigcup");q(W,ae,Bi,"\u222B","\\int");q(W,ae,Bi,"\u222B","\\intop");q(W,ae,Bi,"\u222C","\\iint");q(W,ae,Bi,"\u222D","\\iiint");q(W,ae,Bi,"\u220F","\\prod");q(W,ae,Bi,"\u2211","\\sum");q(W,ae,Bi,"\u2A02","\\bigotimes");q(W,ae,Bi,"\u2A01","\\bigoplus");q(W,ae,Bi,"\u2A00","\\bigodot");q(W,ae,Bi,"\u222E","\\oint");q(W,ae,Bi,"\u222F","\\oiint");q(W,ae,Bi,"\u2230","\\oiiint");q(W,ae,Bi,"\u2A06","\\bigsqcup");q(W,ae,Bi,"\u222B","\\smallint");q(ht,ae,lg,"\u2026","\\textellipsis");q(W,ae,lg,"\u2026","\\mathellipsis");q(ht,ae,lg,"\u2026","\\ldots",!0);q(W,ae,lg,"\u2026","\\ldots",!0);q(W,ae,lg,"\u22EF","\\@cdots",!0);q(W,ae,lg,"\u22F1","\\ddots",!0);q(W,ae,Ne,"\u22EE","\\varvdots");q(ht,ae,Ne,"\u22EE","\\varvdots");q(W,ae,ri,"\u02CA","\\acute");q(W,ae,ri,"\u02CB","\\grave");q(W,ae,ri,"\xA8","\\ddot");q(W,ae,ri,"~","\\tilde");q(W,ae,ri,"\u02C9","\\bar");q(W,ae,ri,"\u02D8","\\breve");q(W,ae,ri,"\u02C7","\\check");q(W,ae,ri,"^","\\hat");q(W,ae,ri,"\u20D7","\\vec");q(W,ae,ri,"\u02D9","\\dot");q(W,ae,ri,"\u02DA","\\mathring");q(W,ae,or,"\uE131","\\@imath");q(W,ae,or,"\uE237","\\@jmath");q(W,ae,Ne,"\u0131","\u0131");q(W,ae,Ne,"\u0237","\u0237");q(ht,ae,Ne,"\u0131","\\i",!0);q(ht,ae,Ne,"\u0237","\\j",!0);q(ht,ae,Ne,"\xDF","\\ss",!0);q(ht,ae,Ne,"\xE6","\\ae",!0);q(ht,ae,Ne,"\u0153","\\oe",!0);q(ht,ae,Ne,"\xF8","\\o",!0);q(ht,ae,Ne,"\xC6","\\AE",!0);q(ht,ae,Ne,"\u0152","\\OE",!0);q(ht,ae,Ne,"\xD8","\\O",!0);q(ht,ae,ri,"\u02CA","\\'");q(ht,ae,ri,"\u02CB","\\`");q(ht,ae,ri,"\u02C6","\\^");q(ht,ae,ri,"\u02DC","\\~");q(ht,ae,ri,"\u02C9","\\=");q(ht,ae,ri,"\u02D8","\\u");q(ht,ae,ri,"\u02D9","\\.");q(ht,ae,ri,"\xB8","\\c");q(ht,ae,ri,"\u02DA","\\r");q(ht,ae,ri,"\u02C7","\\v");q(ht,ae,ri,"\xA8",'\\"');q(ht,ae,ri,"\u02DD","\\H");q(ht,ae,ri,"\u25EF","\\textcircled");zY={"--":!0,"---":!0,"``":!0,"''":!0};q(ht,ae,Ne,"\u2013","--",!0);q(ht,ae,Ne,"\u2013","\\textendash");q(ht,ae,Ne,"\u2014","---",!0);q(ht,ae,Ne,"\u2014","\\textemdash");q(ht,ae,Ne,"\u2018","`",!0);q(ht,ae,Ne,"\u2018","\\textquoteleft");q(ht,ae,Ne,"\u2019","'",!0);q(ht,ae,Ne,"\u2019","\\textquoteright");q(ht,ae,Ne,"\u201C","``",!0);q(ht,ae,Ne,"\u201C","\\textquotedblleft");q(ht,ae,Ne,"\u201D","''",!0);q(ht,ae,Ne,"\u201D","\\textquotedblright");q(W,ae,Ne,"\xB0","\\degree",!0);q(ht,ae,Ne,"\xB0","\\degree");q(ht,ae,Ne,"\xB0","\\textdegree",!0);q(W,ae,Ne,"\xA3","\\pounds");q(W,ae,Ne,"\xA3","\\mathsterling",!0);q(ht,ae,Ne,"\xA3","\\pounds");q(ht,ae,Ne,"\xA3","\\textsterling",!0);q(W,Se,Ne,"\u2720","\\maltese");q(ht,Se,Ne,"\u2720","\\maltese");oY='0123456789/@."';for(H3=0;H30)return Wl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=$Ae(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=qY[u].fontName,p=[u]):(d=Q3(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(fw(a,d,i).metrics)return Wl(a,d,i,r,s.concat(p));if(zY.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(mf(t.classes)!==mf(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize)return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in t.style)if(t.style.hasOwnProperty(n)&&t.style[n]!==e.style[n])return!1;for(var i in e.style)if(e.style.hasOwnProperty(i)&&t.style[i]!==e.style[i])return!1;return!0},"canCombine"),VAe=o(t=>{for(var e=0;er&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},"sizeElementFromChildren"),Ys=o(function(e,r,n,i){var a=new Dp(e,r,n,i);return F_(a),a},"makeSpan"),GY=o((t,e,r,n)=>new Dp(t,e,r,n),"makeSvgSpan"),qAe=o(function(e,r,n){var i=Ys([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=_t(i.height),i.maxFontSize=1,i},"makeLineSpan"),UAe=o(function(e,r,n,i){var a=new b2(e,r,n,i);return F_(a),a},"makeAnchor"),VY=o(function(e){var r=new _p(e);return F_(r),r},"makeFragment"),WAe=o(function(e,r){return e instanceof _p?Ys([],[e],r):e},"wrapFragment"),HAe=o(function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=Ys(["mspace"],[],e),n=mi(t,e);return r.style.marginRight=_t(n),r},"makeGlue"),Q3=o(function(e,r,n){var i="";switch(e){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=e}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),qY={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},UY={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},XAe=o(function(e,r){var[n,i,a]=UY[e],s=new Pc(n),l=new Hl([s],{width:_t(i),height:_t(a),style:"width:"+_t(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=GY(["overlay"],[l],r);return u.height=a,u.style.height=_t(a),u.style.width=_t(i),u},"staticSvg"),Ve={fontMap:qY,makeSymbol:Wl,mathsym:FAe,makeSpan:Ys,makeSvgSpan:GY,makeLineSpan:qAe,makeAnchor:UAe,makeFragment:VY,wrapFragment:WAe,makeVList:YAe,makeOrd:zAe,makeGlue:jAe,staticSvg:XAe,svgData:UY,tryCombineChars:VAe},pi={number:3,unit:"mu"},Ap={number:4,unit:"mu"},Ju={number:5,unit:"mu"},KAe={mord:{mop:pi,mbin:Ap,mrel:Ju,minner:pi},mop:{mord:pi,mop:pi,mrel:Ju,minner:pi},mbin:{mord:Ap,mop:Ap,mopen:Ap,minner:Ap},mrel:{mord:Ju,mop:Ju,mopen:Ju,minner:Ju},mopen:{},mclose:{mop:pi,mbin:Ap,mrel:Ju,minner:pi},mpunct:{mord:pi,mop:pi,mrel:Ju,mopen:pi,mclose:pi,mpunct:pi,minner:pi},minner:{mord:pi,mop:pi,mbin:Ap,mrel:Ju,mopen:pi,mpunct:pi,minner:pi}},QAe={mord:{mop:pi},mop:{mord:pi,mop:pi},mbin:{},mrel:{},mopen:{},mclose:{mop:pi},mpunct:{},minner:{mop:pi}},WY={},sw={},ow={};o(Pt,"defineFunction");o(Rp,"defineFunctionBuilders");lw=o(function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},"normalizeArgument"),Li=o(function(e){return e.type==="ordgroup"?e.body:[e]},"ordargument"),rh=Ve.makeSpan,ZAe=["leftmost","mbin","mopen","mrel","mop","mpunct"],JAe=["rightmost","mrel","mclose","mpunct"],e7e={display:lr.DISPLAY,text:lr.TEXT,script:lr.SCRIPT,scriptscript:lr.SCRIPTSCRIPT},t7e={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Xi=o(function(e,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],s=0;s{var v=y.classes[0],x=g.classes[0];v==="mbin"&&ar.contains(JAe,x)?y.classes[0]="mord":x==="mbin"&&ar.contains(ZAe,v)&&(g.classes[0]="mord")},{node:d},p,m),uY(a,(g,y)=>{var v=__(y),x=__(g),b=v&&x?g.hasClass("mtight")?QAe[v][x]:KAe[v][x]:null;if(b)return Ve.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),uY=o(function t(e,r,n,i,a){i&&e.push(i);for(var s=0;sp=>{e.splice(d+1,0,p),s++})(s)}i&&e.pop()},"traverseNonSpaceNodes"),HY=o(function(e){return e instanceof _p||e instanceof b2||e instanceof Dp&&e.hasClass("enclosing")?e:null},"checkPartialGroup"),r7e=o(function t(e,r){var n=HY(e);if(n){var i=n.children;if(i.length){if(r==="right")return t(i[i.length-1],"right");if(r==="left")return t(i[0],"left")}}return e},"getOutermostNode"),__=o(function(e,r){return e?(r&&(e=r7e(e,r)),t7e[e.classes[0]]||null):null},"getTypeOfDomTree"),w2=o(function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return rh(r.concat(n))},"makeNullDelimiter"),Jr=o(function(e,r,n){if(!e)return rh();if(sw[e.type]){var i=sw[e.type](e,r);if(n&&r.size!==n.size){i=rh(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new vt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(Z3,"buildHTMLUnbreakable");o(D_,"buildHTML");o(YY,"newDocumentFragment");ws=class{static{o(this,"MathNode")}constructor(e,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(e,r){this.attributes[e]=r}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&e.setAttribute(r,this.attributes[r]);this.classes.length>0&&(e.className=mf(this.classes));for(var n=0;n0&&(e+=' class ="'+ar.escape(mf(this.classes))+'"'),e+=">";for(var n=0;n",e}toText(){return this.children.map(e=>e.toText()).join("")}},al=class{static{o(this,"TextNode")}constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return ar.escape(this.toText())}toText(){return this.text}},R_=class{static{o(this,"SpaceNode")}constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character="\u200A":e>=.1666&&e<=.1667?this.character="\u2009":e>=.2222&&e<=.2223?this.character="\u2005":e>=.2777&&e<=.2778?this.character="\u2005\u200A":e>=-.05556&&e<=-.05555?this.character="\u200A\u2063":e>=-.1667&&e<=-.1666?this.character="\u2009\u2063":e>=-.2223&&e<=-.2222?this.character="\u205F\u2063":e>=-.2778&&e<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",_t(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},yt={MathNode:ws,TextNode:al,SpaceNode:R_,newDocumentFragment:YY},ol=o(function(e,r,n){return zn[r][e]&&zn[r][e].replace&&e.charCodeAt(0)!==55349&&!(zY.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=zn[r][e].replace),new yt.TextNode(e)},"makeText"),$_=o(function(e){return e.length===1?e[0]:new yt.MathNode("mrow",e)},"makeRow"),z_=o(function(e,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=e.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return e.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathsfit")return"sans-serif-italic";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=e.text;if(ar.contains(["\\imath","\\jmath"],a))return null;zn[i][a]&&zn[i][a].replace&&(a=zn[i][a].replace);var s=Ve.fontMap[n].fontName;return B_(a,s,i)?Ve.fontMap[n].variant:null},"getVariant");o(p_,"isNumberPunctuation");Xs=o(function(e,r,n){if(e.length===1){var i=Ln(e[0],r);return n&&i instanceof ws&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,l=0;l=1&&(s.type==="mn"||p_(s))){var h=u.children[0];h instanceof ws&&h.type==="mn"&&(h.children=[...s.children,...h.children],a.pop())}else if(s.type==="mi"&&s.children.length===1){var f=s.children[0];if(f instanceof al&&f.text==="\u0338"&&(u.type==="mo"||u.type==="mi"||u.type==="mn")){var d=u.children[0];d instanceof al&&d.text.length>0&&(d.text=d.text.slice(0,1)+"\u0338"+d.text.slice(1),a.pop())}}}a.push(u),s=u}return a},"buildExpression"),gf=o(function(e,r,n){return $_(Xs(e,r,n))},"buildExpressionRow"),Ln=o(function(e,r){if(!e)return new yt.MathNode("mrow");if(ow[e.type]){var n=ow[e.type](e,r);return n}else throw new vt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(hY,"buildMathML");jY=o(function(e){return new iw({style:e.displayMode?lr.DISPLAY:lr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},"optionsFromSettings"),XY=o(function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=Ve.makeSpan(n,[e])}return e},"displayWrap"),n7e=o(function(e,r,n){var i=jY(n),a;if(n.output==="mathml")return hY(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=D_(e,i);a=Ve.makeSpan(["katex"],[s])}else{var l=hY(e,r,i,n.displayMode,!1),u=D_(e,i);a=Ve.makeSpan(["katex"],[l,u])}return XY(a,n)},"buildTree"),i7e=o(function(e,r,n){var i=jY(n),a=D_(e,i),s=Ve.makeSpan(["katex"],[a]);return XY(s,n)},"buildHTMLTree"),a7e={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},s7e=o(function(e){var r=new yt.MathNode("mo",[new yt.TextNode(a7e[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),o7e={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},l7e=o(function(e){return e.type==="ordgroup"?e.body.length:1},"groupLength"),c7e=o(function(e,r){function n(){var l=4e5,u=e.label.slice(1);if(ar.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=e,f=l7e(h.base),d,p,m;if(f>5)u==="widehat"||u==="widecheck"?(d=420,l=2364,m=.42,p=u+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var g=[1,1,2,2,3,3][f];u==="widehat"||u==="widecheck"?(l=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],m=[0,.24,.3,.3,.36,.42][g],p=u+g):(l=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],m=[0,.26,.286,.3,.306,.34][g],p="tilde"+g)}var y=new Pc(p),v=new Hl([y],{width:"100%",height:_t(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Ve.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=o7e[u],[T,E,w]=b,k=w/1e3,C=T.length,D,R;if(C===1){var O=b[3];D=["hide-tail"],R=[O]}else if(C===2)D=["halfarrow-left","halfarrow-right"],R=["xMinYMin","xMaxYMin"];else if(C===3)D=["brace-left","brace-center","brace-right"],R=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support + `+C+" children.");for(var L=0;L0&&(i.style.minWidth=_t(a)),i},"svgSpan"),u7e=o(function(e,r,n,i,a){var s,l=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Ve.makeSpan(["stretchy",r],[],a),r==="fbox"){var u=a.color&&a.getColor();u&&(s.style.borderColor=u)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new T2({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new T2({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new Hl(h,{width:"100%",height:_t(l)});s=Ve.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=_t(l),s},"encloseSpan"),nh={encloseSpan:u7e,mathMLnode:s7e,svgSpan:c7e};o(_r,"assertNodeType");o(G_,"assertSymbolNodeType");o(dw,"checkSymbolNodeType");V_=o((t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=_r(t.base,"accent"),r=n.base,t.base=r,i=IAe(Jr(t,e)),t.base=n):(n=_r(t,"accent"),r=n.base);var a=Jr(r,e.havingCrampedStyle()),s=n.isShifty&&ar.isCharacterBox(r),l=0;if(s){var u=ar.getBaseElem(r),h=Jr(u,e.havingCrampedStyle());l=sY(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),p;if(n.isStretchy)p=nh.svgSpan(n,e),p=Ve.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+_t(2*l)+")",marginLeft:_t(2*l)}:void 0}]},e);else{var m,g;n.label==="\\vec"?(m=Ve.staticSvg("vec",e),g=Ve.svgData.vec[1]):(m=Ve.makeOrd({mode:n.mode,text:n.label},e,"textord"),m=sY(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Ve.makeSpan(["accent-body"],[m]);var y=n.label==="\\textcircled";y&&(p.classes.push("accent-full"),d=a.height);var v=l;y||(v-=g/2),p.style.left=_t(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Ve.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},e)}var x=Ve.makeSpan(["mord","accent"],[p],e);return i?(i.children[0]=x,i.height=Math.max(x.height,i.height),i.classes[0]="mord",i):x},"htmlBuilder$a"),KY=o((t,e)=>{var r=t.isStretchy?nh.mathMLnode(t.label):new yt.MathNode("mo",[ol(t.label,t.mode)]),n=new yt.MathNode("mover",[Ln(t.base,e),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),h7e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));Pt({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:o((t,e)=>{var r=lw(e[0]),n=!h7e.test(t.funcName),i=!n||t.funcName==="\\widehat"||t.funcName==="\\widetilde"||t.funcName==="\\widecheck";return{type:"accent",mode:t.parser.mode,label:t.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:V_,mathmlBuilder:KY});Pt({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((t,e)=>{var r=e[0],n=t.parser.mode;return n==="math"&&(t.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+t.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:t.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:V_,mathmlBuilder:KY});Pt({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((t,e)=>{var r=Jr(t.base,e),n=nh.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=Ve.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return Ve.makeSpan(["mord","accentunder"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=nh.mathMLnode(t.label),n=new yt.MathNode("munder",[Ln(t.base,e),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});J3=o(t=>{var e=new yt.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},"paddedNode");Pt({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n,funcName:i}=t;return{type:"xArrow",mode:n.mode,label:i,body:e[0],below:r[0]}},htmlBuilder(t,e){var r=e.style,n=e.havingStyle(r.sup()),i=Ve.wrapFragment(Jr(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;t.below&&(n=e.havingStyle(r.sub()),s=Ve.wrapFragment(Jr(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var l=nh.svgSpan(t,e),u=-e.fontMetrics().axisHeight+.5*l.height,h=-e.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-e.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=Ve.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},e)}else f=Ve.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},e);return f.children[0].children[0].children[1].classes.push("svg-align"),Ve.makeSpan(["mrel","x-arrow"],[f],e)},mathmlBuilder(t,e){var r=nh.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=J3(Ln(t.body,e));if(t.below){var a=J3(Ln(t.below,e));n=new yt.MathNode("munderover",[r,a,i])}else n=new yt.MathNode("mover",[r,i])}else if(t.below){var s=J3(Ln(t.below,e));n=new yt.MathNode("munder",[r,s])}else n=J3(),n=new yt.MathNode("mover",[r,n]);return n}});f7e=Ve.makeSpan;o(QY,"htmlBuilder$9");o(ZY,"mathmlBuilder$8");Pt({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:Li(i),isCharacterBox:ar.isCharacterBox(i)}},htmlBuilder:QY,mathmlBuilder:ZY});pw=o(t=>{var e=t.type==="ordgroup"&&t.body.length?t.body[0]:t;return e.type==="atom"&&(e.family==="bin"||e.family==="rel")?"m"+e.family:"mord"},"binrelClass");Pt({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:pw(e[0]),body:Li(e[1]),isCharacterBox:ar.isCharacterBox(e[1])}}});Pt({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],s;n!=="\\stackrel"?s=pw(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:Li(i)},u={type:"supsub",mode:a.mode,base:l,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[u],isCharacterBox:ar.isCharacterBox(u)}},htmlBuilder:QY,mathmlBuilder:ZY});Pt({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:pw(e[0]),body:Li(e[0])}},htmlBuilder(t,e){var r=Xi(t.body,e,!0),n=Ve.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=Xs(t.body,e),n=new yt.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});d7e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},fY=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),dY=o(t=>t.type==="textord"&&t.text==="@","isStartOfArrow"),p7e=o((t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e,"isLabelEnd");o(m7e,"cdArrow");o(g7e,"parseCD");Pt({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:e[0]}},htmlBuilder(t,e){var r=e.havingStyle(e.style.sup()),n=Ve.wrapFragment(Jr(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=_t(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new yt.MathNode("mrow",[Ln(t.label,e)]);return r=new yt.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new yt.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Pt({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(t,e){var{parser:r}=t;return{type:"cdlabelparent",mode:r.mode,fragment:e[0]}},htmlBuilder(t,e){var r=Ve.wrapFragment(Jr(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new yt.MathNode("mrow",[Ln(t.fragment,e)])}});Pt({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=_r(e[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new vt("\\@char with invalid code point "+a);return u<=65535?h=String.fromCharCode(u):(u-=65536,h=String.fromCharCode((u>>10)+55296,(u&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});JY=o((t,e)=>{var r=Xi(t.body,e.withColor(t.color),!1);return Ve.makeFragment(r)},"htmlBuilder$8"),ej=o((t,e)=>{var r=Xs(t.body,e.withColor(t.color)),n=new yt.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n},"mathmlBuilder$7");Pt({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=_r(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:Li(i)}},htmlBuilder:JY,mathmlBuilder:ej});Pt({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=_r(e[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:JY,mathmlBuilder:ej});Pt({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(t,e,r){var{parser:n}=t,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&_r(i,"size").value}},htmlBuilder(t,e){var r=Ve.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=_t(mi(t.size,e)))),r},mathmlBuilder(t,e){var r=new yt.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",_t(mi(t.size,e)))),r}});L_={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},tj=o(t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new vt("Expected a control sequence",t);return e},"checkControlSequence"),y7e=o(t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},"getRHS"),rj=o((t,e,r,n)=>{var i=t.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!t.gullet.isExpandable(r.text)}),t.gullet.macros.set(e,i,n)},"letCommand");Pt({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e,funcName:r}=t;e.consumeSpaces();var n=e.fetch();if(L_[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=L_[n.text]),_r(e.parseFunction(),"internal");throw new vt("Invalid token after macro prefix",n)}});Pt({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new vt("Expected a control sequence",n);for(var a=0,s,l=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){s=e.gullet.future(),l[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new vt('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new vt('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new vt("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=e.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=e.gullet.expandTokens(u),u.reverse()),e.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===L_[r]),{type:"internal",mode:e.mode}}});Pt({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=tj(e.gullet.popToken());e.gullet.consumeSpaces();var i=y7e(e);return rj(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});Pt({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=tj(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return rj(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});m2=o(function(e,r,n){var i=zn.math[e]&&zn.math[e].replace,a=B_(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},"getMetrics"),q_=o(function(e,r,n,i){var a=n.havingBaseStyle(r),s=Ve.makeSpan(i.concat(a.sizingClasses(n)),[e],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),nj=o(function(e,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=_t(a),e.height-=a,e.depth+=a},"centerSpan"),v7e=o(function(e,r,n,i,a,s){var l=Ve.makeSymbol(e,"Main-Regular",a,i),u=q_(l,r,i,s);return n&&nj(u,i,r),u},"makeSmallDelim"),x7e=o(function(e,r,n,i){return Ve.makeSymbol(e,"Size"+r+"-Regular",n,i)},"mathrmSize"),ij=o(function(e,r,n,i,a,s){var l=x7e(e,r,a,i),u=q_(Ve.makeSpan(["delimsizing","size"+r],[l],i),lr.TEXT,i,s);return n&&nj(u,i,lr.TEXT),u},"makeLargeDelim"),m_=o(function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Ve.makeSpan(["delimsizinginner",i],[Ve.makeSpan([],[Ve.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),g_=o(function(e,r,n){var i=Oc["Size4-Regular"][e.charCodeAt(0)]?Oc["Size4-Regular"][e.charCodeAt(0)][4]:Oc["Size1-Regular"][e.charCodeAt(0)][4],a=new Pc("inner",AAe(e,Math.round(1e3*r))),s=new Hl([a],{width:_t(i),height:_t(r),style:"width:"+_t(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Ve.makeSvgSpan([],[s],n);return l.height=r,l.style.height=_t(r),l.style.width=_t(i),{type:"elem",elem:l}},"makeInner"),N_=.008,ew={type:"kern",size:-1*N_},b7e=["|","\\lvert","\\rvert","\\vert"],T7e=["\\|","\\lVert","\\rVert","\\Vert"],aj=o(function(e,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=e,u=null;var m="Size1-Regular";e==="\\uparrow"?h=f="\u23D0":e==="\\Uparrow"?h=f="\u2016":e==="\\downarrow"?l=h="\u23D0":e==="\\Downarrow"?l=h="\u2016":e==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):e==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):ar.contains(b7e,e)?(h="\u2223",d="vert",p=333):ar.contains(T7e,e)?(h="\u2225",d="doublevert",p=556):e==="["||e==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):e==="]"||e==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):e==="\\lfloor"||e==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):e==="\\lceil"||e==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):e==="\\rfloor"||e==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):e==="\\rceil"||e==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):e==="("||e==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):e===")"||e==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):e==="\\{"||e==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lgroup"||e==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\rgroup"||e==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lmoustache"||e==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(e==="\\rmoustache"||e==="\u23B1")&&(l="\u23AB",f="\u23A9",h="\u23AA",m="Size4-Regular");var g=m2(l,m,a),y=g.height+g.depth,v=m2(h,m,a),x=v.height+v.depth,b=m2(f,m,a),T=b.height+b.depth,E=0,w=1;if(u!==null){var k=m2(u,m,a);E=k.height+k.depth,w=2}var C=y+T+E,D=Math.max(0,Math.ceil((r-C)/(w*x))),R=C+D*w*x,O=i.fontMetrics().axisHeight;n&&(O*=i.sizeMultiplier);var L=R/2-O,S=[];if(d.length>0){var A=R-y-T,_=Math.round(R*1e3),N=_Ae(d,Math.round(A*1e3)),M=new Pc(d,N),P=(p/1e3).toFixed(3)+"em",B=(_/1e3).toFixed(3)+"em",F=new Hl([M],{width:P,height:B,viewBox:"0 0 "+p+" "+_}),G=Ve.makeSvgSpan([],[F],i);G.height=_/1e3,G.style.width=P,G.style.height=B,S.push({type:"elem",elem:G})}else{if(S.push(m_(f,m,a)),S.push(ew),u===null){var $=R-y-T+2*N_;S.push(g_(h,$,i))}else{var V=(R-y-T-E)/2+2*N_;S.push(g_(h,V,i)),S.push(ew),S.push(m_(u,m,a)),S.push(ew),S.push(g_(h,V,i))}S.push(ew),S.push(m_(l,m,a))}var K=i.havingBaseStyle(lr.TEXT),ee=Ve.makeVList({positionType:"bottom",positionData:L,children:S},K);return q_(Ve.makeSpan(["delimsizing","mult"],[ee],K),lr.TEXT,i,s)},"makeStackedDelim"),y_=80,v_=.08,x_=o(function(e,r,n,i,a){var s=CAe(e,i,n),l=new Pc(e,s),u=new Hl([l],{width:"400em",height:_t(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Ve.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),w7e=o(function(e,r){var n=r.havingBaseSizing(),i=cj("\\surd",e*n.sizeMultiplier,lj,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),l,u=0,h=0,f=0,d;return i.type==="small"?(f=1e3+1e3*s+y_,e<1?a=1:e<1.4&&(a=.7),u=(1+s+v_)/a,h=(1+s)/a,l=x_("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+y_)*y2[i.size],h=(y2[i.size]+s)/a,u=(y2[i.size]+s+v_)/a,l=x_("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=e+s+v_,h=e+s,f=Math.floor(1e3*e+s)+y_,l=x_("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=_t(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),sj=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],k7e=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],oj=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],y2=[0,1.2,1.8,2.4,3],S7e=o(function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),ar.contains(sj,e)||ar.contains(oj,e))return ij(e,r,!1,n,i,a);if(ar.contains(k7e,e))return aj(e,y2[r],!1,n,i,a);throw new vt("Illegal delimiter: '"+e+"'")},"makeSizedDelim"),E7e=[{type:"small",style:lr.SCRIPTSCRIPT},{type:"small",style:lr.SCRIPT},{type:"small",style:lr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],C7e=[{type:"small",style:lr.SCRIPTSCRIPT},{type:"small",style:lr.SCRIPT},{type:"small",style:lr.TEXT},{type:"stack"}],lj=[{type:"small",style:lr.SCRIPTSCRIPT},{type:"small",style:lr.SCRIPT},{type:"small",style:lr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],A7e=o(function(e){if(e.type==="small")return"Main-Regular";if(e.type==="large")return"Size"+e.size+"-Regular";if(e.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},"delimTypeToFont"),cj=o(function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;sr)return n[s]}return n[n.length-1]},"traverseSequence"),uj=o(function(e,r,n,i,a,s){e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle");var l;ar.contains(oj,e)?l=E7e:ar.contains(sj,e)?l=lj:l=C7e;var u=cj(e,r,l,i);return u.type==="small"?v7e(e,u.style,n,i,a,s):u.type==="large"?ij(e,u.size,n,i,a,s):aj(e,r,n,i,a,s)},"makeCustomSizedDelim"),_7e=o(function(e,r,n,i,a,s){var l=i.fontMetrics().axisHeight*i.sizeMultiplier,u=901,h=5/i.fontMetrics().ptPerEm,f=Math.max(r-l,n+l),d=Math.max(f/500*u,2*f-h);return uj(e,d,!0,i,a,s)},"makeLeftRightDelim"),th={sqrtImage:w7e,sizedDelim:S7e,sizeToMaxHeight:y2,customSizedDelim:uj,leftRightDelim:_7e},pY={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},D7e=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];o(mw,"checkDelimiter");Pt({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:o((t,e)=>{var r=mw(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:pY[t.funcName].size,mclass:pY[t.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>t.delim==="."?Ve.makeSpan([t.mclass]):th.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),"htmlBuilder"),mathmlBuilder:o(t=>{var e=[];t.delim!=="."&&e.push(ol(t.delim,t.mode));var r=new yt.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=_t(th.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(mY,"assertParsed");Pt({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=t.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new vt("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:mw(e[0],t).text,color:r}},"handler")});Pt({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=mw(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=_r(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((t,e)=>{mY(t);for(var r=Xi(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{mY(t);var r=Xs(t.body,e);if(t.left!=="."){var n=new yt.MathNode("mo",[ol(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new yt.MathNode("mo",[ol(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return $_(r)},"mathmlBuilder")});Pt({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=mw(e[0],t);if(!t.parser.leftrightDepth)throw new vt("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>{var r;if(t.delim===".")r=w2(e,[]);else{r=th.sizedDelim(t.delim,1,e,t.mode,[]);var n={delim:t.delim,options:e};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?ol("|","text"):ol(t.delim,t.mode),n=new yt.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});U_=o((t,e)=>{var r=Ve.wrapFragment(Jr(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,l=ar.isCharacterBox(t.body);if(n==="sout")a=Ve.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var u=mi({number:.6,unit:"pt"},e),h=mi({number:.35,unit:"ex"},e),f=e.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=_t(d/2+u);var p=Math.floor(1e3*d*i),m=SAe(p),g=new Hl([new Pc("phase",m)],{width:"400em",height:_t(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Ve.makeSvgSpan(["hide-tail"],[g],e),a.style.height=_t(d),s=r.depth+u+h}else{/cancel/.test(n)?l||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var y=0,v=0,x=0;/box/.test(n)?(x=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),y=e.fontMetrics().fboxsep+(n==="colorbox"?0:x),v=y):n==="angl"?(x=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),y=4*x,v=Math.max(0,.25-r.depth)):(y=l?.2:0,v=y),a=nh.encloseSpan(r,n,y,v,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=_t(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=_t(x),a.style.borderRightWidth=_t(x)),s=r.depth+v,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var b;if(t.backgroundColor)b=Ve.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},e);else{var T=/cancel|phase/.test(n)?["svg-align"]:[];b=Ve.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:T}]},e)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?Ve.makeSpan(["mord","cancel-lap"],[b],e):Ve.makeSpan(["mord"],[b],e)},"htmlBuilder$7"),W_=o((t,e)=>{var r=0,n=new yt.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[Ln(t.body,e)]);switch(t.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),t.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(t.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n},"mathmlBuilder$6");Pt({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=_r(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:U_,mathmlBuilder:W_});Pt({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=_r(e[0],"color-token").color,s=_r(e[1],"color-token").color,l=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:U_,mathmlBuilder:W_});Pt({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\fbox",body:e[0]}}});Pt({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:U_,mathmlBuilder:W_});Pt({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\angl",body:e[0]}}});hj={};o(Bc,"defineEnvironment");fj={};o(fe,"defineMacro");o(gY,"getHLines");gw=o(t=>{var e=t.parser.settings;if(!e.displayMode)throw new vt("{"+t.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(H_,"getAutoTag");o(yf,"parseArray");o(Y_,"dCellStyle");Fc=o(function(e,r){var n,i,a=e.body.length,s=e.hLinesBeforeRow,l=0,u=new Array(a),h=[],f=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),d=1/r.fontMetrics().ptPerEm,p=5*d;if(e.colSeparationType&&e.colSeparationType==="small"){var m=r.havingStyle(lr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=e.colSeparationType==="CD"?mi({number:3,unit:"ex"},r):12*d,y=3*d,v=e.arraystretch*g,x=.7*v,b=.3*v,T=0;function E(j){for(var Ge=0;Ge0&&(T+=.25),h.push({pos:T,isDashed:j[Ge]})}for(o(E,"setHLinePos"),E(s[0]),n=0;n0&&(L+=b,Cj))for(n=0;n=l)){var Z=void 0;(i>0||e.hskipBeforeAndAfter)&&(Z=ar.deflt(V.pregap,p),Z!==0&&(N=Ve.makeSpan(["arraycolsep"],[]),N.style.width=_t(Z),_.push(N)));var de=[];for(n=0;n0){for(var Q=Ve.makeLineSpan("hline",r,f),le=Ve.makeLineSpan("hdashline",r,f),J=[{type:"elem",elem:u,shift:0}];h.length>0;){var ge=h.pop(),ie=ge.pos-S;ge.isDashed?J.push({type:"elem",elem:le,shift:ie}):J.push({type:"elem",elem:Q,shift:ie})}u=Ve.makeVList({positionType:"individualShift",children:J},r)}if(P.length===0)return Ve.makeSpan(["mord"],[u],r);var Te=Ve.makeVList({positionType:"individualShift",children:P},r);return Te=Ve.makeSpan(["tag"],[Te],r),Ve.makeFragment([u,Te])},"htmlBuilder"),R7e={c:"center ",l:"left ",r:"right "},$c=o(function(e,r){for(var n=[],i=new yt.MathNode("mtd",[],["mtr-glue"]),a=new yt.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var g=e.cols,y="",v=!1,x=0,b=g.length;g[0].type==="separator"&&(p+="top ",x=1),g[g.length-1].type==="separator"&&(p+="bottom ",b-=1);for(var T=x;T0?"left ":"",p+=D[D.length-1].length>0?"right ":"";for(var R=1;R-1?"alignat":"align",a=e.envName==="split",s=yf(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:H_(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var f="",d=0;d0&&m&&(v=1),n[g]={type:"align",align:y,pregap:v,postgap:0}}return s.colSeparationType=m?"align":"alignat",s},"alignedHandler");Bc({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=dw(e[0]),n=r?[e[0]]:_r(e[0],"ordgroup").body,i=n.map(function(s){var l=G_(s),u=l.text;if("lcr".indexOf(u)!==-1)return{type:"align",align:u};if(u==="|")return{type:"separator",separator:"|"};if(u===":")return{type:"separator",separator:":"};throw new vt("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return yf(t.parser,a,Y_(t.envName))},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(t){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[t.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(t.envName.charAt(t.envName.length-1)==="*"){var i=t.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new vt("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=yf(t.parser,n,Y_(t.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=yf(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=dw(e[0]),n=r?[e[0]]:_r(e[0],"ordgroup").body,i=n.map(function(s){var l=G_(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new vt("Unknown column alignment: "+u,s)});if(i.length>1)throw new vt("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=yf(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new vt("{subarray} can contain only one column");return a},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(t){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=yf(t.parser,e,Y_(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.indexOf("r")>-1?".":"\\{",right:t.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:dj,htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){ar.contains(["gather","gather*"],t.envName)&&gw(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:H_(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return yf(t.parser,e,"display")},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:dj,htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){gw(t);var e={autoTag:H_(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return yf(t.parser,e,"display")},htmlBuilder:Fc,mathmlBuilder:$c});Bc({type:"array",names:["CD"],props:{numArgs:0},handler(t){return gw(t),g7e(t.parser)},htmlBuilder:Fc,mathmlBuilder:$c});fe("\\nonumber","\\gdef\\@eqnsw{0}");fe("\\notag","\\nonumber");Pt({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new vt(t.funcName+" valid only within array environment")}});yY=hj;Pt({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];if(i.type!=="ordgroup")throw new vt("Invalid environment name",i);for(var a="",s=0;s{var r=t.font,n=e.withFont(r);return Jr(t.body,n)},"htmlBuilder$5"),mj=o((t,e)=>{var r=t.font,n=e.withFont(r);return Ln(t.body,n)},"mathmlBuilder$4"),vY={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Pt({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=lw(e[0]),a=n;return a in vY&&(a=vY[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:pj,mathmlBuilder:mj});Pt({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r}=t,n=e[0],i=ar.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:pw(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Pt({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n,breakOnTokenText:i}=t,{mode:a}=r,s=r.parseExpression(!0,i),l="math"+n.slice(1);return{type:"font",mode:a,font:l,body:{type:"ordgroup",mode:r.mode,body:s}}},"handler"),htmlBuilder:pj,mathmlBuilder:mj});gj=o((t,e)=>{var r=e;return t==="display"?r=r.id>=lr.SCRIPT.id?r.text():lr.DISPLAY:t==="text"&&r.size===lr.DISPLAY.size?r=lr.TEXT:t==="script"?r=lr.SCRIPT:t==="scriptscript"&&(r=lr.SCRIPTSCRIPT),r},"adjustStyle"),j_=o((t,e)=>{var r=gj(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=Jr(t.numer,a,e);if(t.continued){var l=8.5/e.fontMetrics().ptPerEm,u=3.5/e.fontMetrics().ptPerEm;s.height=s.height0?g=3*p:g=7*p,y=e.fontMetrics().denom1):(d>0?(m=e.fontMetrics().num2,g=p):(m=e.fontMetrics().num3,g=3*p),y=e.fontMetrics().denom2);var v;if(f){var b=e.fontMetrics().axisHeight;m-s.depth-(b+.5*d){var r=new yt.MathNode("mfrac",[Ln(t.numer,e),Ln(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=mi(t.barSize,e);r.setAttribute("linethickness",_t(n))}var i=gj(t.size,e.style);if(i.size!==e.style.size){r=new yt.MathNode("mstyle",[r]);var a=i.size===lr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(t.leftDelim!=null||t.rightDelim!=null){var s=[];if(t.leftDelim!=null){var l=new yt.MathNode("mo",[new yt.TextNode(t.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),t.rightDelim!=null){var u=new yt.MathNode("mo",[new yt.TextNode(t.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return $_(s)}return r},"mathmlBuilder$3");Pt({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1],s,l=null,u=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",u=")";break;case"\\\\bracefrac":s=!1,l="\\{",u="\\}";break;case"\\\\brackfrac":s=!1,l="[",u="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:l,rightDelim:u,size:h,barSize:null}},"handler"),htmlBuilder:j_,mathmlBuilder:X_});Pt({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Pt({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(t){var{parser:e,funcName:r,token:n}=t,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:n}}});xY=["display","text","script","scriptscript"],bY=o(function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r},"delimFromValue");Pt({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(t,e){var{parser:r}=t,n=e[4],i=e[5],a=lw(e[0]),s=a.type==="atom"&&a.family==="open"?bY(a.text):null,l=lw(e[1]),u=l.type==="atom"&&l.family==="close"?bY(l.text):null,h=_r(e[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=e[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=_r(m.body[0],"textord");p=xY[Number(g.text)]}}else m=_r(m,"textord"),p=xY[Number(m.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:f,barSize:d,leftDelim:s,rightDelim:u,size:p}},htmlBuilder:j_,mathmlBuilder:X_});Pt({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(t,e){var{parser:r,funcName:n,token:i}=t;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:_r(e[0],"size").value,token:i}}});Pt({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=cAe(_r(e[1],"infix").size),s=e[2],l=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:l,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},"handler"),htmlBuilder:j_,mathmlBuilder:X_});yj=o((t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?Jr(t.sup,e.havingStyle(r.sup()),e):Jr(t.sub,e.havingStyle(r.sub()),e),i=_r(t.base,"horizBrace")):i=_r(t,"horizBrace");var a=Jr(i.base,e.havingBaseStyle(lr.DISPLAY)),s=nh.svgSpan(i,e),l;if(i.isOver?(l=Ve.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},e),l.children[0].children[0].children[1].classes.push("svg-align")):(l=Ve.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},e),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=Ve.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e);i.isOver?l=Ve.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},e):l=Ve.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},e)}return Ve.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e)},"htmlBuilder$3"),L7e=o((t,e)=>{var r=nh.mathMLnode(t.label);return new yt.MathNode(t.isOver?"mover":"munder",[Ln(t.base,e),r])},"mathmlBuilder$2");Pt({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:e[0]}},htmlBuilder:yj,mathmlBuilder:L7e});Pt({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[1],i=_r(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:Li(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((t,e)=>{var r=Xi(t.body,e,!1);return Ve.makeAnchor(t.href,[],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=gf(t.body,e);return r instanceof ws||(r=new ws("mrow",[r])),r.setAttribute("href",t.href),r},"mathmlBuilder")});Pt({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=_r(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a{var{parser:r,funcName:n,token:i}=t,a=_r(e[0],"raw").string,s=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,u={};switch(n){case"\\htmlClass":u.class=a,l={command:"\\htmlClass",class:a};break;case"\\htmlId":u.id=a,l={command:"\\htmlId",id:a};break;case"\\htmlStyle":u.style=a,l={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),f=0;f{var r=Xi(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=Ve.makeSpan(n,r,e);for(var a in t.attributes)a!=="class"&&t.attributes.hasOwnProperty(a)&&i.setAttribute(a,t.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((t,e)=>gf(t.body,e),"mathmlBuilder")});Pt({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:Li(e[0]),mathml:Li(e[1])}},"handler"),htmlBuilder:o((t,e)=>{var r=Xi(t.html,e,!1);return Ve.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>gf(t.mathml,e),"mathmlBuilder")});b_=o(function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!r)throw new vt("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!PY(n))throw new vt("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Pt({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((t,e,r)=>{var{parser:n}=t,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=_r(r[0],"raw").string,h=u.split(","),f=0;f{var r=mi(t.height,e),n=0;t.totalheight.number>0&&(n=mi(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=mi(t.width,e));var a={height:_t(r+n)};i>0&&(a.width=_t(i)),n>0&&(a.verticalAlign=_t(-n));var s=new C_(t.src,t.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new yt.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=mi(t.height,e),i=0;if(t.totalheight.number>0&&(i=mi(t.totalheight,e)-n,r.setAttribute("valign",_t(-i))),r.setAttribute("height",_t(n+i)),t.width.number>0){var a=mi(t.width,e);r.setAttribute("width",_t(a))}return r.setAttribute("src",t.src),r},"mathmlBuilder")});Pt({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=_r(e[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):s&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(t,e){return Ve.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=mi(t.dimension,e);return new yt.SpaceNode(r)}});Pt({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((t,e)=>{var r;t.alignment==="clap"?(r=Ve.makeSpan([],[Jr(t.body,e)]),r=Ve.makeSpan(["inner"],[r],e)):r=Ve.makeSpan(["inner"],[Jr(t.body,e)]);var n=Ve.makeSpan(["fix"],[]),i=Ve.makeSpan([t.alignment],[r,n],e),a=Ve.makeSpan(["strut"]);return a.style.height=_t(i.height+i.depth),i.depth&&(a.style.verticalAlign=_t(-i.depth)),i.children.unshift(a),i=Ve.makeSpan(["thinbox"],[i],e),Ve.makeSpan(["mord","vbox"],[i],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new yt.MathNode("mpadded",[Ln(t.body,e)]);if(t.alignment!=="rlap"){var n=t.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Pt({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){var{funcName:r,parser:n}=t,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}});Pt({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new vt("Mismatched "+t.funcName)}});TY=o((t,e)=>{switch(e.style.size){case lr.DISPLAY.size:return t.display;case lr.TEXT.size:return t.text;case lr.SCRIPT.size:return t.script;case lr.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}},"chooseMathStyle");Pt({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:Li(e[0]),text:Li(e[1]),script:Li(e[2]),scriptscript:Li(e[3])}},"handler"),htmlBuilder:o((t,e)=>{var r=TY(t,e),n=Xi(r,e,!1);return Ve.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=TY(t,e);return gf(r,e)},"mathmlBuilder")});vj=o((t,e,r,n,i,a,s)=>{t=Ve.makeSpan([],[t]);var l=r&&ar.isCharacterBox(r),u,h;if(e){var f=Jr(e,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Jr(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+t.depth+s;p=Ve.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:_t(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:_t(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=t.height-s;p=Ve.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:_t(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t}]},n)}else if(h){var y=t.depth+s;p=Ve.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:_t(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var v=[p];if(u&&a!==0&&!l){var x=Ve.makeSpan(["mspace"],[],n);x.style.marginRight=_t(a),v.unshift(x)}return Ve.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),xj=["\\smallint"],cg=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=_r(t.base,"op"),i=!0):a=_r(t,"op");var s=e.style,l=!1;s.size===lr.DISPLAY.size&&a.symbol&&!ar.contains(xj,a.name)&&(l=!0);var u;if(a.symbol){var h=l?"Size2-Regular":"Size1-Regular",f="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(f=a.name.slice(1),a.name=f==="oiint"?"\\iint":"\\iiint"),u=Ve.makeSymbol(a.name,h,"math",e,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Ve.staticSvg(f+"Size"+(l?"2":"1"),e);u=Ve.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},e),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Xi(a.body,e,!0);m.length===1&&m[0]instanceof js?(u=m[0],u.classes[0]="mop"):u=Ve.makeSpan(["mop"],m,e)}else{for(var g=[],y=1;y{var r;if(t.symbol)r=new ws("mo",[ol(t.name,t.mode)]),ar.contains(xj,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new ws("mo",Xs(t.body,e));else{r=new ws("mi",[new al(t.name.slice(1))]);var n=new ws("mo",[ol("\u2061","text")]);t.parentIsSupSub?r=new ws("mrow",[r,n]):r=YY([r,n])}return r},"mathmlBuilder$1"),N7e={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Pt({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=N7e[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:cg,mathmlBuilder:k2});Pt({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:Li(n)}},"handler"),htmlBuilder:cg,mathmlBuilder:k2});M7e={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Pt({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:cg,mathmlBuilder:k2});Pt({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:cg,mathmlBuilder:k2});Pt({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=M7e[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:cg,mathmlBuilder:k2});bj=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=_r(t.base,"operatorname"),i=!0):a=_r(t,"operatorname");var s;if(a.body.length>0){for(var l=a.body.map(d=>{var p=d.text;return typeof p=="string"?{type:"textord",mode:d.mode,text:p}:d}),u=Xi(l,e.withFont("mathrm"),!0),h=0;h{for(var r=Xs(t.body,e.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new yt.TextNode(l)]}var u=new yt.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new yt.MathNode("mo",[ol("\u2061","text")]);return t.parentIsSupSub?new yt.MathNode("mrow",[u,h]):yt.newDocumentFragment([u,h])},"mathmlBuilder");Pt({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"operatorname",mode:r.mode,body:Li(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:bj,mathmlBuilder:I7e});fe("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");Rp({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?Ve.makeFragment(Xi(t.body,e,!1)):Ve.makeSpan(["mord"],Xi(t.body,e,!0),e)},mathmlBuilder(t,e){return gf(t.body,e,!0)}});Pt({type:"overline",names:["\\overline"],props:{numArgs:1},handler(t,e){var{parser:r}=t,n=e[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(t,e){var r=Jr(t.body,e.havingCrampedStyle()),n=Ve.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Ve.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return Ve.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new yt.MathNode("mo",[new yt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new yt.MathNode("mover",[Ln(t.body,e),r]);return n.setAttribute("accent","true"),n}});Pt({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"phantom",mode:r.mode,body:Li(n)}},"handler"),htmlBuilder:o((t,e)=>{var r=Xi(t.body,e.withPhantom(),!1);return Ve.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Xs(t.body,e);return new yt.MathNode("mphantom",r)},"mathmlBuilder")});Pt({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Ve.makeSpan([],[Jr(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=Xs(Li(t.body),e),n=new yt.MathNode("mphantom",r),i=new yt.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Pt({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Ve.makeSpan(["inner"],[Jr(t.body,e.withPhantom())]),n=Ve.makeSpan(["fix"],[]);return Ve.makeSpan(["mord","rlap"],[r,n],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Xs(Li(t.body),e),n=new yt.MathNode("mphantom",r),i=new yt.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Pt({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=_r(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=Jr(t.body,e),n=mi(t.dy,e);return Ve.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new yt.MathNode("mpadded",[Ln(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});Pt({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});Pt({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=_r(e[0],"size"),s=_r(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&_r(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=Ve.makeSpan(["mord","rule"],[],e),n=mi(t.width,e),i=mi(t.height,e),a=t.shift?mi(t.shift,e):0;return r.style.borderRightWidth=_t(n),r.style.borderTopWidth=_t(i),r.style.bottom=_t(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=mi(t.width,e),n=mi(t.height,e),i=t.shift?mi(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new yt.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",_t(r)),s.setAttribute("height",_t(n));var l=new yt.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",_t(i)):(l.setAttribute("height",_t(i)),l.setAttribute("depth",_t(-i))),l.setAttribute("voffset",_t(i)),l}});o(Tj,"sizingGroup");wY=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],O7e=o((t,e)=>{var r=e.havingSize(t.size);return Tj(t.body,r,e)},"htmlBuilder");Pt({type:"sizing",names:wY,props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:wY.indexOf(n)+1,body:a}},"handler"),htmlBuilder:O7e,mathmlBuilder:o((t,e)=>{var r=e.havingSize(t.size),n=Xs(t.body,r),i=new yt.MathNode("mstyle",n);return i.setAttribute("mathsize",_t(r.sizeMultiplier)),i},"mathmlBuilder")});Pt({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((t,e,r)=>{var{parser:n}=t,i=!1,a=!1,s=r[0]&&_r(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=Ve.makeSpan([],[Jr(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new yt.MathNode("mpadded",[Ln(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Pt({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n}=t,i=r[0],a=e[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(t,e){var r=Jr(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=Ve.wrapFragment(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.idr.height+r.depth+s&&(s=(s+d-r.height-r.depth)/2);var p=u.height-r.height-s-h;r.style.paddingLeft=_t(f);var m=Ve.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+p)},{type:"elem",elem:u},{type:"kern",size:h}]},e);if(t.index){var g=e.havingStyle(lr.SCRIPTSCRIPT),y=Jr(t.index,g,e),v=.6*(m.height-m.depth),x=Ve.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},e),b=Ve.makeSpan(["root"],[x]);return Ve.makeSpan(["mord","sqrt"],[b,m],e)}else return Ve.makeSpan(["mord","sqrt"],[m],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new yt.MathNode("mroot",[Ln(r,e),Ln(n,e)]):new yt.MathNode("msqrt",[Ln(r,e)])}});kY={display:lr.DISPLAY,text:lr.TEXT,script:lr.SCRIPT,scriptscript:lr.SCRIPTSCRIPT};Pt({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t,e){var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(t,e){var r=kY[t.style],n=e.havingStyle(r).withFont("");return Tj(t.body,n,e)},mathmlBuilder(t,e){var r=kY[t.style],n=e.havingStyle(r),i=Xs(t.body,n),a=new yt.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[t.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});P7e=o(function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===lr.DISPLAY.size||n.alwaysHandleSupSub);return i?cg:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===lr.DISPLAY.size||n.limits);return a?bj:null}else{if(n.type==="accent")return ar.isCharacterBox(n.base)?V_:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?yj:null}else return null}else return null},"htmlBuilderDelegate");Rp({type:"supsub",htmlBuilder(t,e){var r=P7e(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=Jr(n,e),l,u,h=e.fontMetrics(),f=0,d=0,p=n&&ar.isCharacterBox(n);if(i){var m=e.havingStyle(e.style.sup());l=Jr(i,m,e),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/e.sizeMultiplier)}if(a){var g=e.havingStyle(e.style.sub());u=Jr(a,g,e),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/e.sizeMultiplier)}var y;e.style===lr.DISPLAY?y=h.sup1:e.style.cramped?y=h.sup3:y=h.sup2;var v=e.sizeMultiplier,x=_t(.5/h.ptPerEm/v),b=null;if(u){var T=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");(s instanceof js||T)&&(b=_t(-s.italic))}var E;if(l&&u){f=Math.max(f,y,l.depth+.25*h.xHeight),d=Math.max(d,h.sub2);var w=h.defaultRuleThickness,k=4*w;if(f-l.depth-(u.height-d)0&&(f+=C,d-=C)}var D=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];E=Ve.makeVList({positionType:"individualShift",children:D},e)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var R=[{type:"elem",elem:u,marginLeft:b,marginRight:x}];E=Ve.makeVList({positionType:"shift",positionData:d,children:R},e)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),E=Ve.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:x}]},e);else throw new Error("supsub must have either sup or sub.");var O=__(s,"right")||"mord";return Ve.makeSpan([O],[s,Ve.makeSpan(["msupsub"],[E])],e)},mathmlBuilder(t,e){var r=!1,n,i;t.base&&t.base.type==="horizBrace"&&(i=!!t.sup,i===t.base.isOver&&(r=!0,n=t.base.isOver)),t.base&&(t.base.type==="op"||t.base.type==="operatorname")&&(t.base.parentIsSupSub=!0);var a=[Ln(t.base,e)];t.sub&&a.push(Ln(t.sub,e)),t.sup&&a.push(Ln(t.sup,e));var s;if(r)s=n?"mover":"munder";else if(t.sub)if(t.sup){var h=t.base;h&&h.type==="op"&&h.limits&&e.style===lr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(e.style===lr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=t.base;u&&u.type==="op"&&u.limits&&(e.style===lr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||e.style===lr.DISPLAY)?s="munder":s="msub"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===lr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===lr.DISPLAY)?s="mover":s="msup"}return new yt.MathNode(s,a)}});Rp({type:"atom",htmlBuilder(t,e){return Ve.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new yt.MathNode("mo",[ol(t.text,t.mode)]);if(t.family==="bin"){var n=z_(t,e);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else t.family==="punct"?r.setAttribute("separator","true"):(t.family==="open"||t.family==="close")&&r.setAttribute("stretchy","false");return r}});wj={mi:"italic",mn:"normal",mtext:"normal"};Rp({type:"mathord",htmlBuilder(t,e){return Ve.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new yt.MathNode("mi",[ol(t.text,t.mode,e)]),n=z_(t,e)||"italic";return n!==wj[r.type]&&r.setAttribute("mathvariant",n),r}});Rp({type:"textord",htmlBuilder(t,e){return Ve.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=ol(t.text,t.mode,e),n=z_(t,e)||"normal",i;return t.mode==="text"?i=new yt.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new yt.MathNode("mn",[r]):t.text==="\\prime"?i=new yt.MathNode("mo",[r]):i=new yt.MathNode("mi",[r]),n!==wj[i.type]&&i.setAttribute("mathvariant",n),i}});T_={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},w_={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};Rp({type:"spacing",htmlBuilder(t,e){if(w_.hasOwnProperty(t.text)){var r=w_[t.text].className||"";if(t.mode==="text"){var n=Ve.makeOrd(t,e,"textord");return n.classes.push(r),n}else return Ve.makeSpan(["mspace",r],[Ve.mathsym(t.text,t.mode,e)],e)}else{if(T_.hasOwnProperty(t.text))return Ve.makeSpan(["mspace",T_[t.text]],[],e);throw new vt('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(w_.hasOwnProperty(t.text))r=new yt.MathNode("mtext",[new yt.TextNode("\xA0")]);else{if(T_.hasOwnProperty(t.text))return new yt.MathNode("mspace");throw new vt('Unknown type of space "'+t.text+'"')}return r}});SY=o(()=>{var t=new yt.MathNode("mtd",[]);return t.setAttribute("width","50%"),t},"pad");Rp({type:"tag",mathmlBuilder(t,e){var r=new yt.MathNode("mtable",[new yt.MathNode("mtr",[SY(),new yt.MathNode("mtd",[gf(t.body,e)]),SY(),new yt.MathNode("mtd",[gf(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});EY={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},CY={"\\textbf":"textbf","\\textmd":"textmd"},B7e={"\\textit":"textit","\\textup":"textup"},AY=o((t,e)=>{var r=t.font;if(r){if(EY[r])return e.withTextFontFamily(EY[r]);if(CY[r])return e.withTextFontWeight(CY[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(B7e[r])},"optionsWithFont");Pt({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"text",mode:r.mode,body:Li(i),font:n}},htmlBuilder(t,e){var r=AY(t,e),n=Xi(t.body,r,!0);return Ve.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=AY(t,e);return gf(t.body,r)}});Pt({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"underline",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Jr(t.body,e),n=Ve.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Ve.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},e);return Ve.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new yt.MathNode("mo",[new yt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new yt.MathNode("munder",[Ln(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});Pt({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"vcenter",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Jr(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Ve.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new yt.MathNode("mpadded",[Ln(t.body,e)],["vcenter"])}});Pt({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new vt("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=_Y(t),n=[],i=e.havingStyle(e.style.text()),a=0;at.body.replace(/ /g,t.star?"\u2423":"\xA0"),"makeVerb"),pf=WY,kj=`[ \r + ]`,F7e="\\\\[a-zA-Z@]+",$7e="\\\\[^\uD800-\uDFFF]",z7e="("+F7e+")"+kj+"*",G7e=`\\\\( |[ \r ]+ -?)[ \r ]*`,iA="[\u0300-\u036F]",Bwe=new RegExp(iA+"+$"),Fwe="("+$U+"+)|"+(Pwe+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(iA+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(iA+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+Owe)+("|"+Iwe+")"),C3=class{static{o(this,"Lexer")}constructor(e,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=r,this.tokenRegex=new RegExp(Fwe,"g"),this.catcodes={"%":14,"~":13}}setCatcode(e,r){this.catcodes[e]=r}lex(){var e=this.input,r=this.tokenRegex.lastIndex;if(r===e.length)return new Do("EOF",new to(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new gt("Unexpected character: '"+e[r]+"'",new Do(e[r],new to(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=e.indexOf(` -`,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=a+1,this.lex()}return new Do(i,new to(this,r,this.tokenRegex.lastIndex))}},aA=class{static{o(this,"Namespace")}constructor(e,r){e===void 0&&(e={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new gt("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var r in e)e.hasOwnProperty(r)&&(e[r]==null?delete this.current[r]:this.current[r]=e[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i0&&(this.undefStack[this.undefStack.length-1][e]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}r==null?delete this.current[e]:this.current[e]=r}},$we=_U;ce("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}});ce("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}});ce("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}});ce("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}});ce("\\@ifnextchar",function(t){var e=t.consumeArgs(3);t.consumeSpaces();var r=t.future();return e[0].length===1&&e[0][0].text===r.text?{tokens:e[1],numArgs:0}:{tokens:e[2],numArgs:0}});ce("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");ce("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});qV={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};ce("\\char",function(t){var e=t.popToken(),r,n="";if(e.text==="'")r=8,e=t.popToken();else if(e.text==='"')r=16,e=t.popToken();else if(e.text==="`")if(e=t.popToken(),e.text[0]==="\\")n=e.text.charCodeAt(1);else{if(e.text==="EOF")throw new gt("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=qV[e.text],n==null||n>=r)throw new gt("Invalid base-"+r+" digit "+e.text);for(var i;(i=qV[t.future().text])!=null&&i{var i=t.consumeArg().tokens;if(i.length!==1)throw new gt("\\newcommand's first argument must be a macro name");var a=i[0].text,s=t.isDefined(a);if(s&&!e)throw new gt("\\newcommand{"+a+"} attempting to redefine "+(a+"; use \\renewcommand"));if(!s&&!r)throw new gt("\\renewcommand{"+a+"} when command "+a+" does not yet exist; use \\newcommand");var l=0;if(i=t.consumeArg().tokens,i.length===1&&i[0].text==="["){for(var u="",h=t.expandNextToken();h.text!=="]"&&h.text!=="EOF";)u+=h.text,h=t.expandNextToken();if(!u.match(/^\s*[0-9]+\s*$/))throw new gt("Invalid number of arguments: "+u);l=parseInt(u),i=t.consumeArg().tokens}return s&&n||t.macros.set(a,{tokens:i,numArgs:l}),""},"newcommand");ce("\\newcommand",t=>TA(t,!1,!0,!1));ce("\\renewcommand",t=>TA(t,!0,!1,!1));ce("\\providecommand",t=>TA(t,!0,!0,!0));ce("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""});ce("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""});ce("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),xh[r],Nn.math[r],Nn.text[r]),""});ce("\\bgroup","{");ce("\\egroup","}");ce("~","\\nobreakspace");ce("\\lq","`");ce("\\rq","'");ce("\\aa","\\r a");ce("\\AA","\\r A");ce("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");ce("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");ce("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");ce("\u212C","\\mathscr{B}");ce("\u2130","\\mathscr{E}");ce("\u2131","\\mathscr{F}");ce("\u210B","\\mathscr{H}");ce("\u2110","\\mathscr{I}");ce("\u2112","\\mathscr{L}");ce("\u2133","\\mathscr{M}");ce("\u211B","\\mathscr{R}");ce("\u212D","\\mathfrak{C}");ce("\u210C","\\mathfrak{H}");ce("\u2128","\\mathfrak{Z}");ce("\\Bbbk","\\Bbb{k}");ce("\xB7","\\cdotp");ce("\\llap","\\mathllap{\\textrm{#1}}");ce("\\rlap","\\mathrlap{\\textrm{#1}}");ce("\\clap","\\mathclap{\\textrm{#1}}");ce("\\mathstrut","\\vphantom{(}");ce("\\underbar","\\underline{\\text{#1}}");ce("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');ce("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");ce("\\ne","\\neq");ce("\u2260","\\neq");ce("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");ce("\u2209","\\notin");ce("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");ce("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");ce("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");ce("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");ce("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");ce("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");ce("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");ce("\u27C2","\\perp");ce("\u203C","\\mathclose{!\\mkern-0.8mu!}");ce("\u220C","\\notni");ce("\u231C","\\ulcorner");ce("\u231D","\\urcorner");ce("\u231E","\\llcorner");ce("\u231F","\\lrcorner");ce("\xA9","\\copyright");ce("\xAE","\\textregistered");ce("\uFE0F","\\textregistered");ce("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');ce("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');ce("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');ce("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');ce("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");ce("\u22EE","\\vdots");ce("\\varGamma","\\mathit{\\Gamma}");ce("\\varDelta","\\mathit{\\Delta}");ce("\\varTheta","\\mathit{\\Theta}");ce("\\varLambda","\\mathit{\\Lambda}");ce("\\varXi","\\mathit{\\Xi}");ce("\\varPi","\\mathit{\\Pi}");ce("\\varSigma","\\mathit{\\Sigma}");ce("\\varUpsilon","\\mathit{\\Upsilon}");ce("\\varPhi","\\mathit{\\Phi}");ce("\\varPsi","\\mathit{\\Psi}");ce("\\varOmega","\\mathit{\\Omega}");ce("\\substack","\\begin{subarray}{c}#1\\end{subarray}");ce("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");ce("\\boxed","\\fbox{$\\displaystyle{#1}$}");ce("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");ce("\\implies","\\DOTSB\\;\\Longrightarrow\\;");ce("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");ce("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");ce("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");WV={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};ce("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in WV?e=WV[r]:(r.slice(0,4)==="\\not"||r in Nn.math&&er.contains(["bin","rel"],Nn.math[r].group))&&(e="\\dotsb"),e});wA={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};ce("\\dotso",function(t){var e=t.future().text;return e in wA?"\\ldots\\,":"\\ldots"});ce("\\dotsc",function(t){var e=t.future().text;return e in wA&&e!==","?"\\ldots\\,":"\\ldots"});ce("\\cdots",function(t){var e=t.future().text;return e in wA?"\\@cdots\\,":"\\@cdots"});ce("\\dotsb","\\cdots");ce("\\dotsm","\\cdots");ce("\\dotsi","\\!\\cdots");ce("\\dotsx","\\ldots\\,");ce("\\DOTSI","\\relax");ce("\\DOTSB","\\relax");ce("\\DOTSX","\\relax");ce("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");ce("\\,","\\tmspace+{3mu}{.1667em}");ce("\\thinspace","\\,");ce("\\>","\\mskip{4mu}");ce("\\:","\\tmspace+{4mu}{.2222em}");ce("\\medspace","\\:");ce("\\;","\\tmspace+{5mu}{.2777em}");ce("\\thickspace","\\;");ce("\\!","\\tmspace-{3mu}{.1667em}");ce("\\negthinspace","\\!");ce("\\negmedspace","\\tmspace-{4mu}{.2222em}");ce("\\negthickspace","\\tmspace-{5mu}{.277em}");ce("\\enspace","\\kern.5em ");ce("\\enskip","\\hskip.5em\\relax");ce("\\quad","\\hskip1em\\relax");ce("\\qquad","\\hskip2em\\relax");ce("\\tag","\\@ifstar\\tag@literal\\tag@paren");ce("\\tag@paren","\\tag@literal{({#1})}");ce("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new gt("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});ce("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");ce("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");ce("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");ce("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");ce("\\newline","\\\\\\relax");ce("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");zU=St(Ql["Main-Regular"][84][1]-.7*Ql["Main-Regular"][65][1]);ce("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+zU+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");ce("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+zU+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");ce("\\hspace","\\@ifstar\\@hspacer\\@hspace");ce("\\@hspace","\\hskip #1\\relax");ce("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");ce("\\ordinarycolon",":");ce("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");ce("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');ce("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');ce("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');ce("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');ce("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');ce("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');ce("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');ce("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');ce("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');ce("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');ce("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');ce("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');ce("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');ce("\u2237","\\dblcolon");ce("\u2239","\\eqcolon");ce("\u2254","\\coloneqq");ce("\u2255","\\eqqcolon");ce("\u2A74","\\Coloneqq");ce("\\ratio","\\vcentcolon");ce("\\coloncolon","\\dblcolon");ce("\\colonequals","\\coloneqq");ce("\\coloncolonequals","\\Coloneqq");ce("\\equalscolon","\\eqqcolon");ce("\\equalscoloncolon","\\Eqqcolon");ce("\\colonminus","\\coloneq");ce("\\coloncolonminus","\\Coloneq");ce("\\minuscolon","\\eqcolon");ce("\\minuscoloncolon","\\Eqcolon");ce("\\coloncolonapprox","\\Colonapprox");ce("\\coloncolonsim","\\Colonsim");ce("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");ce("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");ce("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");ce("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");ce("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");ce("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");ce("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");ce("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");ce("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");ce("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");ce("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");ce("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");ce("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");ce("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");ce("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");ce("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");ce("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");ce("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");ce("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");ce("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");ce("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");ce("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");ce("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");ce("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");ce("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");ce("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");ce("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");ce("\\imath","\\html@mathml{\\@imath}{\u0131}");ce("\\jmath","\\html@mathml{\\@jmath}{\u0237}");ce("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");ce("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");ce("\u27E6","\\llbracket");ce("\u27E7","\\rrbracket");ce("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");ce("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");ce("\u2983","\\lBrace");ce("\u2984","\\rBrace");ce("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");ce("\u29B5","\\minuso");ce("\\darr","\\downarrow");ce("\\dArr","\\Downarrow");ce("\\Darr","\\Downarrow");ce("\\lang","\\langle");ce("\\rang","\\rangle");ce("\\uarr","\\uparrow");ce("\\uArr","\\Uparrow");ce("\\Uarr","\\Uparrow");ce("\\N","\\mathbb{N}");ce("\\R","\\mathbb{R}");ce("\\Z","\\mathbb{Z}");ce("\\alef","\\aleph");ce("\\alefsym","\\aleph");ce("\\Alpha","\\mathrm{A}");ce("\\Beta","\\mathrm{B}");ce("\\bull","\\bullet");ce("\\Chi","\\mathrm{X}");ce("\\clubs","\\clubsuit");ce("\\cnums","\\mathbb{C}");ce("\\Complex","\\mathbb{C}");ce("\\Dagger","\\ddagger");ce("\\diamonds","\\diamondsuit");ce("\\empty","\\emptyset");ce("\\Epsilon","\\mathrm{E}");ce("\\Eta","\\mathrm{H}");ce("\\exist","\\exists");ce("\\harr","\\leftrightarrow");ce("\\hArr","\\Leftrightarrow");ce("\\Harr","\\Leftrightarrow");ce("\\hearts","\\heartsuit");ce("\\image","\\Im");ce("\\infin","\\infty");ce("\\Iota","\\mathrm{I}");ce("\\isin","\\in");ce("\\Kappa","\\mathrm{K}");ce("\\larr","\\leftarrow");ce("\\lArr","\\Leftarrow");ce("\\Larr","\\Leftarrow");ce("\\lrarr","\\leftrightarrow");ce("\\lrArr","\\Leftrightarrow");ce("\\Lrarr","\\Leftrightarrow");ce("\\Mu","\\mathrm{M}");ce("\\natnums","\\mathbb{N}");ce("\\Nu","\\mathrm{N}");ce("\\Omicron","\\mathrm{O}");ce("\\plusmn","\\pm");ce("\\rarr","\\rightarrow");ce("\\rArr","\\Rightarrow");ce("\\Rarr","\\Rightarrow");ce("\\real","\\Re");ce("\\reals","\\mathbb{R}");ce("\\Reals","\\mathbb{R}");ce("\\Rho","\\mathrm{P}");ce("\\sdot","\\cdot");ce("\\sect","\\S");ce("\\spades","\\spadesuit");ce("\\sub","\\subset");ce("\\sube","\\subseteq");ce("\\supe","\\supseteq");ce("\\Tau","\\mathrm{T}");ce("\\thetasym","\\vartheta");ce("\\weierp","\\wp");ce("\\Zeta","\\mathrm{Z}");ce("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");ce("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");ce("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");ce("\\bra","\\mathinner{\\langle{#1}|}");ce("\\ket","\\mathinner{|{#1}\\rangle}");ce("\\braket","\\mathinner{\\langle{#1}\\rangle}");ce("\\Bra","\\left\\langle#1\\right|");ce("\\Ket","\\left|#1\\right\\rangle");GU=o(t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,s=e.macros.get("|"),l=e.macros.get("\\|");e.macros.beginGroup();var u=o(d=>p=>{t&&(p.macros.set("|",s),i.length&&p.macros.set("\\|",l));var m=d;if(!d&&i.length){var g=p.future();g.text==="|"&&(p.popToken(),m=!0)}return{tokens:m?i:n,numArgs:0}},"midMacro");e.macros.set("|",u(!1)),i.length&&e.macros.set("\\|",u(!0));var h=e.consumeArg().tokens,f=e.expandTokens([...a,...h,...r]);return e.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");ce("\\bra@ket",GU(!1));ce("\\bra@set",GU(!0));ce("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");ce("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");ce("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");ce("\\angln","{\\angl n}");ce("\\blue","\\textcolor{##6495ed}{#1}");ce("\\orange","\\textcolor{##ffa500}{#1}");ce("\\pink","\\textcolor{##ff00af}{#1}");ce("\\red","\\textcolor{##df0030}{#1}");ce("\\green","\\textcolor{##28ae7b}{#1}");ce("\\gray","\\textcolor{gray}{#1}");ce("\\purple","\\textcolor{##9d38bd}{#1}");ce("\\blueA","\\textcolor{##ccfaff}{#1}");ce("\\blueB","\\textcolor{##80f6ff}{#1}");ce("\\blueC","\\textcolor{##63d9ea}{#1}");ce("\\blueD","\\textcolor{##11accd}{#1}");ce("\\blueE","\\textcolor{##0c7f99}{#1}");ce("\\tealA","\\textcolor{##94fff5}{#1}");ce("\\tealB","\\textcolor{##26edd5}{#1}");ce("\\tealC","\\textcolor{##01d1c1}{#1}");ce("\\tealD","\\textcolor{##01a995}{#1}");ce("\\tealE","\\textcolor{##208170}{#1}");ce("\\greenA","\\textcolor{##b6ffb0}{#1}");ce("\\greenB","\\textcolor{##8af281}{#1}");ce("\\greenC","\\textcolor{##74cf70}{#1}");ce("\\greenD","\\textcolor{##1fab54}{#1}");ce("\\greenE","\\textcolor{##0d923f}{#1}");ce("\\goldA","\\textcolor{##ffd0a9}{#1}");ce("\\goldB","\\textcolor{##ffbb71}{#1}");ce("\\goldC","\\textcolor{##ff9c39}{#1}");ce("\\goldD","\\textcolor{##e07d10}{#1}");ce("\\goldE","\\textcolor{##a75a05}{#1}");ce("\\redA","\\textcolor{##fca9a9}{#1}");ce("\\redB","\\textcolor{##ff8482}{#1}");ce("\\redC","\\textcolor{##f9685d}{#1}");ce("\\redD","\\textcolor{##e84d39}{#1}");ce("\\redE","\\textcolor{##bc2612}{#1}");ce("\\maroonA","\\textcolor{##ffbde0}{#1}");ce("\\maroonB","\\textcolor{##ff92c6}{#1}");ce("\\maroonC","\\textcolor{##ed5fa6}{#1}");ce("\\maroonD","\\textcolor{##ca337c}{#1}");ce("\\maroonE","\\textcolor{##9e034e}{#1}");ce("\\purpleA","\\textcolor{##ddd7ff}{#1}");ce("\\purpleB","\\textcolor{##c6b9fc}{#1}");ce("\\purpleC","\\textcolor{##aa87ff}{#1}");ce("\\purpleD","\\textcolor{##7854ab}{#1}");ce("\\purpleE","\\textcolor{##543b78}{#1}");ce("\\mintA","\\textcolor{##f5f9e8}{#1}");ce("\\mintB","\\textcolor{##edf2df}{#1}");ce("\\mintC","\\textcolor{##e0e5cc}{#1}");ce("\\grayA","\\textcolor{##f6f7f7}{#1}");ce("\\grayB","\\textcolor{##f0f1f2}{#1}");ce("\\grayC","\\textcolor{##e3e5e6}{#1}");ce("\\grayD","\\textcolor{##d6d8da}{#1}");ce("\\grayE","\\textcolor{##babec2}{#1}");ce("\\grayF","\\textcolor{##888d93}{#1}");ce("\\grayG","\\textcolor{##626569}{#1}");ce("\\grayH","\\textcolor{##3b3e40}{#1}");ce("\\grayI","\\textcolor{##21242c}{#1}");ce("\\kaBlue","\\textcolor{##314453}{#1}");ce("\\kaGreen","\\textcolor{##71B307}{#1}");VU={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},sA=class{static{o(this,"MacroExpander")}constructor(e,r,n){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=r,this.expansionCount=0,this.feed(e),this.macros=new aA($we,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new C3(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var r,n,i;if(e){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new Do("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var e=this.future();if(e.text===" ")this.stack.pop();else break}}consumeArg(e){var r=[],n=e&&e.length>0;n||this.consumeSpaces();var i=this.future(),a,s=0,l=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new gt("Extra }",a)}else if(a.text==="EOF")throw new gt("Unexpected end of input in a macro argument, expected '"+(e&&n?e[l]:"}")+"'",a);if(e&&n)if((s===0||s===1&&e[l]==="{")&&a.text===e[l]){if(++l,l===e.length){r.splice(-l,l);break}}else l=0}while(s!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(e,r){if(r){if(r.length!==e+1)throw new gt("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new gt("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||e&&i.unexpandable){if(e&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new gt("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var l=a.length-1;l>=0;--l){var u=a[l];if(u.text==="#"){if(l===0)throw new gt("Incomplete placeholder at end of macro body",u);if(u=a[--l],u.text==="#")a.splice(l+1,1);else if(/^[1-9]$/.test(u.text))a.splice(l,2,...s[+u.text-1]);else throw new gt("Not a valid argument number",u)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new Do(e)]):void 0}expandTokens(e){var r=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(e){var r=this.expandMacro(e);return r&&r.map(n=>n.text).join("")}_getExpansion(e){var r=this.macros.get(e);if(r==null)return r;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var l=new C3(i,this.settings),u=[],h=l.lex();h.text!=="EOF";)u.push(h),h=l.lex();u.reverse();var f={tokens:u,numArgs:a};return f}return i}isDefined(e){return this.macros.has(e)||xh.hasOwnProperty(e)||Nn.math.hasOwnProperty(e)||Nn.text.hasOwnProperty(e)||VU.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:xh.hasOwnProperty(e)&&!xh[e].primitive}},YV=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,v3=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),X7={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},XV={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},A3=class t{static{o(this,"Parser")}constructor(e,r){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new sA(e,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new gt("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var r=this.nextToken;this.consume(),this.gullet.pushToken(new Do("}")),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(e,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(t.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||e&&xh[i.text]&&xh[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(e){for(var r=-1,n,i=0;i=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var l=Nn[this.mode][r].group,u=to.range(e),h;if(LTe.hasOwnProperty(l)){var f=l;h={type:"atom",mode:this.mode,family:f,loc:u,text:r}}else h={type:l,mode:this.mode,loc:u,text:r};s=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&(KV(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),e)),s={type:"textord",mode:"text",loc:to.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d{e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),yh.addHook("afterSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}var pd,Gwe,Vwe,JU,QU,sr,Hwe,qwe,Wwe,Ywe,eH,md,vr,Xwe,jwe,rc,SA,Kwe,Qwe,ZU,O3,kn,gd,Zwe,kh,tt,gr=M(()=>{"use strict";O7();pd=//gi,Gwe=o(t=>t?eH(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),Vwe=(()=>{let t=!1;return()=>{t||(Uwe(),t=!0)}})();o(Uwe,"setupDompurifyHooks");JU=o(t=>(Vwe(),yh.sanitize(t)),"removeScript"),QU=o((t,e)=>{if(e.flowchart?.htmlLabels!==!1){let r=e.securityLevel;r==="antiscript"||r==="strict"?t=JU(t):r!=="loose"&&(t=eH(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=Ywe(t))}return t},"sanitizeMore"),sr=o((t,e)=>t&&(e.dompurifyConfig?t=yh.sanitize(QU(t,e),e.dompurifyConfig).toString():t=yh.sanitize(QU(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),Hwe=o((t,e)=>typeof t=="string"?sr(t,e):t.flat().map(r=>sr(r,e)),"sanitizeTextOrArray"),qwe=o(t=>pd.test(t),"hasBreaks"),Wwe=o(t=>t.split(pd),"splitBreaks"),Ywe=o(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),eH=o(t=>t.replace(pd,"#br#"),"breakToPlaceholder"),md=o(t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=CSS.escape(e)),e},"getUrl"),vr=o(t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),Xwe=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.max(...e)},"getMax"),jwe=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.min(...e)},"getMin"),rc=o(function(t){let e=t.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,t.split(e).length-1),"countOccurrence"),Kwe=o((t,e)=>{let r=SA(t,"~"),n=SA(e,"~");return r===1&&n===1},"shouldCombineSets"),Qwe=o(t=>{let e=SA(t,"~"),r=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),r=!0);let n=[...t],i=n.indexOf("~"),a=n.lastIndexOf("~");for(;i!==-1&&a!==-1&&i!==a;)n[i]="<",n[a]=">",i=n.indexOf("~"),a=n.lastIndexOf("~");return r&&n.unshift("~"),n.join("")},"processSet"),ZU=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),O3=/\$\$(.*)\$\$/g,kn=o(t=>(t.match(O3)?.length??0)>0,"hasKatex"),gd=o(async(t,e)=>{let r=document.createElement("div");r.innerHTML=await kh(t,e),r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",r);let i={width:r.clientWidth,height:r.clientHeight};return r.remove(),i},"calculateMathMLDimensions"),Zwe=o(async(t,e)=>{if(!kn(t))return t;if(!(ZU()||e.legacyMathML||e.forceLegacyMathML))return t.replace(O3,"MathML is unsupported in this environment.");{let{default:r}=await Promise.resolve().then(()=>(KU(),jU)),n=e.forceLegacyMathML||!ZU()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(pd).map(i=>kn(i)?`
${i}
`:`
${i}
`).join("").replace(O3,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))}return t.replace(O3,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")},"renderKatexUnsanitized"),kh=o(async(t,e)=>sr(await Zwe(t,e),e),"renderKatexSanitized"),tt={getRows:Gwe,sanitizeText:sr,sanitizeTextOrArray:Hwe,hasBreaks:qwe,splitBreaks:Wwe,lineBreakRegex:pd,removeScript:JU,getUrl:md,evaluate:vr,getMax:Xwe,getMin:jwe}});var AA,CA,tH,P3,rH,nH,_s,nc=M(()=>{"use strict";cG();qn();gr();pt();AA={body:'?',height:80,width:80},CA=new Map,tH=new Map,P3=o(t=>{for(let e of t){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(X.debug("Registering icon pack:",e.name),"loader"in e)tH.set(e.name,e.loader);else if("icons"in e)CA.set(e.name,e.icons);else throw X.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),rH=o(async(t,e)=>{let r=r7(t,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${t}`);let n=r.prefix||e;if(!n)throw new Error(`Icon name must contain a prefix: ${t}`);let i=CA.get(n);if(!i){let s=tH.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},CA.set(n,i)}catch(l){throw X.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=i7(i,r.name);if(!a)throw new Error(`Icon not found: ${t}`);return a},"getRegisteredIconData"),nH=o(async t=>{try{return await rH(t),!0}catch{return!1}},"isIconAvailable"),_s=o(async(t,e,r)=>{let n;try{n=await rH(t,e?.fallbackPrefix)}catch(s){X.error(s),n=AA}let i=s7(n,e),a=l7(o7(i.body),{...i.attributes,...r});return sr(a,Qt())},"getIconSVG")});function B3(t){for(var e=[],r=1;r0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i0&&(this.undefStack[this.undefStack.length-1][e]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}r==null?delete this.current[e]:this.current[e]=r}},U7e=fj;fe("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}});fe("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}});fe("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}});fe("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}});fe("\\@ifnextchar",function(t){var e=t.consumeArgs(3);t.consumeSpaces();var r=t.future();return e[0].length===1&&e[0][0].text===r.text?{tokens:e[1],numArgs:0}:{tokens:e[2],numArgs:0}});fe("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");fe("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});DY={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};fe("\\char",function(t){var e=t.popToken(),r,n="";if(e.text==="'")r=8,e=t.popToken();else if(e.text==='"')r=16,e=t.popToken();else if(e.text==="`")if(e=t.popToken(),e.text[0]==="\\")n=e.text.charCodeAt(1);else{if(e.text==="EOF")throw new vt("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=DY[e.text],n==null||n>=r)throw new vt("Invalid base-"+r+" digit "+e.text);for(var i;(i=DY[t.future().text])!=null&&i{var i=t.consumeArg().tokens;if(i.length!==1)throw new vt("\\newcommand's first argument must be a macro name");var a=i[0].text,s=t.isDefined(a);if(s&&!e)throw new vt("\\newcommand{"+a+"} attempting to redefine "+(a+"; use \\renewcommand"));if(!s&&!r)throw new vt("\\renewcommand{"+a+"} when command "+a+" does not yet exist; use \\newcommand");var l=0;if(i=t.consumeArg().tokens,i.length===1&&i[0].text==="["){for(var u="",h=t.expandNextToken();h.text!=="]"&&h.text!=="EOF";)u+=h.text,h=t.expandNextToken();if(!u.match(/^\s*[0-9]+\s*$/))throw new vt("Invalid number of arguments: "+u);l=parseInt(u),i=t.consumeArg().tokens}return s&&n||t.macros.set(a,{tokens:i,numArgs:l}),""},"newcommand");fe("\\newcommand",t=>K_(t,!1,!0,!1));fe("\\renewcommand",t=>K_(t,!0,!1,!1));fe("\\providecommand",t=>K_(t,!0,!0,!0));fe("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""});fe("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""});fe("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),pf[r],zn.math[r],zn.text[r]),""});fe("\\bgroup","{");fe("\\egroup","}");fe("~","\\nobreakspace");fe("\\lq","`");fe("\\rq","'");fe("\\aa","\\r a");fe("\\AA","\\r A");fe("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");fe("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");fe("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");fe("\u212C","\\mathscr{B}");fe("\u2130","\\mathscr{E}");fe("\u2131","\\mathscr{F}");fe("\u210B","\\mathscr{H}");fe("\u2110","\\mathscr{I}");fe("\u2112","\\mathscr{L}");fe("\u2133","\\mathscr{M}");fe("\u211B","\\mathscr{R}");fe("\u212D","\\mathfrak{C}");fe("\u210C","\\mathfrak{H}");fe("\u2128","\\mathfrak{Z}");fe("\\Bbbk","\\Bbb{k}");fe("\xB7","\\cdotp");fe("\\llap","\\mathllap{\\textrm{#1}}");fe("\\rlap","\\mathrlap{\\textrm{#1}}");fe("\\clap","\\mathclap{\\textrm{#1}}");fe("\\mathstrut","\\vphantom{(}");fe("\\underbar","\\underline{\\text{#1}}");fe("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');fe("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");fe("\\ne","\\neq");fe("\u2260","\\neq");fe("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");fe("\u2209","\\notin");fe("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");fe("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");fe("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");fe("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");fe("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");fe("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");fe("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");fe("\u27C2","\\perp");fe("\u203C","\\mathclose{!\\mkern-0.8mu!}");fe("\u220C","\\notni");fe("\u231C","\\ulcorner");fe("\u231D","\\urcorner");fe("\u231E","\\llcorner");fe("\u231F","\\lrcorner");fe("\xA9","\\copyright");fe("\xAE","\\textregistered");fe("\uFE0F","\\textregistered");fe("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');fe("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');fe("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');fe("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');fe("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");fe("\u22EE","\\vdots");fe("\\varGamma","\\mathit{\\Gamma}");fe("\\varDelta","\\mathit{\\Delta}");fe("\\varTheta","\\mathit{\\Theta}");fe("\\varLambda","\\mathit{\\Lambda}");fe("\\varXi","\\mathit{\\Xi}");fe("\\varPi","\\mathit{\\Pi}");fe("\\varSigma","\\mathit{\\Sigma}");fe("\\varUpsilon","\\mathit{\\Upsilon}");fe("\\varPhi","\\mathit{\\Phi}");fe("\\varPsi","\\mathit{\\Psi}");fe("\\varOmega","\\mathit{\\Omega}");fe("\\substack","\\begin{subarray}{c}#1\\end{subarray}");fe("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");fe("\\boxed","\\fbox{$\\displaystyle{#1}$}");fe("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");fe("\\implies","\\DOTSB\\;\\Longrightarrow\\;");fe("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");fe("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");fe("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");RY={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};fe("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in RY?e=RY[r]:(r.slice(0,4)==="\\not"||r in zn.math&&ar.contains(["bin","rel"],zn.math[r].group))&&(e="\\dotsb"),e});Q_={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};fe("\\dotso",function(t){var e=t.future().text;return e in Q_?"\\ldots\\,":"\\ldots"});fe("\\dotsc",function(t){var e=t.future().text;return e in Q_&&e!==","?"\\ldots\\,":"\\ldots"});fe("\\cdots",function(t){var e=t.future().text;return e in Q_?"\\@cdots\\,":"\\@cdots"});fe("\\dotsb","\\cdots");fe("\\dotsm","\\cdots");fe("\\dotsi","\\!\\cdots");fe("\\dotsx","\\ldots\\,");fe("\\DOTSI","\\relax");fe("\\DOTSB","\\relax");fe("\\DOTSX","\\relax");fe("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");fe("\\,","\\tmspace+{3mu}{.1667em}");fe("\\thinspace","\\,");fe("\\>","\\mskip{4mu}");fe("\\:","\\tmspace+{4mu}{.2222em}");fe("\\medspace","\\:");fe("\\;","\\tmspace+{5mu}{.2777em}");fe("\\thickspace","\\;");fe("\\!","\\tmspace-{3mu}{.1667em}");fe("\\negthinspace","\\!");fe("\\negmedspace","\\tmspace-{4mu}{.2222em}");fe("\\negthickspace","\\tmspace-{5mu}{.277em}");fe("\\enspace","\\kern.5em ");fe("\\enskip","\\hskip.5em\\relax");fe("\\quad","\\hskip1em\\relax");fe("\\qquad","\\hskip2em\\relax");fe("\\tag","\\@ifstar\\tag@literal\\tag@paren");fe("\\tag@paren","\\tag@literal{({#1})}");fe("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new vt("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});fe("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");fe("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");fe("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");fe("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");fe("\\newline","\\\\\\relax");fe("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");Sj=_t(Oc["Main-Regular"][84][1]-.7*Oc["Main-Regular"][65][1]);fe("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+Sj+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");fe("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+Sj+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");fe("\\hspace","\\@ifstar\\@hspacer\\@hspace");fe("\\@hspace","\\hskip #1\\relax");fe("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");fe("\\ordinarycolon",":");fe("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");fe("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');fe("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');fe("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');fe("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');fe("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');fe("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');fe("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');fe("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');fe("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');fe("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');fe("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');fe("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');fe("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');fe("\u2237","\\dblcolon");fe("\u2239","\\eqcolon");fe("\u2254","\\coloneqq");fe("\u2255","\\eqqcolon");fe("\u2A74","\\Coloneqq");fe("\\ratio","\\vcentcolon");fe("\\coloncolon","\\dblcolon");fe("\\colonequals","\\coloneqq");fe("\\coloncolonequals","\\Coloneqq");fe("\\equalscolon","\\eqqcolon");fe("\\equalscoloncolon","\\Eqqcolon");fe("\\colonminus","\\coloneq");fe("\\coloncolonminus","\\Coloneq");fe("\\minuscolon","\\eqcolon");fe("\\minuscoloncolon","\\Eqcolon");fe("\\coloncolonapprox","\\Colonapprox");fe("\\coloncolonsim","\\Colonsim");fe("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");fe("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");fe("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");fe("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");fe("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");fe("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");fe("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");fe("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");fe("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");fe("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");fe("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");fe("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");fe("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");fe("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");fe("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");fe("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");fe("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");fe("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");fe("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");fe("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");fe("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");fe("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");fe("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");fe("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");fe("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");fe("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");fe("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");fe("\\imath","\\html@mathml{\\@imath}{\u0131}");fe("\\jmath","\\html@mathml{\\@jmath}{\u0237}");fe("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");fe("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");fe("\u27E6","\\llbracket");fe("\u27E7","\\rrbracket");fe("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");fe("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");fe("\u2983","\\lBrace");fe("\u2984","\\rBrace");fe("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");fe("\u29B5","\\minuso");fe("\\darr","\\downarrow");fe("\\dArr","\\Downarrow");fe("\\Darr","\\Downarrow");fe("\\lang","\\langle");fe("\\rang","\\rangle");fe("\\uarr","\\uparrow");fe("\\uArr","\\Uparrow");fe("\\Uarr","\\Uparrow");fe("\\N","\\mathbb{N}");fe("\\R","\\mathbb{R}");fe("\\Z","\\mathbb{Z}");fe("\\alef","\\aleph");fe("\\alefsym","\\aleph");fe("\\Alpha","\\mathrm{A}");fe("\\Beta","\\mathrm{B}");fe("\\bull","\\bullet");fe("\\Chi","\\mathrm{X}");fe("\\clubs","\\clubsuit");fe("\\cnums","\\mathbb{C}");fe("\\Complex","\\mathbb{C}");fe("\\Dagger","\\ddagger");fe("\\diamonds","\\diamondsuit");fe("\\empty","\\emptyset");fe("\\Epsilon","\\mathrm{E}");fe("\\Eta","\\mathrm{H}");fe("\\exist","\\exists");fe("\\harr","\\leftrightarrow");fe("\\hArr","\\Leftrightarrow");fe("\\Harr","\\Leftrightarrow");fe("\\hearts","\\heartsuit");fe("\\image","\\Im");fe("\\infin","\\infty");fe("\\Iota","\\mathrm{I}");fe("\\isin","\\in");fe("\\Kappa","\\mathrm{K}");fe("\\larr","\\leftarrow");fe("\\lArr","\\Leftarrow");fe("\\Larr","\\Leftarrow");fe("\\lrarr","\\leftrightarrow");fe("\\lrArr","\\Leftrightarrow");fe("\\Lrarr","\\Leftrightarrow");fe("\\Mu","\\mathrm{M}");fe("\\natnums","\\mathbb{N}");fe("\\Nu","\\mathrm{N}");fe("\\Omicron","\\mathrm{O}");fe("\\plusmn","\\pm");fe("\\rarr","\\rightarrow");fe("\\rArr","\\Rightarrow");fe("\\Rarr","\\Rightarrow");fe("\\real","\\Re");fe("\\reals","\\mathbb{R}");fe("\\Reals","\\mathbb{R}");fe("\\Rho","\\mathrm{P}");fe("\\sdot","\\cdot");fe("\\sect","\\S");fe("\\spades","\\spadesuit");fe("\\sub","\\subset");fe("\\sube","\\subseteq");fe("\\supe","\\supseteq");fe("\\Tau","\\mathrm{T}");fe("\\thetasym","\\vartheta");fe("\\weierp","\\wp");fe("\\Zeta","\\mathrm{Z}");fe("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");fe("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");fe("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");fe("\\bra","\\mathinner{\\langle{#1}|}");fe("\\ket","\\mathinner{|{#1}\\rangle}");fe("\\braket","\\mathinner{\\langle{#1}\\rangle}");fe("\\Bra","\\left\\langle#1\\right|");fe("\\Ket","\\left|#1\\right\\rangle");Ej=o(t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,s=e.macros.get("|"),l=e.macros.get("\\|");e.macros.beginGroup();var u=o(d=>p=>{t&&(p.macros.set("|",s),i.length&&p.macros.set("\\|",l));var m=d;if(!d&&i.length){var g=p.future();g.text==="|"&&(p.popToken(),m=!0)}return{tokens:m?i:n,numArgs:0}},"midMacro");e.macros.set("|",u(!1)),i.length&&e.macros.set("\\|",u(!0));var h=e.consumeArg().tokens,f=e.expandTokens([...a,...h,...r]);return e.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");fe("\\bra@ket",Ej(!1));fe("\\bra@set",Ej(!0));fe("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");fe("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");fe("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");fe("\\angln","{\\angl n}");fe("\\blue","\\textcolor{##6495ed}{#1}");fe("\\orange","\\textcolor{##ffa500}{#1}");fe("\\pink","\\textcolor{##ff00af}{#1}");fe("\\red","\\textcolor{##df0030}{#1}");fe("\\green","\\textcolor{##28ae7b}{#1}");fe("\\gray","\\textcolor{gray}{#1}");fe("\\purple","\\textcolor{##9d38bd}{#1}");fe("\\blueA","\\textcolor{##ccfaff}{#1}");fe("\\blueB","\\textcolor{##80f6ff}{#1}");fe("\\blueC","\\textcolor{##63d9ea}{#1}");fe("\\blueD","\\textcolor{##11accd}{#1}");fe("\\blueE","\\textcolor{##0c7f99}{#1}");fe("\\tealA","\\textcolor{##94fff5}{#1}");fe("\\tealB","\\textcolor{##26edd5}{#1}");fe("\\tealC","\\textcolor{##01d1c1}{#1}");fe("\\tealD","\\textcolor{##01a995}{#1}");fe("\\tealE","\\textcolor{##208170}{#1}");fe("\\greenA","\\textcolor{##b6ffb0}{#1}");fe("\\greenB","\\textcolor{##8af281}{#1}");fe("\\greenC","\\textcolor{##74cf70}{#1}");fe("\\greenD","\\textcolor{##1fab54}{#1}");fe("\\greenE","\\textcolor{##0d923f}{#1}");fe("\\goldA","\\textcolor{##ffd0a9}{#1}");fe("\\goldB","\\textcolor{##ffbb71}{#1}");fe("\\goldC","\\textcolor{##ff9c39}{#1}");fe("\\goldD","\\textcolor{##e07d10}{#1}");fe("\\goldE","\\textcolor{##a75a05}{#1}");fe("\\redA","\\textcolor{##fca9a9}{#1}");fe("\\redB","\\textcolor{##ff8482}{#1}");fe("\\redC","\\textcolor{##f9685d}{#1}");fe("\\redD","\\textcolor{##e84d39}{#1}");fe("\\redE","\\textcolor{##bc2612}{#1}");fe("\\maroonA","\\textcolor{##ffbde0}{#1}");fe("\\maroonB","\\textcolor{##ff92c6}{#1}");fe("\\maroonC","\\textcolor{##ed5fa6}{#1}");fe("\\maroonD","\\textcolor{##ca337c}{#1}");fe("\\maroonE","\\textcolor{##9e034e}{#1}");fe("\\purpleA","\\textcolor{##ddd7ff}{#1}");fe("\\purpleB","\\textcolor{##c6b9fc}{#1}");fe("\\purpleC","\\textcolor{##aa87ff}{#1}");fe("\\purpleD","\\textcolor{##7854ab}{#1}");fe("\\purpleE","\\textcolor{##543b78}{#1}");fe("\\mintA","\\textcolor{##f5f9e8}{#1}");fe("\\mintB","\\textcolor{##edf2df}{#1}");fe("\\mintC","\\textcolor{##e0e5cc}{#1}");fe("\\grayA","\\textcolor{##f6f7f7}{#1}");fe("\\grayB","\\textcolor{##f0f1f2}{#1}");fe("\\grayC","\\textcolor{##e3e5e6}{#1}");fe("\\grayD","\\textcolor{##d6d8da}{#1}");fe("\\grayE","\\textcolor{##babec2}{#1}");fe("\\grayF","\\textcolor{##888d93}{#1}");fe("\\grayG","\\textcolor{##626569}{#1}");fe("\\grayH","\\textcolor{##3b3e40}{#1}");fe("\\grayI","\\textcolor{##21242c}{#1}");fe("\\kaBlue","\\textcolor{##314453}{#1}");fe("\\kaGreen","\\textcolor{##71B307}{#1}");Cj={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},O_=class{static{o(this,"MacroExpander")}constructor(e,r,n){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=r,this.expansionCount=0,this.feed(e),this.macros=new I_(U7e,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new cw(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var r,n,i;if(e){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new sl("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var e=this.future();if(e.text===" ")this.stack.pop();else break}}consumeArg(e){var r=[],n=e&&e.length>0;n||this.consumeSpaces();var i=this.future(),a,s=0,l=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new vt("Extra }",a)}else if(a.text==="EOF")throw new vt("Unexpected end of input in a macro argument, expected '"+(e&&n?e[l]:"}")+"'",a);if(e&&n)if((s===0||s===1&&e[l]==="{")&&a.text===e[l]){if(++l,l===e.length){r.splice(-l,l);break}}else l=0}while(s!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(e,r){if(r){if(r.length!==e+1)throw new vt("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new vt("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||e&&i.unexpandable){if(e&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new vt("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var l=a.length-1;l>=0;--l){var u=a[l];if(u.text==="#"){if(l===0)throw new vt("Incomplete placeholder at end of macro body",u);if(u=a[--l],u.text==="#")a.splice(l+1,1);else if(/^[1-9]$/.test(u.text))a.splice(l,2,...s[+u.text-1]);else throw new vt("Not a valid argument number",u)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new sl(e)]):void 0}expandTokens(e){var r=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(e){var r=this.expandMacro(e);return r&&r.map(n=>n.text).join("")}_getExpansion(e){var r=this.macros.get(e);if(r==null)return r;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var l=new cw(i,this.settings),u=[],h=l.lex();h.text!=="EOF";)u.push(h),h=l.lex();u.reverse();var f={tokens:u,numArgs:a};return f}return i}isDefined(e){return this.macros.has(e)||pf.hasOwnProperty(e)||zn.math.hasOwnProperty(e)||zn.text.hasOwnProperty(e)||Cj.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:pf.hasOwnProperty(e)&&!pf[e].primitive}},LY=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,tw=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),k_={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},NY={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},uw=class t{static{o(this,"Parser")}constructor(e,r){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new O_(e,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new vt("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var r=this.nextToken;this.consume(),this.gullet.pushToken(new sl("}")),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(e,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(t.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||e&&pf[i.text]&&pf[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(e){for(var r=-1,n,i=0;i=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var l=zn[this.mode][r].group,u=Do.range(e),h;if(OAe.hasOwnProperty(l)){var f=l;h={type:"atom",mode:this.mode,family:f,loc:u,text:r}}else h={type:l,mode:this.mode,loc:u,text:r};s=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&(IY(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),e)),s={type:"textord",mode:"text",loc:Do.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d{e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),ff.addHook("afterSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}var Lp,H7e,Y7e,Bj,Oj,fr,X7e,K7e,Q7e,Z7e,Fj,Np,Sr,J7e,e8e,zc,eD,t8e,r8e,Pj,vw,Nn,Mp,n8e,vf,nt,wr=I(()=>{"use strict";u_();Lp=//gi,H7e=o(t=>t?Fj(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),Y7e=(()=>{let t=!1;return()=>{t||(j7e(),t=!0)}})();o(j7e,"setupDompurifyHooks");Bj=o(t=>(Y7e(),ff.sanitize(t)),"removeScript"),Oj=o((t,e)=>{if(e.flowchart?.htmlLabels!==!1){let r=e.securityLevel;r==="antiscript"||r==="strict"?t=Bj(t):r!=="loose"&&(t=Fj(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=Z7e(t))}return t},"sanitizeMore"),fr=o((t,e)=>t&&(e.dompurifyConfig?t=ff.sanitize(Oj(t,e),e.dompurifyConfig).toString():t=ff.sanitize(Oj(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),X7e=o((t,e)=>typeof t=="string"?fr(t,e):t.flat().map(r=>fr(r,e)),"sanitizeTextOrArray"),K7e=o(t=>Lp.test(t),"hasBreaks"),Q7e=o(t=>t.split(Lp),"splitBreaks"),Z7e=o(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),Fj=o(t=>t.replace(Lp,"#br#"),"breakToPlaceholder"),Np=o(t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=CSS.escape(e)),e},"getUrl"),Sr=o(t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),J7e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.max(...e)},"getMax"),e8e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.min(...e)},"getMin"),zc=o(function(t){let e=t.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,t.split(e).length-1),"countOccurrence"),t8e=o((t,e)=>{let r=eD(t,"~"),n=eD(e,"~");return r===1&&n===1},"shouldCombineSets"),r8e=o(t=>{let e=eD(t,"~"),r=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),r=!0);let n=[...t],i=n.indexOf("~"),a=n.lastIndexOf("~");for(;i!==-1&&a!==-1&&i!==a;)n[i]="<",n[a]=">",i=n.indexOf("~"),a=n.lastIndexOf("~");return r&&n.unshift("~"),n.join("")},"processSet"),Pj=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),vw=/\$\$(.*)\$\$/g,Nn=o(t=>(t.match(vw)?.length??0)>0,"hasKatex"),Mp=o(async(t,e)=>{let r=document.createElement("div");r.innerHTML=await vf(t,e),r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",r);let i={width:r.clientWidth,height:r.clientHeight};return r.remove(),i},"calculateMathMLDimensions"),n8e=o(async(t,e)=>{if(!Nn(t))return t;if(!(Pj()||e.legacyMathML||e.forceLegacyMathML))return t.replace(vw,"MathML is unsupported in this environment.");{let{default:r}=await Promise.resolve().then(()=>(Ij(),Mj)),n=e.forceLegacyMathML||!Pj()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(Lp).map(i=>Nn(i)?`
${i}
`:`
${i}
`).join("").replace(vw,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))}return t.replace(vw,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")},"renderKatexUnsanitized"),vf=o(async(t,e)=>fr(await n8e(t,e),e),"renderKatexSanitized"),nt={getRows:H7e,sanitizeText:fr,sanitizeTextOrArray:X7e,hasBreaks:K7e,splitBreaks:Q7e,lineBreakRegex:Lp,removeScript:Bj,getUrl:Np,evaluate:Sr,getMax:J7e,getMin:e8e}});var rD,tD,$j,xw,zj,Gj,Ks,Gc=I(()=>{"use strict";YW();ti();wr();gt();rD={body:'?',height:80,width:80},tD=new Map,$j=new Map,xw=o(t=>{for(let e of t){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(X.debug("Registering icon pack:",e.name),"loader"in e)$j.set(e.name,e.loader);else if("icons"in e)tD.set(e.name,e.icons);else throw X.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),zj=o(async(t,e)=>{let r=L8(t,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${t}`);let n=r.prefix||e;if(!n)throw new Error(`Icon name must contain a prefix: ${t}`);let i=tD.get(n);if(!i){let s=$j.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},tD.set(n,i)}catch(l){throw X.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=M8(i,r.name);if(!a)throw new Error(`Icon not found: ${t}`);return a},"getRegisteredIconData"),Gj=o(async t=>{try{return await zj(t),!0}catch{return!1}},"isIconAvailable"),Ks=o(async(t,e,r)=>{let n;try{n=await zj(t,e?.fallbackPrefix)}catch(s){X.error(s),n=rD}let i=O8(n,e),a=B8(P8(i.body),{...i.attributes,...r});return fr(a,tr())},"getIconSVG")});function bw(t){for(var e=[],r=1;r{"use strict";o(B3,"dedent")});var F3,yd,iH,$3=M(()=>{"use strict";F3=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,yd=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,iH=/\s*%%.*\n/gm});var A0,DA=M(()=>{"use strict";A0=class extends Error{static{o(this,"UnknownDiagramError")}constructor(e){super(e),this.name="UnknownDiagramError"}}});var gu,_0,tv,LA,aH,vd=M(()=>{"use strict";pt();$3();DA();gu={},_0=o(function(t,e){t=t.replace(F3,"").replace(yd,"").replace(iH,` -`);for(let[r,{detector:n}]of Object.entries(gu))if(n(t,e))return r;throw new A0(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),tv=o((...t)=>{for(let{id:e,detector:r,loader:n}of t)LA(e,r,n)},"registerLazyLoadedDiagrams"),LA=o((t,e,r)=>{gu[t]&&X.warn(`Detector with key ${t} already exists. Overwriting.`),gu[t]={detector:e,loader:r},X.debug(`Detector with key ${t} added${r?" with loader":""}`)},"addDetector"),aH=o(t=>gu[t].loader,"getDiagramLoader")});var rv,sH,RA=M(()=>{"use strict";rv=(function(){var t=o(function(He,Le,Ie,Ne){for(Ie=Ie||{},Ne=He.length;Ne--;Ie[He[Ne]]=Le);return Ie},"o"),e=[1,24],r=[1,25],n=[1,26],i=[1,27],a=[1,28],s=[1,63],l=[1,64],u=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],m=[1,29],g=[1,30],y=[1,31],v=[1,32],x=[1,33],b=[1,34],T=[1,35],S=[1,36],w=[1,37],k=[1,38],C=[1,39],A=[1,40],L=[1,41],I=[1,42],R=[1,43],E=[1,44],_=[1,45],D=[1,46],O=[1,47],N=[1,48],P=[1,50],B=[1,51],F=[1,52],V=[1,53],$=[1,54],U=[1,55],j=[1,56],ee=[1,57],q=[1,58],oe=[1,59],Q=[1,60],ue=[14,42],te=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],re=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],J=[1,82],K=[1,83],ae=[1,84],Z=[1,85],de=[12,14,42],ne=[12,14,33,42],Te=[12,14,33,42,76,77,79,80],W=[12,33],Ve=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],pe={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:o(function(Le,Ie,Ne,Ce,Fe,fe,xe){var Y=fe.length-1;switch(Fe){case 3:Ce.setDirection("TB");break;case 4:Ce.setDirection("BT");break;case 5:Ce.setDirection("RL");break;case 6:Ce.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:Ce.setC4Type(fe[Y-3]);break;case 19:Ce.setTitle(fe[Y].substring(6)),this.$=fe[Y].substring(6);break;case 20:Ce.setAccDescription(fe[Y].substring(15)),this.$=fe[Y].substring(15);break;case 21:this.$=fe[Y].trim(),Ce.setTitle(this.$);break;case 22:case 23:this.$=fe[Y].trim(),Ce.setAccDescription(this.$);break;case 28:fe[Y].splice(2,0,"ENTERPRISE"),Ce.addPersonOrSystemBoundary(...fe[Y]),this.$=fe[Y];break;case 29:fe[Y].splice(2,0,"SYSTEM"),Ce.addPersonOrSystemBoundary(...fe[Y]),this.$=fe[Y];break;case 30:Ce.addPersonOrSystemBoundary(...fe[Y]),this.$=fe[Y];break;case 31:fe[Y].splice(2,0,"CONTAINER"),Ce.addContainerBoundary(...fe[Y]),this.$=fe[Y];break;case 32:Ce.addDeploymentNode("node",...fe[Y]),this.$=fe[Y];break;case 33:Ce.addDeploymentNode("nodeL",...fe[Y]),this.$=fe[Y];break;case 34:Ce.addDeploymentNode("nodeR",...fe[Y]),this.$=fe[Y];break;case 35:Ce.popBoundaryParseStack();break;case 39:Ce.addPersonOrSystem("person",...fe[Y]),this.$=fe[Y];break;case 40:Ce.addPersonOrSystem("external_person",...fe[Y]),this.$=fe[Y];break;case 41:Ce.addPersonOrSystem("system",...fe[Y]),this.$=fe[Y];break;case 42:Ce.addPersonOrSystem("system_db",...fe[Y]),this.$=fe[Y];break;case 43:Ce.addPersonOrSystem("system_queue",...fe[Y]),this.$=fe[Y];break;case 44:Ce.addPersonOrSystem("external_system",...fe[Y]),this.$=fe[Y];break;case 45:Ce.addPersonOrSystem("external_system_db",...fe[Y]),this.$=fe[Y];break;case 46:Ce.addPersonOrSystem("external_system_queue",...fe[Y]),this.$=fe[Y];break;case 47:Ce.addContainer("container",...fe[Y]),this.$=fe[Y];break;case 48:Ce.addContainer("container_db",...fe[Y]),this.$=fe[Y];break;case 49:Ce.addContainer("container_queue",...fe[Y]),this.$=fe[Y];break;case 50:Ce.addContainer("external_container",...fe[Y]),this.$=fe[Y];break;case 51:Ce.addContainer("external_container_db",...fe[Y]),this.$=fe[Y];break;case 52:Ce.addContainer("external_container_queue",...fe[Y]),this.$=fe[Y];break;case 53:Ce.addComponent("component",...fe[Y]),this.$=fe[Y];break;case 54:Ce.addComponent("component_db",...fe[Y]),this.$=fe[Y];break;case 55:Ce.addComponent("component_queue",...fe[Y]),this.$=fe[Y];break;case 56:Ce.addComponent("external_component",...fe[Y]),this.$=fe[Y];break;case 57:Ce.addComponent("external_component_db",...fe[Y]),this.$=fe[Y];break;case 58:Ce.addComponent("external_component_queue",...fe[Y]),this.$=fe[Y];break;case 60:Ce.addRel("rel",...fe[Y]),this.$=fe[Y];break;case 61:Ce.addRel("birel",...fe[Y]),this.$=fe[Y];break;case 62:Ce.addRel("rel_u",...fe[Y]),this.$=fe[Y];break;case 63:Ce.addRel("rel_d",...fe[Y]),this.$=fe[Y];break;case 64:Ce.addRel("rel_l",...fe[Y]),this.$=fe[Y];break;case 65:Ce.addRel("rel_r",...fe[Y]),this.$=fe[Y];break;case 66:Ce.addRel("rel_b",...fe[Y]),this.$=fe[Y];break;case 67:fe[Y].splice(0,1),Ce.addRel("rel",...fe[Y]),this.$=fe[Y];break;case 68:Ce.updateElStyle("update_el_style",...fe[Y]),this.$=fe[Y];break;case 69:Ce.updateRelStyle("update_rel_style",...fe[Y]),this.$=fe[Y];break;case 70:Ce.updateLayoutConfig("update_layout_config",...fe[Y]),this.$=fe[Y];break;case 71:this.$=[fe[Y]];break;case 72:fe[Y].unshift(fe[Y-1]),this.$=fe[Y];break;case 73:case 75:this.$=fe[Y].trim();break;case 74:let he={};he[fe[Y-1].trim()]=fe[Y].trim(),this.$=he;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q},{13:70,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q},{13:71,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q},{13:72,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q},{13:73,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q},{14:[1,74]},t(ue,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q}),t(ue,[2,14]),t(te,[2,16],{12:[1,76]}),t(ue,[2,36],{12:[1,77]}),t(re,[2,19]),t(re,[2,20]),{25:[1,78]},{27:[1,79]},t(re,[2,23]),{35:80,75:81,76:J,77:K,79:ae,80:Z},{35:86,75:81,76:J,77:K,79:ae,80:Z},{35:87,75:81,76:J,77:K,79:ae,80:Z},{35:88,75:81,76:J,77:K,79:ae,80:Z},{35:89,75:81,76:J,77:K,79:ae,80:Z},{35:90,75:81,76:J,77:K,79:ae,80:Z},{35:91,75:81,76:J,77:K,79:ae,80:Z},{35:92,75:81,76:J,77:K,79:ae,80:Z},{35:93,75:81,76:J,77:K,79:ae,80:Z},{35:94,75:81,76:J,77:K,79:ae,80:Z},{35:95,75:81,76:J,77:K,79:ae,80:Z},{35:96,75:81,76:J,77:K,79:ae,80:Z},{35:97,75:81,76:J,77:K,79:ae,80:Z},{35:98,75:81,76:J,77:K,79:ae,80:Z},{35:99,75:81,76:J,77:K,79:ae,80:Z},{35:100,75:81,76:J,77:K,79:ae,80:Z},{35:101,75:81,76:J,77:K,79:ae,80:Z},{35:102,75:81,76:J,77:K,79:ae,80:Z},{35:103,75:81,76:J,77:K,79:ae,80:Z},{35:104,75:81,76:J,77:K,79:ae,80:Z},t(de,[2,59]),{35:105,75:81,76:J,77:K,79:ae,80:Z},{35:106,75:81,76:J,77:K,79:ae,80:Z},{35:107,75:81,76:J,77:K,79:ae,80:Z},{35:108,75:81,76:J,77:K,79:ae,80:Z},{35:109,75:81,76:J,77:K,79:ae,80:Z},{35:110,75:81,76:J,77:K,79:ae,80:Z},{35:111,75:81,76:J,77:K,79:ae,80:Z},{35:112,75:81,76:J,77:K,79:ae,80:Z},{35:113,75:81,76:J,77:K,79:ae,80:Z},{35:114,75:81,76:J,77:K,79:ae,80:Z},{35:115,75:81,76:J,77:K,79:ae,80:Z},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q},{12:[1,118],33:[1,117]},{35:119,75:81,76:J,77:K,79:ae,80:Z},{35:120,75:81,76:J,77:K,79:ae,80:Z},{35:121,75:81,76:J,77:K,79:ae,80:Z},{35:122,75:81,76:J,77:K,79:ae,80:Z},{35:123,75:81,76:J,77:K,79:ae,80:Z},{35:124,75:81,76:J,77:K,79:ae,80:Z},{35:125,75:81,76:J,77:K,79:ae,80:Z},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(ue,[2,15]),t(te,[2,17],{21:22,19:130,22:e,23:r,24:n,26:i,28:a}),t(ue,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:r,24:n,26:i,28:a,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:S,52:w,53:k,54:C,55:A,56:L,57:I,58:R,59:E,60:_,61:D,62:O,63:N,64:P,65:B,66:F,67:V,68:$,69:U,70:j,71:ee,72:q,73:oe,74:Q}),t(re,[2,21]),t(re,[2,22]),t(de,[2,39]),t(ne,[2,71],{75:81,35:132,76:J,77:K,79:ae,80:Z}),t(Te,[2,73]),{78:[1,133]},t(Te,[2,75]),t(Te,[2,76]),t(de,[2,40]),t(de,[2,41]),t(de,[2,42]),t(de,[2,43]),t(de,[2,44]),t(de,[2,45]),t(de,[2,46]),t(de,[2,47]),t(de,[2,48]),t(de,[2,49]),t(de,[2,50]),t(de,[2,51]),t(de,[2,52]),t(de,[2,53]),t(de,[2,54]),t(de,[2,55]),t(de,[2,56]),t(de,[2,57]),t(de,[2,58]),t(de,[2,60]),t(de,[2,61]),t(de,[2,62]),t(de,[2,63]),t(de,[2,64]),t(de,[2,65]),t(de,[2,66]),t(de,[2,67]),t(de,[2,68]),t(de,[2,69]),t(de,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(W,[2,28]),t(W,[2,29]),t(W,[2,30]),t(W,[2,31]),t(W,[2,32]),t(W,[2,33]),t(W,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(te,[2,18]),t(ue,[2,38]),t(ne,[2,72]),t(Te,[2,74]),t(de,[2,24]),t(de,[2,35]),t(Ve,[2,25]),t(Ve,[2,26],{12:[1,138]}),t(Ve,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:o(function(Le,Ie){if(Ie.recoverable)this.trace(Le);else{var Ne=new Error(Le);throw Ne.hash=Ie,Ne}},"parseError"),parse:o(function(Le){var Ie=this,Ne=[0],Ce=[],Fe=[null],fe=[],xe=this.table,Y="",he=0,z=0,se=0,le=2,ke=1,ve=fe.slice.call(arguments,1),ye=Object.create(this.lexer),Re={yy:{}};for(var _e in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_e)&&(Re.yy[_e]=this.yy[_e]);ye.setInput(Le,Re.yy),Re.yy.lexer=ye,Re.yy.parser=this,typeof ye.yylloc>"u"&&(ye.yylloc={});var ze=ye.yylloc;fe.push(ze);var Ke=ye.options&&ye.options.ranges;typeof Re.yy.parseError=="function"?this.parseError=Re.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(ft){Ne.length=Ne.length-2*ft,Fe.length=Fe.length-ft,fe.length=fe.length-ft}o(xt,"popStack");function We(){var ft;return ft=Ce.pop()||ye.lex()||ke,typeof ft!="number"&&(ft instanceof Array&&(Ce=ft,ft=Ce.pop()),ft=Ie.symbols_[ft]||ft),ft}o(We,"lex");for(var Oe,et,Ue,lt,Gt,vt,Lt={},dt,nt,bt,wt;;){if(Ue=Ne[Ne.length-1],this.defaultActions[Ue]?lt=this.defaultActions[Ue]:((Oe===null||typeof Oe>"u")&&(Oe=We()),lt=xe[Ue]&&xe[Ue][Oe]),typeof lt>"u"||!lt.length||!lt[0]){var yt="";wt=[];for(dt in xe[Ue])this.terminals_[dt]&&dt>le&&wt.push("'"+this.terminals_[dt]+"'");ye.showPosition?yt="Parse error on line "+(he+1)+`: -`+ye.showPosition()+` -Expecting `+wt.join(", ")+", got '"+(this.terminals_[Oe]||Oe)+"'":yt="Parse error on line "+(he+1)+": Unexpected "+(Oe==ke?"end of input":"'"+(this.terminals_[Oe]||Oe)+"'"),this.parseError(yt,{text:ye.match,token:this.terminals_[Oe]||Oe,line:ye.yylineno,loc:ze,expected:wt})}if(lt[0]instanceof Array&<.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ue+", token: "+Oe);switch(lt[0]){case 1:Ne.push(Oe),Fe.push(ye.yytext),fe.push(ye.yylloc),Ne.push(lt[1]),Oe=null,et?(Oe=et,et=null):(z=ye.yyleng,Y=ye.yytext,he=ye.yylineno,ze=ye.yylloc,se>0&&se--);break;case 2:if(nt=this.productions_[lt[1]][1],Lt.$=Fe[Fe.length-nt],Lt._$={first_line:fe[fe.length-(nt||1)].first_line,last_line:fe[fe.length-1].last_line,first_column:fe[fe.length-(nt||1)].first_column,last_column:fe[fe.length-1].last_column},Ke&&(Lt._$.range=[fe[fe.length-(nt||1)].range[0],fe[fe.length-1].range[1]]),vt=this.performAction.apply(Lt,[Y,z,he,Re.yy,lt[1],Fe,fe].concat(ve)),typeof vt<"u")return vt;nt&&(Ne=Ne.slice(0,-1*nt*2),Fe=Fe.slice(0,-1*nt),fe=fe.slice(0,-1*nt)),Ne.push(this.productions_[lt[1]][0]),Fe.push(Lt.$),fe.push(Lt._$),bt=xe[Ne[Ne.length-2]][Ne[Ne.length-1]],Ne.push(bt);break;case 3:return!0}}return!0},"parse")},Be=(function(){var He={EOF:1,parseError:o(function(Ie,Ne){if(this.yy.parser)this.yy.parser.parseError(Ie,Ne);else throw new Error(Ie)},"parseError"),setInput:o(function(Le,Ie){return this.yy=Ie||this.yy||{},this._input=Le,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var Le=this._input[0];this.yytext+=Le,this.yyleng++,this.offset++,this.match+=Le,this.matched+=Le;var Ie=Le.match(/(?:\r\n?|\n).*/g);return Ie?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Le},"input"),unput:o(function(Le){var Ie=Le.length,Ne=Le.split(/(?:\r\n?|\n)/g);this._input=Le+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ie),this.offset-=Ie;var Ce=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ne.length-1&&(this.yylineno-=Ne.length-1);var Fe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ne?(Ne.length===Ce.length?this.yylloc.first_column:0)+Ce[Ce.length-Ne.length].length-Ne[0].length:this.yylloc.first_column-Ie},this.options.ranges&&(this.yylloc.range=[Fe[0],Fe[0]+this.yyleng-Ie]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`)),s+=d+n[u+1]}),s}var nD=I(()=>{"use strict";o(bw,"dedent")});var Tw,Ip,Vj,ww=I(()=>{"use strict";Tw=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,Ip=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Vj=/\s*%%.*\n/gm});var ug,iD=I(()=>{"use strict";ug=class extends Error{static{o(this,"UnknownDiagramError")}constructor(e){super(e),this.name="UnknownDiagramError"}}});var ah,hg,S2,aD,qj,Op=I(()=>{"use strict";gt();ww();iD();ah={},hg=o(function(t,e){t=t.replace(Tw,"").replace(Ip,"").replace(Vj,` +`);for(let[r,{detector:n}]of Object.entries(ah))if(n(t,e))return r;throw new ug(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),S2=o((...t)=>{for(let{id:e,detector:r,loader:n}of t)aD(e,r,n)},"registerLazyLoadedDiagrams"),aD=o((t,e,r)=>{ah[t]&&X.warn(`Detector with key ${t} already exists. Overwriting.`),ah[t]={detector:e,loader:r},X.debug(`Detector with key ${t} added${r?" with loader":""}`)},"addDetector"),qj=o(t=>ah[t].loader,"getDiagramLoader")});var E2,Uj,sD=I(()=>{"use strict";E2=(function(){var t=o(function(Ue,Le,Ie,Me){for(Ie=Ie||{},Me=Ue.length;Me--;Ie[Ue[Me]]=Le);return Ie},"o"),e=[1,24],r=[1,25],n=[1,26],i=[1,27],a=[1,28],s=[1,63],l=[1,64],u=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],m=[1,29],g=[1,30],y=[1,31],v=[1,32],x=[1,33],b=[1,34],T=[1,35],E=[1,36],w=[1,37],k=[1,38],C=[1,39],D=[1,40],R=[1,41],O=[1,42],L=[1,43],S=[1,44],A=[1,45],_=[1,46],N=[1,47],M=[1,48],P=[1,50],B=[1,51],F=[1,52],G=[1,53],$=[1,54],V=[1,55],K=[1,56],ee=[1,57],H=[1,58],he=[1,59],Z=[1,60],de=[14,42],re=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ne=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],te=[1,82],Q=[1,83],le=[1,84],J=[1,85],ge=[12,14,42],ie=[12,14,33,42],Te=[12,14,33,42,76,77,79,80],j=[12,33],Ge=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ye={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:o(function(Le,Ie,Me,Ae,ze,Y,ce){var U=Y.length-1;switch(ze){case 3:Ae.setDirection("TB");break;case 4:Ae.setDirection("BT");break;case 5:Ae.setDirection("RL");break;case 6:Ae.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:Ae.setC4Type(Y[U-3]);break;case 19:Ae.setTitle(Y[U].substring(6)),this.$=Y[U].substring(6);break;case 20:Ae.setAccDescription(Y[U].substring(15)),this.$=Y[U].substring(15);break;case 21:this.$=Y[U].trim(),Ae.setTitle(this.$);break;case 22:case 23:this.$=Y[U].trim(),Ae.setAccDescription(this.$);break;case 28:Y[U].splice(2,0,"ENTERPRISE"),Ae.addPersonOrSystemBoundary(...Y[U]),this.$=Y[U];break;case 29:Y[U].splice(2,0,"SYSTEM"),Ae.addPersonOrSystemBoundary(...Y[U]),this.$=Y[U];break;case 30:Ae.addPersonOrSystemBoundary(...Y[U]),this.$=Y[U];break;case 31:Y[U].splice(2,0,"CONTAINER"),Ae.addContainerBoundary(...Y[U]),this.$=Y[U];break;case 32:Ae.addDeploymentNode("node",...Y[U]),this.$=Y[U];break;case 33:Ae.addDeploymentNode("nodeL",...Y[U]),this.$=Y[U];break;case 34:Ae.addDeploymentNode("nodeR",...Y[U]),this.$=Y[U];break;case 35:Ae.popBoundaryParseStack();break;case 39:Ae.addPersonOrSystem("person",...Y[U]),this.$=Y[U];break;case 40:Ae.addPersonOrSystem("external_person",...Y[U]),this.$=Y[U];break;case 41:Ae.addPersonOrSystem("system",...Y[U]),this.$=Y[U];break;case 42:Ae.addPersonOrSystem("system_db",...Y[U]),this.$=Y[U];break;case 43:Ae.addPersonOrSystem("system_queue",...Y[U]),this.$=Y[U];break;case 44:Ae.addPersonOrSystem("external_system",...Y[U]),this.$=Y[U];break;case 45:Ae.addPersonOrSystem("external_system_db",...Y[U]),this.$=Y[U];break;case 46:Ae.addPersonOrSystem("external_system_queue",...Y[U]),this.$=Y[U];break;case 47:Ae.addContainer("container",...Y[U]),this.$=Y[U];break;case 48:Ae.addContainer("container_db",...Y[U]),this.$=Y[U];break;case 49:Ae.addContainer("container_queue",...Y[U]),this.$=Y[U];break;case 50:Ae.addContainer("external_container",...Y[U]),this.$=Y[U];break;case 51:Ae.addContainer("external_container_db",...Y[U]),this.$=Y[U];break;case 52:Ae.addContainer("external_container_queue",...Y[U]),this.$=Y[U];break;case 53:Ae.addComponent("component",...Y[U]),this.$=Y[U];break;case 54:Ae.addComponent("component_db",...Y[U]),this.$=Y[U];break;case 55:Ae.addComponent("component_queue",...Y[U]),this.$=Y[U];break;case 56:Ae.addComponent("external_component",...Y[U]),this.$=Y[U];break;case 57:Ae.addComponent("external_component_db",...Y[U]),this.$=Y[U];break;case 58:Ae.addComponent("external_component_queue",...Y[U]),this.$=Y[U];break;case 60:Ae.addRel("rel",...Y[U]),this.$=Y[U];break;case 61:Ae.addRel("birel",...Y[U]),this.$=Y[U];break;case 62:Ae.addRel("rel_u",...Y[U]),this.$=Y[U];break;case 63:Ae.addRel("rel_d",...Y[U]),this.$=Y[U];break;case 64:Ae.addRel("rel_l",...Y[U]),this.$=Y[U];break;case 65:Ae.addRel("rel_r",...Y[U]),this.$=Y[U];break;case 66:Ae.addRel("rel_b",...Y[U]),this.$=Y[U];break;case 67:Y[U].splice(0,1),Ae.addRel("rel",...Y[U]),this.$=Y[U];break;case 68:Ae.updateElStyle("update_el_style",...Y[U]),this.$=Y[U];break;case 69:Ae.updateRelStyle("update_rel_style",...Y[U]),this.$=Y[U];break;case 70:Ae.updateLayoutConfig("update_layout_config",...Y[U]),this.$=Y[U];break;case 71:this.$=[Y[U]];break;case 72:Y[U].unshift(Y[U-1]),this.$=Y[U];break;case 73:case 75:this.$=Y[U].trim();break;case 74:let ue={};ue[Y[U-1].trim()]=Y[U].trim(),this.$=ue;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z},{13:70,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z},{13:71,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z},{13:72,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z},{13:73,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z},{14:[1,74]},t(de,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z}),t(de,[2,14]),t(re,[2,16],{12:[1,76]}),t(de,[2,36],{12:[1,77]}),t(ne,[2,19]),t(ne,[2,20]),{25:[1,78]},{27:[1,79]},t(ne,[2,23]),{35:80,75:81,76:te,77:Q,79:le,80:J},{35:86,75:81,76:te,77:Q,79:le,80:J},{35:87,75:81,76:te,77:Q,79:le,80:J},{35:88,75:81,76:te,77:Q,79:le,80:J},{35:89,75:81,76:te,77:Q,79:le,80:J},{35:90,75:81,76:te,77:Q,79:le,80:J},{35:91,75:81,76:te,77:Q,79:le,80:J},{35:92,75:81,76:te,77:Q,79:le,80:J},{35:93,75:81,76:te,77:Q,79:le,80:J},{35:94,75:81,76:te,77:Q,79:le,80:J},{35:95,75:81,76:te,77:Q,79:le,80:J},{35:96,75:81,76:te,77:Q,79:le,80:J},{35:97,75:81,76:te,77:Q,79:le,80:J},{35:98,75:81,76:te,77:Q,79:le,80:J},{35:99,75:81,76:te,77:Q,79:le,80:J},{35:100,75:81,76:te,77:Q,79:le,80:J},{35:101,75:81,76:te,77:Q,79:le,80:J},{35:102,75:81,76:te,77:Q,79:le,80:J},{35:103,75:81,76:te,77:Q,79:le,80:J},{35:104,75:81,76:te,77:Q,79:le,80:J},t(ge,[2,59]),{35:105,75:81,76:te,77:Q,79:le,80:J},{35:106,75:81,76:te,77:Q,79:le,80:J},{35:107,75:81,76:te,77:Q,79:le,80:J},{35:108,75:81,76:te,77:Q,79:le,80:J},{35:109,75:81,76:te,77:Q,79:le,80:J},{35:110,75:81,76:te,77:Q,79:le,80:J},{35:111,75:81,76:te,77:Q,79:le,80:J},{35:112,75:81,76:te,77:Q,79:le,80:J},{35:113,75:81,76:te,77:Q,79:le,80:J},{35:114,75:81,76:te,77:Q,79:le,80:J},{35:115,75:81,76:te,77:Q,79:le,80:J},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z},{12:[1,118],33:[1,117]},{35:119,75:81,76:te,77:Q,79:le,80:J},{35:120,75:81,76:te,77:Q,79:le,80:J},{35:121,75:81,76:te,77:Q,79:le,80:J},{35:122,75:81,76:te,77:Q,79:le,80:J},{35:123,75:81,76:te,77:Q,79:le,80:J},{35:124,75:81,76:te,77:Q,79:le,80:J},{35:125,75:81,76:te,77:Q,79:le,80:J},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(de,[2,15]),t(re,[2,17],{21:22,19:130,22:e,23:r,24:n,26:i,28:a}),t(de,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:r,24:n,26:i,28:a,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T,51:E,52:w,53:k,54:C,55:D,56:R,57:O,58:L,59:S,60:A,61:_,62:N,63:M,64:P,65:B,66:F,67:G,68:$,69:V,70:K,71:ee,72:H,73:he,74:Z}),t(ne,[2,21]),t(ne,[2,22]),t(ge,[2,39]),t(ie,[2,71],{75:81,35:132,76:te,77:Q,79:le,80:J}),t(Te,[2,73]),{78:[1,133]},t(Te,[2,75]),t(Te,[2,76]),t(ge,[2,40]),t(ge,[2,41]),t(ge,[2,42]),t(ge,[2,43]),t(ge,[2,44]),t(ge,[2,45]),t(ge,[2,46]),t(ge,[2,47]),t(ge,[2,48]),t(ge,[2,49]),t(ge,[2,50]),t(ge,[2,51]),t(ge,[2,52]),t(ge,[2,53]),t(ge,[2,54]),t(ge,[2,55]),t(ge,[2,56]),t(ge,[2,57]),t(ge,[2,58]),t(ge,[2,60]),t(ge,[2,61]),t(ge,[2,62]),t(ge,[2,63]),t(ge,[2,64]),t(ge,[2,65]),t(ge,[2,66]),t(ge,[2,67]),t(ge,[2,68]),t(ge,[2,69]),t(ge,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(j,[2,28]),t(j,[2,29]),t(j,[2,30]),t(j,[2,31]),t(j,[2,32]),t(j,[2,33]),t(j,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(re,[2,18]),t(de,[2,38]),t(ie,[2,72]),t(Te,[2,74]),t(ge,[2,24]),t(ge,[2,35]),t(Ge,[2,25]),t(Ge,[2,26],{12:[1,138]}),t(Ge,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:o(function(Le,Ie){if(Ie.recoverable)this.trace(Le);else{var Me=new Error(Le);throw Me.hash=Ie,Me}},"parseError"),parse:o(function(Le){var Ie=this,Me=[0],Ae=[],ze=[null],Y=[],ce=this.table,U="",ue=0,z=0,se=0,oe=2,be=1,pe=Y.slice.call(arguments,1),me=Object.create(this.lexer),De={yy:{}};for(var Ce in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ce)&&(De.yy[Ce]=this.yy[Ce]);me.setInput(Le,De.yy),De.yy.lexer=me,De.yy.parser=this,typeof me.yylloc>"u"&&(me.yylloc={});var Fe=me.yylloc;Y.push(Fe);var Ye=me.options&&me.options.ranges;typeof De.yy.parseError=="function"?this.parseError=De.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(pt){Me.length=Me.length-2*pt,ze.length=ze.length-pt,Y.length=Y.length-pt}o(xt,"popStack");function je(){var pt;return pt=Ae.pop()||me.lex()||be,typeof pt!="number"&&(pt instanceof Array&&(Ae=pt,pt=Ae.pop()),pt=Ie.symbols_[pt]||pt),pt}o(je,"lex");for(var Pe,rt,We,ut,Ut,Tt,Mt={},mt,at,wt,St;;){if(We=Me[Me.length-1],this.defaultActions[We]?ut=this.defaultActions[We]:((Pe===null||typeof Pe>"u")&&(Pe=je()),ut=ce[We]&&ce[We][Pe]),typeof ut>"u"||!ut.length||!ut[0]){var bt="";St=[];for(mt in ce[We])this.terminals_[mt]&&mt>oe&&St.push("'"+this.terminals_[mt]+"'");me.showPosition?bt="Parse error on line "+(ue+1)+`: +`+me.showPosition()+` +Expecting `+St.join(", ")+", got '"+(this.terminals_[Pe]||Pe)+"'":bt="Parse error on line "+(ue+1)+": Unexpected "+(Pe==be?"end of input":"'"+(this.terminals_[Pe]||Pe)+"'"),this.parseError(bt,{text:me.match,token:this.terminals_[Pe]||Pe,line:me.yylineno,loc:Fe,expected:St})}if(ut[0]instanceof Array&&ut.length>1)throw new Error("Parse Error: multiple actions possible at state: "+We+", token: "+Pe);switch(ut[0]){case 1:Me.push(Pe),ze.push(me.yytext),Y.push(me.yylloc),Me.push(ut[1]),Pe=null,rt?(Pe=rt,rt=null):(z=me.yyleng,U=me.yytext,ue=me.yylineno,Fe=me.yylloc,se>0&&se--);break;case 2:if(at=this.productions_[ut[1]][1],Mt.$=ze[ze.length-at],Mt._$={first_line:Y[Y.length-(at||1)].first_line,last_line:Y[Y.length-1].last_line,first_column:Y[Y.length-(at||1)].first_column,last_column:Y[Y.length-1].last_column},Ye&&(Mt._$.range=[Y[Y.length-(at||1)].range[0],Y[Y.length-1].range[1]]),Tt=this.performAction.apply(Mt,[U,z,ue,De.yy,ut[1],ze,Y].concat(pe)),typeof Tt<"u")return Tt;at&&(Me=Me.slice(0,-1*at*2),ze=ze.slice(0,-1*at),Y=Y.slice(0,-1*at)),Me.push(this.productions_[ut[1]][0]),ze.push(Mt.$),Y.push(Mt._$),wt=ce[Me[Me.length-2]][Me[Me.length-1]],Me.push(wt);break;case 3:return!0}}return!0},"parse")},$e=(function(){var Ue={EOF:1,parseError:o(function(Ie,Me){if(this.yy.parser)this.yy.parser.parseError(Ie,Me);else throw new Error(Ie)},"parseError"),setInput:o(function(Le,Ie){return this.yy=Ie||this.yy||{},this._input=Le,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var Le=this._input[0];this.yytext+=Le,this.yyleng++,this.offset++,this.match+=Le,this.matched+=Le;var Ie=Le.match(/(?:\r\n?|\n).*/g);return Ie?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Le},"input"),unput:o(function(Le){var Ie=Le.length,Me=Le.split(/(?:\r\n?|\n)/g);this._input=Le+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ie),this.offset-=Ie;var Ae=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Me.length-1&&(this.yylineno-=Me.length-1);var ze=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Me?(Me.length===Ae.length?this.yylloc.first_column:0)+Ae[Ae.length-Me.length].length-Me[0].length:this.yylloc.first_column-Ie},this.options.ranges&&(this.yylloc.range=[ze[0],ze[0]+this.yyleng-Ie]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Le){this.unput(this.match.slice(Le))},"less"),pastInput:o(function(){var Le=this.matched.substr(0,this.matched.length-this.match.length);return(Le.length>20?"...":"")+Le.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Le=this.match;return Le.length<20&&(Le+=this._input.substr(0,20-Le.length)),(Le.substr(0,20)+(Le.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Le=this.pastInput(),Ie=new Array(Le.length+1).join("-");return Le+this.upcomingInput()+` -`+Ie+"^"},"showPosition"),test_match:o(function(Le,Ie){var Ne,Ce,Fe;if(this.options.backtrack_lexer&&(Fe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Fe.yylloc.range=this.yylloc.range.slice(0))),Ce=Le[0].match(/(?:\r\n?|\n).*/g),Ce&&(this.yylineno+=Ce.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ce?Ce[Ce.length-1].length-Ce[Ce.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Le[0].length},this.yytext+=Le[0],this.match+=Le[0],this.matches=Le,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Le[0].length),this.matched+=Le[0],Ne=this.performAction.call(this,this.yy,this,Ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ne)return Ne;if(this._backtrack){for(var fe in Fe)this[fe]=Fe[fe];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Le,Ie,Ne,Ce;this._more||(this.yytext="",this.match="");for(var Fe=this._currentRules(),fe=0;feIe[0].length)){if(Ie=Ne,Ce=fe,this.options.backtrack_lexer){if(Le=this.test_match(Ne,Fe[fe]),Le!==!1)return Le;if(this._backtrack){Ie=!1;continue}else return!1}else if(!this.options.flex)break}return Ie?(Le=this.test_match(Ie,Fe[Ce]),Le!==!1?Le:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ie=this.next();return Ie||this.lex()},"lex"),begin:o(function(Ie){this.conditionStack.push(Ie)},"begin"),popState:o(function(){var Ie=this.conditionStack.length-1;return Ie>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ie){return Ie=this.conditionStack.length-1-Math.abs(Ie||0),Ie>=0?this.conditionStack[Ie]:"INITIAL"},"topState"),pushState:o(function(Ie){this.begin(Ie)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ie,Ne,Ce,Fe){var fe=Fe;switch(Ce){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return He})();pe.lexer=Be;function Ye(){this.yy={}}return o(Ye,"Parser"),Ye.prototype=pe,pe.Parser=Ye,new Ye})();rv.parser=rv;sH=rv});var Jwe,eke,mn,ic,Ei=M(()=>{"use strict";pt();Jwe=o(function(t,e){for(let r of e)t.attr(r[0],r[1])},"d3Attrs"),eke=o(function(t,e,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${e}px;`)):(n.set("height",t),n.set("width",e)),n},"calculateSvgSizeAttrs"),mn=o(function(t,e,r,n){let i=eke(e,r,n);Jwe(t,i)},"configureSvgSize"),ic=o(function(t,e,r,n){let i=e.node().getBBox(),a=i.width,s=i.height;X.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;X.info(`Graph bounds: ${l}x${u}`,t),l=a+r*2,u=s+r*2,X.info(`Calculated bounds: ${l}x${u}`),mn(e,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;e.attr("viewBox",h)},"setupGraphViewbox")});var z3,tke,oH,lH,NA=M(()=>{"use strict";pt();z3={},tke=o((t,e,r)=>{let n="";return t in z3&&z3[t]?n=z3[t](r):X.warn(`No theme found for ${t}`),` & { +`+Ie+"^"},"showPosition"),test_match:o(function(Le,Ie){var Me,Ae,ze;if(this.options.backtrack_lexer&&(ze={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ze.yylloc.range=this.yylloc.range.slice(0))),Ae=Le[0].match(/(?:\r\n?|\n).*/g),Ae&&(this.yylineno+=Ae.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ae?Ae[Ae.length-1].length-Ae[Ae.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Le[0].length},this.yytext+=Le[0],this.match+=Le[0],this.matches=Le,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Le[0].length),this.matched+=Le[0],Me=this.performAction.call(this,this.yy,this,Ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Me)return Me;if(this._backtrack){for(var Y in ze)this[Y]=ze[Y];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Le,Ie,Me,Ae;this._more||(this.yytext="",this.match="");for(var ze=this._currentRules(),Y=0;YIe[0].length)){if(Ie=Me,Ae=Y,this.options.backtrack_lexer){if(Le=this.test_match(Me,ze[Y]),Le!==!1)return Le;if(this._backtrack){Ie=!1;continue}else return!1}else if(!this.options.flex)break}return Ie?(Le=this.test_match(Ie,ze[Ae]),Le!==!1?Le:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ie=this.next();return Ie||this.lex()},"lex"),begin:o(function(Ie){this.conditionStack.push(Ie)},"begin"),popState:o(function(){var Ie=this.conditionStack.length-1;return Ie>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ie){return Ie=this.conditionStack.length-1-Math.abs(Ie||0),Ie>=0?this.conditionStack[Ie]:"INITIAL"},"topState"),pushState:o(function(Ie){this.begin(Ie)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ie,Me,Ae,ze){var Y=ze;switch(Ae){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return Ue})();ye.lexer=$e;function Xe(){this.yy={}}return o(Xe,"Parser"),Xe.prototype=ye,ye.Parser=Xe,new Xe})();E2.parser=E2;Uj=E2});var i8e,a8e,Sn,Vc,Fi=I(()=>{"use strict";gt();i8e=o(function(t,e){for(let r of e)t.attr(r[0],r[1])},"d3Attrs"),a8e=o(function(t,e,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${e}px;`)):(n.set("height",t),n.set("width",e)),n},"calculateSvgSizeAttrs"),Sn=o(function(t,e,r,n){let i=a8e(e,r,n);i8e(t,i)},"configureSvgSize"),Vc=o(function(t,e,r,n){let i=e.node().getBBox(),a=i.width,s=i.height;X.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;X.info(`Graph bounds: ${l}x${u}`,t),l=a+r*2,u=s+r*2,X.info(`Calculated bounds: ${l}x${u}`),Sn(e,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;e.attr("viewBox",h)},"setupGraphViewbox")});var kw,s8e,Wj,Hj,oD=I(()=>{"use strict";gt();kw={},s8e=o((t,e,r)=>{let n="";return t in kw&&kw[t]?n=kw[t](r):X.warn(`No theme found for ${t}`),` & { font-family: ${r.fontFamily}; font-size: ${r.fontSize}; fill: ${r.textColor} @@ -346,49 +346,49 @@ Expecting `+wt.join(", ")+", got '"+(this.terminals_[Oe]||Oe)+"'":yt="Parse erro ${n} ${e} -`},"getStyles"),oH=o((t,e)=>{e!==void 0&&(z3[t]=e)},"addStylesForDiagram"),lH=tke});var nv={};dr(nv,{clear:()=>Sr,getAccDescription:()=>Or,getAccTitle:()=>Mr,getDiagramTitle:()=>Pr,setAccDescription:()=>Ir,setAccTitle:()=>Rr,setDiagramTitle:()=>$r});var MA,IA,OA,PA,Sr,Rr,Mr,Ir,Or,$r,Pr,ci=M(()=>{"use strict";gr();qn();MA="",IA="",OA="",PA=o(t=>sr(t,Qt()),"sanitizeText"),Sr=o(()=>{MA="",OA="",IA=""},"clear"),Rr=o(t=>{MA=PA(t).replace(/^\s+/g,"")},"setAccTitle"),Mr=o(()=>MA,"getAccTitle"),Ir=o(t=>{OA=PA(t).replace(/\n\s+/g,` -`)},"setAccDescription"),Or=o(()=>OA,"getAccDescription"),$r=o(t=>{IA=PA(t)},"setDiagramTitle"),Pr=o(()=>IA,"getDiagramTitle")});var cH,rke,ge,iv,V3,av,FA,nke,G3,xd,sv,BA,Xt=M(()=>{"use strict";vd();pt();qn();gr();Ei();NA();ci();cH=X,rke=Ly,ge=Qt,iv=i3,V3=gh,av=o(t=>sr(t,ge()),"sanitizeText"),FA=ic,nke=o(()=>nv,"getCommonDb"),G3={},xd=o((t,e,r)=>{G3[t]&&cH.warn(`Diagram with id ${t} already registered. Overwriting.`),G3[t]=e,r&&LA(t,r),oH(t,e.styles),e.injectUtils?.(cH,rke,ge,av,FA,nke(),()=>{})},"registerDiagram"),sv=o(t=>{if(t in G3)return G3[t];throw new BA(t)},"getDiagram"),BA=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(e){super(`Diagram ${e} not found.`)}}});var ml,Eh,ns,pl,ac,ov,$A,zA,U3,H3,uH,ike,ake,ske,oke,lke,cke,uke,hke,fke,dke,pke,mke,gke,yke,vke,xke,bke,hH,Tke,wke,fH,kke,Eke,Ske,Cke,Sh,Ake,_ke,Dke,Lke,Rke,lv,GA=M(()=>{"use strict";Xt();gr();ci();ml=[],Eh=[""],ns="global",pl="",ac=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],ov=[],$A="",zA=!1,U3=4,H3=2,ike=o(function(){return uH},"getC4Type"),ake=o(function(t){uH=sr(t,ge())},"setC4Type"),ske=o(function(t,e,r,n,i,a,s,l,u){if(t==null||e===void 0||e===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=ov.find(d=>d.from===e&&d.to===r);if(f?h=f:ov.push(h),h.type=t,h.from=e,h.to=r,h.label={text:n},i==null)h.techn={text:""};else if(typeof i=="object"){let[d,p]=Object.entries(i)[0];h[d]={text:p}}else h.techn={text:i};if(a==null)h.descr={text:""};else if(typeof a=="object"){let[d,p]=Object.entries(a)[0];h[d]={text:p}}else h.descr={text:a};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];h[d]=p}else h.sprite=s;if(typeof l=="object"){let[d,p]=Object.entries(l)[0];h[d]=p}else h.tags=l;if(typeof u=="object"){let[d,p]=Object.entries(u)[0];h[d]=p}else h.link=u;h.wrap=Sh()},"addRel"),oke=o(function(t,e,r,n,i,a,s){if(e===null||r===null)return;let l={},u=ml.find(h=>h.alias===e);if(u&&e===u.alias?l=u:(l.alias=e,ml.push(l)),r==null?l.label={text:""}:l.label={text:r},n==null)l.descr={text:""};else if(typeof n=="object"){let[h,f]=Object.entries(n)[0];l[h]={text:f}}else l.descr={text:n};if(typeof i=="object"){let[h,f]=Object.entries(i)[0];l[h]=f}else l.sprite=i;if(typeof a=="object"){let[h,f]=Object.entries(a)[0];l[h]=f}else l.tags=a;if(typeof s=="object"){let[h,f]=Object.entries(s)[0];l[h]=f}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=ns,l.wrap=Sh()},"addPersonOrSystem"),lke=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ml.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ml.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=Sh(),u.typeC4Shape={text:t},u.parentBoundary=ns},"addContainer"),cke=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ml.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ml.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=Sh(),u.typeC4Shape={text:t},u.parentBoundary=ns},"addComponent"),uke=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=ac.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,ac.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"system"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=ns,a.wrap=Sh(),pl=ns,ns=t,Eh.push(pl)},"addPersonOrSystemBoundary"),hke=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=ac.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,ac.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"container"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=ns,a.wrap=Sh(),pl=ns,ns=t,Eh.push(pl)},"addContainerBoundary"),fke=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ac.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ac.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.type={text:"node"};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.type={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.nodeType=t,u.parentBoundary=ns,u.wrap=Sh(),pl=ns,ns=e,Eh.push(pl)},"addDeploymentNode"),dke=o(function(){ns=pl,Eh.pop(),pl=Eh.pop(),Eh.push(pl)},"popBoundaryParseStack"),pke=o(function(t,e,r,n,i,a,s,l,u,h,f){let d=ml.find(p=>p.alias===e);if(!(d===void 0&&(d=ac.find(p=>p.alias===e),d===void 0))){if(r!=null)if(typeof r=="object"){let[p,m]=Object.entries(r)[0];d[p]=m}else d.bgColor=r;if(n!=null)if(typeof n=="object"){let[p,m]=Object.entries(n)[0];d[p]=m}else d.fontColor=n;if(i!=null)if(typeof i=="object"){let[p,m]=Object.entries(i)[0];d[p]=m}else d.borderColor=i;if(a!=null)if(typeof a=="object"){let[p,m]=Object.entries(a)[0];d[p]=m}else d.shadowing=a;if(s!=null)if(typeof s=="object"){let[p,m]=Object.entries(s)[0];d[p]=m}else d.shape=s;if(l!=null)if(typeof l=="object"){let[p,m]=Object.entries(l)[0];d[p]=m}else d.sprite=l;if(u!=null)if(typeof u=="object"){let[p,m]=Object.entries(u)[0];d[p]=m}else d.techn=u;if(h!=null)if(typeof h=="object"){let[p,m]=Object.entries(h)[0];d[p]=m}else d.legendText=h;if(f!=null)if(typeof f=="object"){let[p,m]=Object.entries(f)[0];d[p]=m}else d.legendSprite=f}},"updateElStyle"),mke=o(function(t,e,r,n,i,a,s){let l=ov.find(u=>u.from===e&&u.to===r);if(l!==void 0){if(n!=null)if(typeof n=="object"){let[u,h]=Object.entries(n)[0];l[u]=h}else l.textColor=n;if(i!=null)if(typeof i=="object"){let[u,h]=Object.entries(i)[0];l[u]=h}else l.lineColor=i;if(a!=null)if(typeof a=="object"){let[u,h]=Object.entries(a)[0];l[u]=parseInt(h)}else l.offsetX=parseInt(a);if(s!=null)if(typeof s=="object"){let[u,h]=Object.entries(s)[0];l[u]=parseInt(h)}else l.offsetY=parseInt(s)}},"updateRelStyle"),gke=o(function(t,e,r){let n=U3,i=H3;if(typeof e=="object"){let a=Object.values(e)[0];n=parseInt(a)}else n=parseInt(e);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(U3=n),i>=1&&(H3=i)},"updateLayoutConfig"),yke=o(function(){return U3},"getC4ShapeInRow"),vke=o(function(){return H3},"getC4BoundaryInRow"),xke=o(function(){return ns},"getCurrentBoundaryParse"),bke=o(function(){return pl},"getParentBoundaryParse"),hH=o(function(t){return t==null?ml:ml.filter(e=>e.parentBoundary===t)},"getC4ShapeArray"),Tke=o(function(t){return ml.find(e=>e.alias===t)},"getC4Shape"),wke=o(function(t){return Object.keys(hH(t))},"getC4ShapeKeys"),fH=o(function(t){return t==null?ac:ac.filter(e=>e.parentBoundary===t)},"getBoundaries"),kke=fH,Eke=o(function(){return ov},"getRels"),Ske=o(function(){return $A},"getTitle"),Cke=o(function(t){zA=t},"setWrap"),Sh=o(function(){return zA},"autoWrap"),Ake=o(function(){ml=[],ac=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],pl="",ns="global",Eh=[""],ov=[],Eh=[""],$A="",zA=!1,U3=4,H3=2},"clear"),_ke={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},Dke={FILLED:0,OPEN:1},Lke={LEFTOF:0,RIGHTOF:1,OVER:2},Rke=o(function(t){$A=sr(t,ge())},"setTitle"),lv={addPersonOrSystem:oke,addPersonOrSystemBoundary:uke,addContainer:lke,addContainerBoundary:hke,addComponent:cke,addDeploymentNode:fke,popBoundaryParseStack:dke,addRel:ske,updateElStyle:pke,updateRelStyle:mke,updateLayoutConfig:gke,autoWrap:Sh,setWrap:Cke,getC4ShapeArray:hH,getC4Shape:Tke,getC4ShapeKeys:wke,getBoundaries:fH,getBoundarys:kke,getCurrentBoundaryParse:xke,getParentBoundaryParse:bke,getRels:Eke,getTitle:Ske,getC4Type:ike,getC4ShapeInRow:yke,getC4BoundaryInRow:vke,setAccTitle:Rr,getAccTitle:Mr,getAccDescription:Or,setAccDescription:Ir,getConfig:o(()=>ge().c4,"getConfig"),clear:Ake,LINETYPE:_ke,ARROWTYPE:Dke,PLACEMENT:Lke,setTitle:Rke,setC4Type:ake}});function bd(t,e){return t==null||e==null?NaN:te?1:t>=e?0:NaN}var VA=M(()=>{"use strict";o(bd,"ascending")});function UA(t,e){return t==null||e==null?NaN:et?1:e>=t?0:NaN}var dH=M(()=>{"use strict";o(UA,"descending")});function Td(t){let e,r,n;t.length!==2?(e=bd,r=o((l,u)=>bd(t(l),u),"compare2"),n=o((l,u)=>t(l)-u,"delta")):(e=t===bd||t===UA?t:Nke,r=t,n=t);function i(l,u,h=0,f=l.length){if(h>>1;r(l[d],u)<0?h=d+1:f=d}while(h>>1;r(l[d],u)<=0?h=d+1:f=d}while(hh&&n(l[d-1],u)>-n(l[d],u)?d-1:d}return o(s,"center"),{left:i,center:s,right:a}}function Nke(){return 0}var HA=M(()=>{"use strict";VA();dH();o(Td,"bisector");o(Nke,"zero")});function qA(t){return t===null?NaN:+t}var pH=M(()=>{"use strict";o(qA,"number")});var mH,gH,Mke,Ike,WA,yH=M(()=>{"use strict";VA();HA();pH();mH=Td(bd),gH=mH.right,Mke=mH.left,Ike=Td(qA).center,WA=gH});function vH({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):r}function Oke({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):(t.set(n,r),r)}function Pke({_intern:t,_key:e},r){let n=e(r);return t.has(n)&&(r=t.get(n),t.delete(n)),r}function Bke(t){return t!==null&&typeof t=="object"?t.valueOf():t}var D0,xH=M(()=>{"use strict";D0=class extends Map{static{o(this,"InternMap")}constructor(e,r=Bke){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),e!=null)for(let[n,i]of e)this.set(n,i)}get(e){return super.get(vH(this,e))}has(e){return super.has(vH(this,e))}set(e,r){return super.set(Oke(this,e),r)}delete(e){return super.delete(Pke(this,e))}};o(vH,"intern_get");o(Oke,"intern_set");o(Pke,"intern_delete");o(Bke,"keyof")});function q3(t,e,r){let n=(e-t)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=Fke?10:a>=$ke?5:a>=zke?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(t*h),u=Math.round(e*h),l/he&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(t/h),u=Math.round(e/h),l*he&&--u),u0))return[];if(t===e)return[t];let n=e=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h{"use strict";Fke=Math.sqrt(50),$ke=Math.sqrt(10),zke=Math.sqrt(2);o(q3,"tickSpec");o(W3,"ticks");o(cv,"tickIncrement");o(L0,"tickStep")});function Y3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var TH=M(()=>{"use strict";o(Y3,"max")});function X3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var wH=M(()=>{"use strict";o(X3,"min")});function j3(t,e,r){t=+t,e=+e,r=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((e-t)/r))|0,a=new Array(i);++n{"use strict";o(j3,"range")});var Ch=M(()=>{"use strict";yH();HA();TH();wH();kH();bH();xH()});function YA(t){return t}var EH=M(()=>{"use strict";o(YA,"default")});function Gke(t){return"translate("+t+",0)"}function Vke(t){return"translate(0,"+t+")"}function Uke(t){return e=>+t(e)}function Hke(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function qke(){return!this.__axis}function CH(t,e){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=t===Q3||t===K3?-1:1,f=t===K3||t===XA?"x":"y",d=t===Q3||t===jA?Gke:Vke;function p(m){var g=n??(e.ticks?e.ticks.apply(e,r):e.domain()),y=i??(e.tickFormat?e.tickFormat.apply(e,r):YA),v=Math.max(a,0)+l,x=e.range(),b=+x[0]+u,T=+x[x.length-1]+u,S=(e.bandwidth?Hke:Uke)(e.copy(),u),w=m.selection?m.selection():m,k=w.selectAll(".domain").data([null]),C=w.selectAll(".tick").data(g,e).order(),A=C.exit(),L=C.enter().append("g").attr("class","tick"),I=C.select("line"),R=C.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),C=C.merge(L),I=I.merge(L.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),R=R.merge(L.append("text").attr("fill","currentColor").attr(f,h*v).attr("dy",t===Q3?"0em":t===jA?"0.71em":"0.32em")),m!==w&&(k=k.transition(m),C=C.transition(m),I=I.transition(m),R=R.transition(m),A=A.transition(m).attr("opacity",SH).attr("transform",function(E){return isFinite(E=S(E))?d(E+u):this.getAttribute("transform")}),L.attr("opacity",SH).attr("transform",function(E){var _=this.parentNode.__axis;return d((_&&isFinite(_=_(E))?_:S(E))+u)})),A.remove(),k.attr("d",t===K3||t===XA?s?"M"+h*s+","+b+"H"+u+"V"+T+"H"+h*s:"M"+u+","+b+"V"+T:s?"M"+b+","+h*s+"V"+u+"H"+T+"V"+h*s:"M"+b+","+u+"H"+T),C.attr("opacity",1).attr("transform",function(E){return d(S(E)+u)}),I.attr(f+"2",h*a),R.attr(f,h*v).text(y),w.filter(qke).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===XA?"start":t===K3?"end":"middle"),w.each(function(){this.__axis=S})}return o(p,"axis"),p.scale=function(m){return arguments.length?(e=m,p):e},p.ticks=function(){return r=Array.from(arguments),p},p.tickArguments=function(m){return arguments.length?(r=m==null?[]:Array.from(m),p):r.slice()},p.tickValues=function(m){return arguments.length?(n=m==null?null:Array.from(m),p):n&&n.slice()},p.tickFormat=function(m){return arguments.length?(i=m,p):i},p.tickSize=function(m){return arguments.length?(a=s=+m,p):a},p.tickSizeInner=function(m){return arguments.length?(a=+m,p):a},p.tickSizeOuter=function(m){return arguments.length?(s=+m,p):s},p.tickPadding=function(m){return arguments.length?(l=+m,p):l},p.offset=function(m){return arguments.length?(u=+m,p):u},p}function KA(t){return CH(Q3,t)}function QA(t){return CH(jA,t)}var Q3,XA,jA,K3,SH,AH=M(()=>{"use strict";EH();Q3=1,XA=2,jA=3,K3=4,SH=1e-6;o(Gke,"translateX");o(Vke,"translateY");o(Uke,"number");o(Hke,"center");o(qke,"entering");o(CH,"axis");o(KA,"axisTop");o(QA,"axisBottom")});var _H=M(()=>{"use strict";AH()});function LH(){for(var t=0,e=arguments.length,r={},n;t=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!e.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function Xke(t,e){for(var r=0,n=t.length,i;r{"use strict";Wke={value:o(()=>{},"value")};o(LH,"dispatch");o(Z3,"Dispatch");o(Yke,"parseTypenames");Z3.prototype=LH.prototype={constructor:Z3,on:o(function(t,e){var r=this._,n=Yke(t+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a0)for(var r=new Array(i),n=0,i,a;n{"use strict";RH()});var J3,e8,t8=M(()=>{"use strict";J3="http://www.w3.org/1999/xhtml",e8={svg:"http://www.w3.org/2000/svg",xhtml:J3,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function sc(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),e8.hasOwnProperty(e)?{space:e8[e],local:t}:t}var e5=M(()=>{"use strict";t8();o(sc,"default")});function jke(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===J3&&e.documentElement.namespaceURI===J3?e.createElement(t):e.createElementNS(r,t)}}function Kke(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function uv(t){var e=sc(t);return(e.local?Kke:jke)(e)}var r8=M(()=>{"use strict";e5();t8();o(jke,"creatorInherit");o(Kke,"creatorFixed");o(uv,"default")});function Qke(){}function Ah(t){return t==null?Qke:function(){return this.querySelector(t)}}var t5=M(()=>{"use strict";o(Qke,"none");o(Ah,"default")});function n8(t){typeof t!="function"&&(t=Ah(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";gl();t5();o(n8,"default")});function i8(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}var MH=M(()=>{"use strict";o(i8,"array")});function Zke(){return[]}function R0(t){return t==null?Zke:function(){return this.querySelectorAll(t)}}var a8=M(()=>{"use strict";o(Zke,"empty");o(R0,"default")});function Jke(t){return function(){return i8(t.apply(this,arguments))}}function s8(t){typeof t=="function"?t=Jke(t):t=R0(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a{"use strict";gl();MH();a8();o(Jke,"arrayAll");o(s8,"default")});function N0(t){return function(){return this.matches(t)}}function r5(t){return function(e){return e.matches(t)}}var hv=M(()=>{"use strict";o(N0,"default");o(r5,"childMatcher")});function tEe(t){return function(){return eEe.call(this.children,t)}}function rEe(){return this.firstElementChild}function o8(t){return this.select(t==null?rEe:tEe(typeof t=="function"?t:r5(t)))}var eEe,OH=M(()=>{"use strict";hv();eEe=Array.prototype.find;o(tEe,"childFind");o(rEe,"childFirst");o(o8,"default")});function iEe(){return Array.from(this.children)}function aEe(t){return function(){return nEe.call(this.children,t)}}function l8(t){return this.selectAll(t==null?iEe:aEe(typeof t=="function"?t:r5(t)))}var nEe,PH=M(()=>{"use strict";hv();nEe=Array.prototype.filter;o(iEe,"children");o(aEe,"childrenFilter");o(l8,"default")});function c8(t){typeof t!="function"&&(t=N0(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";gl();hv();o(c8,"default")});function fv(t){return new Array(t.length)}var u8=M(()=>{"use strict";o(fv,"default")});function h8(){return new ui(this._enter||this._groups.map(fv),this._parents)}function dv(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}var f8=M(()=>{"use strict";u8();gl();o(h8,"default");o(dv,"EnterNode");dv.prototype={constructor:dv,appendChild:o(function(t){return this._parent.insertBefore(t,this._next)},"appendChild"),insertBefore:o(function(t,e){return this._parent.insertBefore(t,e)},"insertBefore"),querySelector:o(function(t){return this._parent.querySelector(t)},"querySelector"),querySelectorAll:o(function(t){return this._parent.querySelectorAll(t)},"querySelectorAll")}});function d8(t){return function(){return t}}var FH=M(()=>{"use strict";o(d8,"default")});function sEe(t,e,r,n,i,a){for(var s=0,l,u=e.length,h=a.length;s=T&&(T=b+1);!(w=v[T])&&++T{"use strict";gl();f8();FH();o(sEe,"bindIndex");o(oEe,"bindKey");o(lEe,"datum");o(p8,"default");o(cEe,"arraylike")});function m8(){return new ui(this._exit||this._groups.map(fv),this._parents)}var zH=M(()=>{"use strict";u8();gl();o(m8,"default")});function g8(t,e,r){var n=this.enter(),i=this,a=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(i=e(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var GH=M(()=>{"use strict";o(g8,"default")});function y8(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u{"use strict";gl();o(y8,"default")});function v8(){for(var t=this._groups,e=-1,r=t.length;++e=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var UH=M(()=>{"use strict";o(v8,"default")});function x8(t){t||(t=uEe);function e(d,p){return d&&p?t(d.__data__,p.__data__):!d-!p}o(e,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;ae?1:t>=e?0:NaN}var HH=M(()=>{"use strict";gl();o(x8,"default");o(uEe,"ascending")});function b8(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}var qH=M(()=>{"use strict";o(b8,"default")});function T8(){return Array.from(this)}var WH=M(()=>{"use strict";o(T8,"default")});function w8(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(w8,"default")});function k8(){let t=0;for(let e of this)++t;return t}var XH=M(()=>{"use strict";o(k8,"default")});function E8(){return!this.node()}var jH=M(()=>{"use strict";o(E8,"default")});function S8(t){for(var e=this._groups,r=0,n=e.length;r{"use strict";o(S8,"default")});function hEe(t){return function(){this.removeAttribute(t)}}function fEe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function dEe(t,e){return function(){this.setAttribute(t,e)}}function pEe(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function mEe(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttribute(t):this.setAttribute(t,r)}}function gEe(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function C8(t,e){var r=sc(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((e==null?r.local?fEe:hEe:typeof e=="function"?r.local?gEe:mEe:r.local?pEe:dEe)(r,e))}var QH=M(()=>{"use strict";e5();o(hEe,"attrRemove");o(fEe,"attrRemoveNS");o(dEe,"attrConstant");o(pEe,"attrConstantNS");o(mEe,"attrFunction");o(gEe,"attrFunctionNS");o(C8,"default")});function pv(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}var A8=M(()=>{"use strict";o(pv,"default")});function yEe(t){return function(){this.style.removeProperty(t)}}function vEe(t,e,r){return function(){this.style.setProperty(t,e,r)}}function xEe(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function _8(t,e,r){return arguments.length>1?this.each((e==null?yEe:typeof e=="function"?xEe:vEe)(t,e,r??"")):_h(this.node(),t)}function _h(t,e){return t.style.getPropertyValue(e)||pv(t).getComputedStyle(t,null).getPropertyValue(e)}var D8=M(()=>{"use strict";A8();o(yEe,"styleRemove");o(vEe,"styleConstant");o(xEe,"styleFunction");o(_8,"default");o(_h,"styleValue")});function bEe(t){return function(){delete this[t]}}function TEe(t,e){return function(){this[t]=e}}function wEe(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function L8(t,e){return arguments.length>1?this.each((e==null?bEe:typeof e=="function"?wEe:TEe)(t,e)):this.node()[t]}var ZH=M(()=>{"use strict";o(bEe,"propertyRemove");o(TEe,"propertyConstant");o(wEe,"propertyFunction");o(L8,"default")});function JH(t){return t.trim().split(/^|\s+/)}function R8(t){return t.classList||new eq(t)}function eq(t){this._node=t,this._names=JH(t.getAttribute("class")||"")}function tq(t,e){for(var r=R8(t),n=-1,i=e.length;++n{"use strict";o(JH,"classArray");o(R8,"classList");o(eq,"ClassList");eq.prototype={add:o(function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(t){return this._names.indexOf(t)>=0},"contains")};o(tq,"classedAdd");o(rq,"classedRemove");o(kEe,"classedTrue");o(EEe,"classedFalse");o(SEe,"classedFunction");o(N8,"default")});function CEe(){this.textContent=""}function AEe(t){return function(){this.textContent=t}}function _Ee(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function M8(t){return arguments.length?this.each(t==null?CEe:(typeof t=="function"?_Ee:AEe)(t)):this.node().textContent}var iq=M(()=>{"use strict";o(CEe,"textRemove");o(AEe,"textConstant");o(_Ee,"textFunction");o(M8,"default")});function DEe(){this.innerHTML=""}function LEe(t){return function(){this.innerHTML=t}}function REe(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function I8(t){return arguments.length?this.each(t==null?DEe:(typeof t=="function"?REe:LEe)(t)):this.node().innerHTML}var aq=M(()=>{"use strict";o(DEe,"htmlRemove");o(LEe,"htmlConstant");o(REe,"htmlFunction");o(I8,"default")});function NEe(){this.nextSibling&&this.parentNode.appendChild(this)}function O8(){return this.each(NEe)}var sq=M(()=>{"use strict";o(NEe,"raise");o(O8,"default")});function MEe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function P8(){return this.each(MEe)}var oq=M(()=>{"use strict";o(MEe,"lower");o(P8,"default")});function B8(t){var e=typeof t=="function"?t:uv(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var lq=M(()=>{"use strict";r8();o(B8,"default")});function IEe(){return null}function F8(t,e){var r=typeof t=="function"?t:uv(t),n=e==null?IEe:typeof e=="function"?e:Ah(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var cq=M(()=>{"use strict";r8();t5();o(IEe,"constantNull");o(F8,"default")});function OEe(){var t=this.parentNode;t&&t.removeChild(this)}function $8(){return this.each(OEe)}var uq=M(()=>{"use strict";o(OEe,"remove");o($8,"default")});function PEe(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function BEe(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function z8(t){return this.select(t?BEe:PEe)}var hq=M(()=>{"use strict";o(PEe,"selection_cloneShallow");o(BEe,"selection_cloneDeep");o(z8,"default")});function G8(t){return arguments.length?this.property("__data__",t):this.node().__data__}var fq=M(()=>{"use strict";o(G8,"default")});function FEe(t){return function(e){t.call(this,e,this.__data__)}}function $Ee(t){return t.trim().split(/^|\s+/).map(function(e){var r="",n=e.indexOf(".");return n>=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function zEe(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r{"use strict";o(FEe,"contextListener");o($Ee,"parseTypenames");o(zEe,"onRemove");o(GEe,"onAdd");o(V8,"default")});function pq(t,e,r){var n=pv(t),i=n.CustomEvent;typeof i=="function"?i=new i(e,r):(i=n.document.createEvent("Event"),r?(i.initEvent(e,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function VEe(t,e){return function(){return pq(this,t,e)}}function UEe(t,e){return function(){return pq(this,t,e.apply(this,arguments))}}function U8(t,e){return this.each((typeof e=="function"?UEe:VEe)(t,e))}var mq=M(()=>{"use strict";A8();o(pq,"dispatchEvent");o(VEe,"dispatchConstant");o(UEe,"dispatchFunction");o(U8,"default")});function*H8(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(H8,"default")});function ui(t,e){this._groups=t,this._parents=e}function yq(){return new ui([[document.documentElement]],q8)}function HEe(){return this}var q8,yu,gl=M(()=>{"use strict";NH();IH();OH();PH();BH();$H();f8();zH();GH();VH();UH();HH();qH();WH();YH();XH();jH();KH();QH();D8();ZH();nq();iq();aq();sq();oq();lq();cq();uq();hq();fq();dq();mq();gq();q8=[null];o(ui,"Selection");o(yq,"selection");o(HEe,"selection_selection");ui.prototype=yq.prototype={constructor:ui,select:n8,selectAll:s8,selectChild:o8,selectChildren:l8,filter:c8,data:p8,enter:h8,exit:m8,join:g8,merge:y8,selection:HEe,order:v8,sort:x8,call:b8,nodes:T8,node:w8,size:k8,empty:E8,each:S8,attr:C8,style:_8,property:L8,classed:N8,text:M8,html:I8,raise:O8,lower:P8,append:B8,insert:F8,remove:$8,clone:z8,datum:G8,on:V8,dispatch:U8,[Symbol.iterator]:H8};yu=yq});function qe(t){return typeof t=="string"?new ui([[document.querySelector(t)]],[document.documentElement]):new ui([[t]],q8)}var vq=M(()=>{"use strict";gl();o(qe,"default")});var yl=M(()=>{"use strict";hv();e5();vq();gl();t5();a8();D8()});var xq=M(()=>{"use strict"});function Dh(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function M0(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}var W8=M(()=>{"use strict";o(Dh,"default");o(M0,"extend")});function Lh(){}function Tq(){return this.rgb().formatHex()}function ZEe(){return this.rgb().formatHex8()}function JEe(){return _q(this).formatHsl()}function wq(){return this.rgb().formatRgb()}function xl(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=qEe.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?kq(e):r===3?new la(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?n5(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?n5(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=WEe.exec(t))?new la(e[1],e[2],e[3],1):(e=YEe.exec(t))?new la(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=XEe.exec(t))?n5(e[1],e[2],e[3],e[4]):(e=jEe.exec(t))?n5(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=KEe.exec(t))?Cq(e[1],e[2]/100,e[3]/100,1):(e=QEe.exec(t))?Cq(e[1],e[2]/100,e[3]/100,e[4]):bq.hasOwnProperty(t)?kq(bq[t]):t==="transparent"?new la(NaN,NaN,NaN,0):null}function kq(t){return new la(t>>16&255,t>>8&255,t&255,1)}function n5(t,e,r,n){return n<=0&&(t=e=r=NaN),new la(t,e,r,n)}function X8(t){return t instanceof Lh||(t=xl(t)),t?(t=t.rgb(),new la(t.r,t.g,t.b,t.opacity)):new la}function O0(t,e,r,n){return arguments.length===1?X8(t):new la(t,e,r,n??1)}function la(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function Eq(){return`#${wd(this.r)}${wd(this.g)}${wd(this.b)}`}function eSe(){return`#${wd(this.r)}${wd(this.g)}${wd(this.b)}${wd((isNaN(this.opacity)?1:this.opacity)*255)}`}function Sq(){let t=s5(this.opacity);return`${t===1?"rgb(":"rgba("}${kd(this.r)}, ${kd(this.g)}, ${kd(this.b)}${t===1?")":`, ${t})`}`}function s5(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function kd(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function wd(t){return t=kd(t),(t<16?"0":"")+t.toString(16)}function Cq(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new vl(t,e,r,n)}function _q(t){if(t instanceof vl)return new vl(t.h,t.s,t.l,t.opacity);if(t instanceof Lh||(t=xl(t)),!t)return new vl;if(t instanceof vl)return t;t=t.rgb();var e=t.r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(e===a?s=(r-n)/l+(r0&&u<1?0:s,new vl(s,l,u,t.opacity)}function Dq(t,e,r,n){return arguments.length===1?_q(t):new vl(t,e,r,n??1)}function vl(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function Aq(t){return t=(t||0)%360,t<0?t+360:t}function i5(t){return Math.max(0,Math.min(1,t||0))}function Y8(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}var mv,a5,I0,gv,oc,qEe,WEe,YEe,XEe,jEe,KEe,QEe,bq,j8=M(()=>{"use strict";W8();o(Lh,"Color");mv=.7,a5=1/mv,I0="\\s*([+-]?\\d+)\\s*",gv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",oc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",qEe=/^#([0-9a-f]{3,8})$/,WEe=new RegExp(`^rgb\\(${I0},${I0},${I0}\\)$`),YEe=new RegExp(`^rgb\\(${oc},${oc},${oc}\\)$`),XEe=new RegExp(`^rgba\\(${I0},${I0},${I0},${gv}\\)$`),jEe=new RegExp(`^rgba\\(${oc},${oc},${oc},${gv}\\)$`),KEe=new RegExp(`^hsl\\(${gv},${oc},${oc}\\)$`),QEe=new RegExp(`^hsla\\(${gv},${oc},${oc},${gv}\\)$`),bq={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Dh(Lh,xl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Tq,formatHex:Tq,formatHex8:ZEe,formatHsl:JEe,formatRgb:wq,toString:wq});o(Tq,"color_formatHex");o(ZEe,"color_formatHex8");o(JEe,"color_formatHsl");o(wq,"color_formatRgb");o(xl,"color");o(kq,"rgbn");o(n5,"rgba");o(X8,"rgbConvert");o(O0,"rgb");o(la,"Rgb");Dh(la,O0,M0(Lh,{brighter(t){return t=t==null?a5:Math.pow(a5,t),new la(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?mv:Math.pow(mv,t),new la(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new la(kd(this.r),kd(this.g),kd(this.b),s5(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Eq,formatHex:Eq,formatHex8:eSe,formatRgb:Sq,toString:Sq}));o(Eq,"rgb_formatHex");o(eSe,"rgb_formatHex8");o(Sq,"rgb_formatRgb");o(s5,"clampa");o(kd,"clampi");o(wd,"hex");o(Cq,"hsla");o(_q,"hslConvert");o(Dq,"hsl");o(vl,"Hsl");Dh(vl,Dq,M0(Lh,{brighter(t){return t=t==null?a5:Math.pow(a5,t),new vl(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?mv:Math.pow(mv,t),new vl(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new la(Y8(t>=240?t-240:t+120,i,n),Y8(t,i,n),Y8(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new vl(Aq(this.h),i5(this.s),i5(this.l),s5(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=s5(this.opacity);return`${t===1?"hsl(":"hsla("}${Aq(this.h)}, ${i5(this.s)*100}%, ${i5(this.l)*100}%${t===1?")":`, ${t})`}`}}));o(Aq,"clamph");o(i5,"clampt");o(Y8,"hsl2rgb")});var Lq,Rq,Nq=M(()=>{"use strict";Lq=Math.PI/180,Rq=180/Math.PI});function Fq(t){if(t instanceof lc)return new lc(t.l,t.a,t.b,t.opacity);if(t instanceof vu)return $q(t);t instanceof la||(t=X8(t));var e=J8(t.r),r=J8(t.g),n=J8(t.b),i=K8((.2225045*e+.7168786*r+.0606169*n)/Iq),a,s;return e===r&&r===n?a=s=i:(a=K8((.4360747*e+.3850649*r+.1430804*n)/Mq),s=K8((.0139322*e+.0971045*r+.7141733*n)/Oq)),new lc(116*i-16,500*(a-i),200*(i-s),t.opacity)}function e_(t,e,r,n){return arguments.length===1?Fq(t):new lc(t,e,r,n??1)}function lc(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function K8(t){return t>tSe?Math.pow(t,1/3):t/Bq+Pq}function Q8(t){return t>P0?t*t*t:Bq*(t-Pq)}function Z8(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function J8(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function rSe(t){if(t instanceof vu)return new vu(t.h,t.c,t.l,t.opacity);if(t instanceof lc||(t=Fq(t)),t.a===0&&t.b===0)return new vu(NaN,0{"use strict";W8();j8();Nq();o5=18,Mq=.96422,Iq=1,Oq=.82521,Pq=4/29,P0=6/29,Bq=3*P0*P0,tSe=P0*P0*P0;o(Fq,"labConvert");o(e_,"lab");o(lc,"Lab");Dh(lc,e_,M0(Lh,{brighter(t){return new lc(this.l+o5*(t??1),this.a,this.b,this.opacity)},darker(t){return new lc(this.l-o5*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return e=Mq*Q8(e),t=Iq*Q8(t),r=Oq*Q8(r),new la(Z8(3.1338561*e-1.6168667*t-.4906146*r),Z8(-.9787684*e+1.9161415*t+.033454*r),Z8(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}}));o(K8,"xyz2lab");o(Q8,"lab2xyz");o(Z8,"lrgb2rgb");o(J8,"rgb2lrgb");o(rSe,"hclConvert");o(yv,"hcl");o(vu,"Hcl");o($q,"hcl2lab");Dh(vu,yv,M0(Lh,{brighter(t){return new vu(this.h,this.c,this.l+o5*(t??1),this.opacity)},darker(t){return new vu(this.h,this.c,this.l-o5*(t??1),this.opacity)},rgb(){return $q(this).rgb()}}))});var B0=M(()=>{"use strict";j8();zq()});function t_(t,e,r,n,i){var a=t*t,s=a*t;return((1-3*t+3*a-s)*e+(4-6*a+3*s)*r+(1+3*t+3*a-3*s)*n+s*i)/6}function r_(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],s=n>0?t[n-1]:2*i-a,l=n{"use strict";o(t_,"basis");o(r_,"default")});function i_(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],s=t[(n+1)%e],l=t[(n+2)%e];return t_((r-n/e)*e,i,a,s,l)}}var Gq=M(()=>{"use strict";n_();o(i_,"default")});var F0,a_=M(()=>{"use strict";F0=o(t=>()=>t,"default")});function Vq(t,e){return function(r){return t+r*e}}function nSe(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}function Uq(t,e){var r=e-t;return r?Vq(t,r>180||r<-180?r-360*Math.round(r/360):r):F0(isNaN(t)?e:t)}function Hq(t){return(t=+t)==1?xu:function(e,r){return r-e?nSe(e,r,t):F0(isNaN(e)?r:e)}}function xu(t,e){var r=e-t;return r?Vq(t,r):F0(isNaN(t)?e:t)}var s_=M(()=>{"use strict";a_();o(Vq,"linear");o(nSe,"exponential");o(Uq,"hue");o(Hq,"gamma");o(xu,"nogamma")});function qq(t){return function(e){var r=e.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s{"use strict";B0();n_();Gq();s_();Ed=o((function t(e){var r=Hq(e);function n(i,a){var s=r((i=O0(i)).r,(a=O0(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=xu(i.opacity,a.opacity);return function(f){return i.r=s(f),i.g=l(f),i.b=u(f),i.opacity=h(f),i+""}}return o(n,"rgb"),n.gamma=t,n}),"rgbGamma")(1);o(qq,"rgbSpline");iSe=qq(r_),aSe=qq(i_)});function l_(t,e){e||(e=[]);var r=t?Math.min(e.length,t.length):0,n=e.slice(),i;return function(a){for(i=0;i{"use strict";o(l_,"default");o(Wq,"isNumberArray")});function Xq(t,e){var r=e?e.length:0,n=t?Math.min(r,t.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s{"use strict";l5();o(Xq,"genericArray")});function c_(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}var Kq=M(()=>{"use strict";o(c_,"default")});function Wi(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var vv=M(()=>{"use strict";o(Wi,"default")});function u_(t,e){var r={},n={},i;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(i in e)i in t?r[i]=Rh(t[i],e[i]):n[i]=e[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var Qq=M(()=>{"use strict";l5();o(u_,"default")});function sSe(t){return function(){return t}}function oSe(t){return function(e){return t(e)+""}}function $0(t,e){var r=f_.lastIndex=h_.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(t=t+"",e=e+"";(n=f_.exec(t))&&(i=h_.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),l[s]?l[s]+=a:l[++s]=a),(n=n[0])===(i=i[0])?l[s]?l[s]+=i:l[++s]=i:(l[++s]=null,u.push({i:s,x:Wi(n,i)})),r=h_.lastIndex;return r{"use strict";vv();f_=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,h_=new RegExp(f_.source,"g");o(sSe,"zero");o(oSe,"one");o($0,"default")});function Rh(t,e){var r=typeof e,n;return e==null||r==="boolean"?F0(e):(r==="number"?Wi:r==="string"?(n=xl(e))?(e=n,Ed):$0:e instanceof xl?Ed:e instanceof Date?c_:Wq(e)?l_:Array.isArray(e)?Xq:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?u_:Wi)(t,e)}var l5=M(()=>{"use strict";B0();o_();jq();Kq();vv();Qq();d_();a_();Yq();o(Rh,"default")});function c5(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}}var Zq=M(()=>{"use strict";o(c5,"default")});function h5(t,e,r,n,i,a){var s,l,u;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(u=t*r+e*n)&&(r-=t*u,n-=e*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),t*n{"use strict";Jq=180/Math.PI,u5={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(h5,"default")});function tW(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?u5:h5(e.a,e.b,e.c,e.d,e.e,e.f)}function rW(t){return t==null?u5:(f5||(f5=document.createElementNS("http://www.w3.org/2000/svg","g")),f5.setAttribute("transform",t),(t=f5.transform.baseVal.consolidate())?(t=t.matrix,h5(t.a,t.b,t.c,t.d,t.e,t.f)):u5)}var f5,nW=M(()=>{"use strict";eW();o(tW,"parseCss");o(rW,"parseSvg")});function iW(t,e,r,n){function i(h){return h.length?h.pop()+" ":""}o(i,"pop");function a(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push("translate(",null,e,null,r);g.push({i:y-4,x:Wi(h,d)},{i:y-2,x:Wi(f,p)})}else(d||p)&&m.push("translate("+d+e+p+r)}o(a,"translate");function s(h,f,d,p){h!==f?(h-f>180?f+=360:f-h>180&&(h+=360),p.push({i:d.push(i(d)+"rotate(",null,n)-2,x:Wi(h,f)})):f&&d.push(i(d)+"rotate("+f+n)}o(s,"rotate");function l(h,f,d,p){h!==f?p.push({i:d.push(i(d)+"skewX(",null,n)-2,x:Wi(h,f)}):f&&d.push(i(d)+"skewX("+f+n)}o(l,"skewX");function u(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:Wi(h,d)},{i:y-2,x:Wi(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return o(u,"scale"),function(h,f){var d=[],p=[];return h=t(h),f=t(f),a(h.translateX,h.translateY,f.translateX,f.translateY,d,p),s(h.rotate,f.rotate,d,p),l(h.skewX,f.skewX,d,p),u(h.scaleX,h.scaleY,f.scaleX,f.scaleY,d,p),h=f=null,function(m){for(var g=-1,y=p.length,v;++g{"use strict";vv();nW();o(iW,"interpolateTransform");p_=iW(tW,"px, ","px)","deg)"),m_=iW(rW,", ",")",")")});function sW(t){return function(e,r){var n=t((e=yv(e)).h,(r=yv(r)).h),i=xu(e.c,r.c),a=xu(e.l,r.l),s=xu(e.opacity,r.opacity);return function(l){return e.h=n(l),e.c=i(l),e.l=a(l),e.opacity=s(l),e+""}}}var g_,lSe,oW=M(()=>{"use strict";B0();s_();o(sW,"hcl");g_=sW(Uq),lSe=sW(xu)});var z0=M(()=>{"use strict";l5();vv();Zq();d_();aW();o_();oW()});function Ev(){return Sd||(uW(cSe),Sd=wv.now()+m5)}function cSe(){Sd=0}function kv(){this._call=this._time=this._next=null}function g5(t,e,r){var n=new kv;return n.restart(t,e,r),n}function hW(){Ev(),++G0;for(var t=d5,e;t;)(e=Sd-t._time)>=0&&t._call.call(void 0,e),t=t._next;--G0}function lW(){Sd=(p5=wv.now())+m5,G0=bv=0;try{hW()}finally{G0=0,hSe(),Sd=0}}function uSe(){var t=wv.now(),e=t-p5;e>cW&&(m5-=e,p5=t)}function hSe(){for(var t,e=d5,r,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(r=e._next,e._next=null,e=t?t._next=r:d5=r);Tv=t,y_(n)}function y_(t){if(!G0){bv&&(bv=clearTimeout(bv));var e=t-Sd;e>24?(t<1/0&&(bv=setTimeout(lW,t-wv.now()-m5)),xv&&(xv=clearInterval(xv))):(xv||(p5=wv.now(),xv=setInterval(uSe,cW)),G0=1,uW(lW))}}var G0,bv,xv,cW,d5,Tv,p5,Sd,m5,wv,uW,v_=M(()=>{"use strict";G0=0,bv=0,xv=0,cW=1e3,p5=0,Sd=0,m5=0,wv=typeof performance=="object"&&performance.now?performance:Date,uW=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};o(Ev,"now");o(cSe,"clearNow");o(kv,"Timer");kv.prototype=g5.prototype={constructor:kv,restart:o(function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?Ev():+r)+(e==null?0:+e),!this._next&&Tv!==this&&(Tv?Tv._next=this:d5=this,Tv=this),this._call=t,this._time=r,y_()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,y_())},"stop")};o(g5,"timer");o(hW,"timerFlush");o(lW,"wake");o(uSe,"poke");o(hSe,"nap");o(y_,"sleep")});function Sv(t,e,r){var n=new kv;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var fW=M(()=>{"use strict";v_();o(Sv,"default")});var y5=M(()=>{"use strict";v_();fW()});function bu(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;pSe(t,r,{name:e,index:n,group:i,on:fSe,tween:dSe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:mW})}function Av(t,e){var r=Oi(t,e);if(r.state>mW)throw new Error("too late; already scheduled");return r}function ca(t,e){var r=Oi(t,e);if(r.state>v5)throw new Error("too late; already running");return r}function Oi(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function pSe(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=g5(a,0,r.time);function a(h){r.state=dW,r.timer.restart(s,r.delay,r.time),r.delay<=h&&s(h-r.delay)}o(a,"schedule");function s(h){var f,d,p,m;if(r.state!==dW)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===v5)return Sv(s);m.state===pW?(m.state=Cv,m.timer.stop(),m.on.call("interrupt",t,t.__data__,m.index,m.group),delete n[f]):+f{"use strict";JA();y5();fSe=ZA("start","end","cancel","interrupt"),dSe=[],mW=0,dW=1,x5=2,v5=3,pW=4,b5=5,Cv=6;o(bu,"default");o(Av,"init");o(ca,"set");o(Oi,"get");o(pSe,"create")});function _v(t,e){var r=t.__transition,n,i,a=!0,s;if(r){e=e==null?null:e+"";for(s in r){if((n=r[s]).name!==e){a=!1;continue}i=n.state>x5&&n.state{"use strict";Ds();o(_v,"default")});function x_(t){return this.each(function(){_v(this,t)})}var yW=M(()=>{"use strict";gW();o(x_,"default")});function mSe(t,e){var r,n;return function(){var i=ca(this,t),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";Ds();o(mSe,"tweenRemove");o(gSe,"tweenFunction");o(b_,"default");o(V0,"tweenValue")});function Lv(t,e){var r;return(typeof e=="number"?Wi:e instanceof xl?Ed:(r=xl(e))?(e=r,Ed):$0)(t,e)}var T_=M(()=>{"use strict";B0();z0();o(Lv,"default")});function ySe(t){return function(){this.removeAttribute(t)}}function vSe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function xSe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttribute(t);return s===i?null:s===n?a:a=e(n=s,r)}}function bSe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(t.space,t.local);return s===i?null:s===n?a:a=e(n=s,r)}}function TSe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(t):(s=this.getAttribute(t),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function wSe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(t.space,t.local):(s=this.getAttributeNS(t.space,t.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function w_(t,e){var r=sc(t),n=r==="transform"?m_:Lv;return this.attrTween(t,typeof e=="function"?(r.local?wSe:TSe)(r,n,V0(this,"attr."+t,e)):e==null?(r.local?vSe:ySe)(r):(r.local?bSe:xSe)(r,n,e))}var vW=M(()=>{"use strict";z0();yl();Dv();T_();o(ySe,"attrRemove");o(vSe,"attrRemoveNS");o(xSe,"attrConstant");o(bSe,"attrConstantNS");o(TSe,"attrFunction");o(wSe,"attrFunctionNS");o(w_,"default")});function kSe(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function ESe(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function SSe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&ESe(t,a)),r}return o(i,"tween"),i._value=e,i}function CSe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&kSe(t,a)),r}return o(i,"tween"),i._value=e,i}function k_(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;var n=sc(t);return this.tween(r,(n.local?SSe:CSe)(n,e))}var xW=M(()=>{"use strict";yl();o(kSe,"attrInterpolate");o(ESe,"attrInterpolateNS");o(SSe,"attrTweenNS");o(CSe,"attrTween");o(k_,"default")});function ASe(t,e){return function(){Av(this,t).delay=+e.apply(this,arguments)}}function _Se(t,e){return e=+e,function(){Av(this,t).delay=e}}function E_(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?ASe:_Se)(e,t)):Oi(this.node(),e).delay}var bW=M(()=>{"use strict";Ds();o(ASe,"delayFunction");o(_Se,"delayConstant");o(E_,"default")});function DSe(t,e){return function(){ca(this,t).duration=+e.apply(this,arguments)}}function LSe(t,e){return e=+e,function(){ca(this,t).duration=e}}function S_(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?DSe:LSe)(e,t)):Oi(this.node(),e).duration}var TW=M(()=>{"use strict";Ds();o(DSe,"durationFunction");o(LSe,"durationConstant");o(S_,"default")});function RSe(t,e){if(typeof e!="function")throw new Error;return function(){ca(this,t).ease=e}}function C_(t){var e=this._id;return arguments.length?this.each(RSe(e,t)):Oi(this.node(),e).ease}var wW=M(()=>{"use strict";Ds();o(RSe,"easeConstant");o(C_,"default")});function NSe(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;ca(this,t).ease=r}}function A_(t){if(typeof t!="function")throw new Error;return this.each(NSe(this._id,t))}var kW=M(()=>{"use strict";Ds();o(NSe,"easeVarying");o(A_,"default")});function __(t){typeof t!="function"&&(t=N0(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";yl();Cd();o(__,"default")});function D_(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l{"use strict";Cd();o(D_,"default")});function MSe(t){return(t+"").trim().split(/^|\s+/).every(function(e){var r=e.indexOf(".");return r>=0&&(e=e.slice(0,r)),!e||e==="start"})}function ISe(t,e,r){var n,i,a=MSe(e)?Av:ca;return function(){var s=a(this,t),l=s.on;l!==n&&(i=(n=l).copy()).on(e,r),s.on=i}}function L_(t,e){var r=this._id;return arguments.length<2?Oi(this.node(),r).on.on(t):this.each(ISe(r,t,e))}var CW=M(()=>{"use strict";Ds();o(MSe,"start");o(ISe,"onFunction");o(L_,"default")});function OSe(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function R_(){return this.on("end.remove",OSe(this._id))}var AW=M(()=>{"use strict";o(OSe,"removeFunction");o(R_,"default")});function N_(t){var e=this._name,r=this._id;typeof t!="function"&&(t=Ah(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";yl();Cd();Ds();o(N_,"default")});function M_(t){var e=this._name,r=this._id;typeof t!="function"&&(t=R0(t));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";yl();Cd();Ds();o(M_,"default")});function I_(){return new PSe(this._groups,this._parents)}var PSe,LW=M(()=>{"use strict";yl();PSe=yu.prototype.constructor;o(I_,"default")});function BSe(t,e){var r,n,i;return function(){var a=_h(this,t),s=(this.style.removeProperty(t),_h(this,t));return a===s?null:a===r&&s===n?i:i=e(r=a,n=s)}}function RW(t){return function(){this.style.removeProperty(t)}}function FSe(t,e,r){var n,i=r+"",a;return function(){var s=_h(this,t);return s===i?null:s===n?a:a=e(n=s,r)}}function $Se(t,e,r){var n,i,a;return function(){var s=_h(this,t),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(t),_h(this,t))),s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l))}}function zSe(t,e){var r,n,i,a="style."+e,s="end."+a,l;return function(){var u=ca(this,t),h=u.on,f=u.value[a]==null?l||(l=RW(e)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function O_(t,e,r){var n=(t+="")=="transform"?p_:Lv;return e==null?this.styleTween(t,BSe(t,n)).on("end.style."+t,RW(t)):typeof e=="function"?this.styleTween(t,$Se(t,n,V0(this,"style."+t,e))).each(zSe(this._id,t)):this.styleTween(t,FSe(t,n,e),r).on("end.style."+t,null)}var NW=M(()=>{"use strict";z0();yl();Ds();Dv();T_();o(BSe,"styleNull");o(RW,"styleRemove");o(FSe,"styleConstant");o($Se,"styleFunction");o(zSe,"styleMaybeRemove");o(O_,"default")});function GSe(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function VSe(t,e,r){var n,i;function a(){var s=e.apply(this,arguments);return s!==i&&(n=(i=s)&&GSe(t,s,r)),n}return o(a,"tween"),a._value=e,a}function P_(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,VSe(t,e,r??""))}var MW=M(()=>{"use strict";o(GSe,"styleInterpolate");o(VSe,"styleTween");o(P_,"default")});function USe(t){return function(){this.textContent=t}}function HSe(t){return function(){var e=t(this);this.textContent=e??""}}function B_(t){return this.tween("text",typeof t=="function"?HSe(V0(this,"text",t)):USe(t==null?"":t+""))}var IW=M(()=>{"use strict";Dv();o(USe,"textConstant");o(HSe,"textFunction");o(B_,"default")});function qSe(t){return function(e){this.textContent=t.call(this,e)}}function WSe(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&qSe(i)),e}return o(n,"tween"),n._value=t,n}function F_(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,WSe(t))}var OW=M(()=>{"use strict";o(qSe,"textInterpolate");o(WSe,"textTween");o(F_,"default")});function $_(){for(var t=this._name,e=this._id,r=T5(),n=this._groups,i=n.length,a=0;a{"use strict";Cd();Ds();o($_,"default")});function z_(){var t,e,r=this,n=r._id,i=r.size();return new Promise(function(a,s){var l={value:s},u={value:o(function(){--i===0&&a()},"value")};r.each(function(){var h=ca(this,n),f=h.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(l),e._.interrupt.push(l),e._.end.push(u)),h.on=e}),i===0&&a()})}var BW=M(()=>{"use strict";Ds();o(z_,"default")});function is(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function FW(t){return yu().transition(t)}function T5(){return++YSe}var YSe,Tu,Cd=M(()=>{"use strict";yl();vW();xW();bW();TW();wW();kW();EW();SW();CW();AW();_W();DW();LW();NW();MW();IW();OW();PW();Dv();BW();YSe=0;o(is,"Transition");o(FW,"transition");o(T5,"newId");Tu=yu.prototype;is.prototype=FW.prototype={constructor:is,select:N_,selectAll:M_,selectChild:Tu.selectChild,selectChildren:Tu.selectChildren,filter:__,merge:D_,selection:I_,transition:$_,call:Tu.call,nodes:Tu.nodes,node:Tu.node,size:Tu.size,empty:Tu.empty,each:Tu.each,on:L_,attr:w_,attrTween:k_,style:O_,styleTween:P_,text:B_,textTween:F_,remove:R_,tween:b_,delay:E_,duration:S_,ease:C_,easeVarying:A_,end:z_,[Symbol.iterator]:Tu[Symbol.iterator]}});function w5(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var $W=M(()=>{"use strict";o(w5,"cubicInOut")});var G_=M(()=>{"use strict";$W()});function jSe(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}function V_(t){var e,r;t instanceof is?(e=t._id,t=t._name):(e=T5(),(r=XSe).time=Ev(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";Cd();Ds();G_();y5();XSe={time:null,delay:0,duration:250,ease:w5};o(jSe,"inherit");o(V_,"default")});var GW=M(()=>{"use strict";yl();yW();zW();yu.prototype.interrupt=x_;yu.prototype.transition=V_});var k5=M(()=>{"use strict";GW()});var VW=M(()=>{"use strict"});var UW=M(()=>{"use strict"});var HW=M(()=>{"use strict"});function qW(t){return[+t[0],+t[1]]}function KSe(t){return[qW(t[0]),qW(t[1])]}function U_(t){return{type:t}}var p1t,m1t,g1t,y1t,v1t,x1t,WW=M(()=>{"use strict";k5();VW();UW();HW();({abs:p1t,max:m1t,min:g1t}=Math);o(qW,"number1");o(KSe,"number2");y1t={name:"x",handles:["w","e"].map(U_),input:o(function(t,e){return t==null?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},"input"),output:o(function(t){return t&&[t[0][0],t[1][0]]},"output")},v1t={name:"y",handles:["n","s"].map(U_),input:o(function(t,e){return t==null?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},"input"),output:o(function(t){return t&&[t[0][1],t[1][1]]},"output")},x1t={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(U_),input:o(function(t){return t==null?null:KSe(t)},"input"),output:o(function(t){return t},"output")};o(U_,"type")});var YW=M(()=>{"use strict";WW()});function XW(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return XW;let r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";H_=Math.PI,q_=2*H_,Ad=1e-6,QSe=q_-Ad;o(XW,"append");o(ZSe,"appendRound");_d=class{static{o(this,"Path")}constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e==null?XW:ZSe(e)}moveTo(e,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,r){this._append`L${this._x1=+e},${this._y1=+r}`}quadraticCurveTo(e,r,n,i){this._append`Q${+e},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(e,r,n,i,a,s){this._append`C${+e},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(e,r,n,i,a){if(e=+e,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,l=this._y1,u=n-e,h=i-r,f=s-e,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=e},${this._y1=r}`;else if(p>Ad)if(!(Math.abs(d*u-h*f)>Ad)||!a)this._append`L${this._x1=e},${this._y1=r}`;else{let m=n-s,g=i-l,y=u*u+h*h,v=m*m+g*g,x=Math.sqrt(y),b=Math.sqrt(p),T=a*Math.tan((H_-Math.acos((y+p-v)/(2*x*b)))/2),S=T/b,w=T/x;Math.abs(S-1)>Ad&&this._append`L${e+S*f},${r+S*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=e+w*u},${this._y1=r+w*h}`}}arc(e,r,n,i,a,s){if(e=+e,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),u=n*Math.sin(i),h=e+l,f=r+u,d=1^s,p=s?i-a:a-i;this._x1===null?this._append`M${h},${f}`:(Math.abs(this._x1-h)>Ad||Math.abs(this._y1-f)>Ad)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%q_+q_),p>QSe?this._append`A${n},${n},0,1,${d},${e-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>Ad&&this._append`A${n},${n},0,${+(p>=H_)},${d},${this._x1=e+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(e,r,n,i){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(jW,"path");jW.prototype=_d.prototype});var W_=M(()=>{"use strict";KW()});var QW=M(()=>{"use strict"});var ZW=M(()=>{"use strict"});var JW=M(()=>{"use strict"});var eY=M(()=>{"use strict"});var tY=M(()=>{"use strict"});var rY=M(()=>{"use strict"});var nY=M(()=>{"use strict"});function Y_(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function Dd(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}var Rv=M(()=>{"use strict";o(Y_,"default");o(Dd,"formatDecimalParts")});function bl(t){return t=Dd(Math.abs(t)),t?t[1]:NaN}var Nv=M(()=>{"use strict";Rv();o(bl,"default")});function X_(t,e){return function(r,n){for(var i=r.length,a=[],s=0,l=t[0],u=0;i>0&&l>0&&(u+l+1>n&&(l=Math.max(1,n-u)),a.push(r.substring(i-=l,i+l)),!((u+=l+1)>n));)l=t[s=(s+1)%t.length];return a.reverse().join(e)}}var iY=M(()=>{"use strict";o(X_,"default")});function j_(t){return function(e){return e.replace(/[0-9]/g,function(r){return t[+r]})}}var aY=M(()=>{"use strict";o(j_,"default")});function Nh(t){if(!(e=JSe.exec(t)))throw new Error("invalid format: "+t);var e;return new E5({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function E5(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}var JSe,K_=M(()=>{"use strict";JSe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Nh,"formatSpecifier");Nh.prototype=E5.prototype;o(E5,"FormatSpecifier");E5.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type}});function Q_(t){e:for(var e=t.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?t.slice(0,n)+t.slice(i+1):t}var sY=M(()=>{"use strict";o(Q_,"default")});function J_(t,e){var r=Dd(t,e);if(!r)return t+"";var n=r[0],i=r[1],a=i-(Z_=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,s=n.length;return a===s?n:a>s?n+new Array(a-s+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+Dd(t,Math.max(0,e+a-1))[0]}var Z_,eD=M(()=>{"use strict";Rv();o(J_,"default")});function S5(t,e){var r=Dd(t,e);if(!r)return t+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}var oY=M(()=>{"use strict";Rv();o(S5,"default")});var tD,lY=M(()=>{"use strict";Rv();eD();oY();tD={"%":o((t,e)=>(t*100).toFixed(e),"%"),b:o(t=>Math.round(t).toString(2),"b"),c:o(t=>t+"","c"),d:Y_,e:o((t,e)=>t.toExponential(e),"e"),f:o((t,e)=>t.toFixed(e),"f"),g:o((t,e)=>t.toPrecision(e),"g"),o:o(t=>Math.round(t).toString(8),"o"),p:o((t,e)=>S5(t*100,e),"p"),r:S5,s:J_,X:o(t=>Math.round(t).toString(16).toUpperCase(),"X"),x:o(t=>Math.round(t).toString(16),"x")}});function C5(t){return t}var cY=M(()=>{"use strict";o(C5,"default")});function rD(t){var e=t.grouping===void 0||t.thousands===void 0?C5:X_(uY.call(t.grouping,Number),t.thousands+""),r=t.currency===void 0?"":t.currency[0]+"",n=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",a=t.numerals===void 0?C5:j_(uY.call(t.numerals,String)),s=t.percent===void 0?"%":t.percent+"",l=t.minus===void 0?"\u2212":t.minus+"",u=t.nan===void 0?"NaN":t.nan+"";function h(d){d=Nh(d);var p=d.fill,m=d.align,g=d.sign,y=d.symbol,v=d.zero,x=d.width,b=d.comma,T=d.precision,S=d.trim,w=d.type;w==="n"?(b=!0,w="g"):tD[w]||(T===void 0&&(T=12),S=!0,w="g"),(v||p==="0"&&m==="=")&&(v=!0,p="0",m="=");var k=y==="$"?r:y==="#"&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",C=y==="$"?n:/[%p]/.test(w)?s:"",A=tD[w],L=/[defgprs%]/.test(w);T=T===void 0?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,T)):Math.max(0,Math.min(20,T));function I(R){var E=k,_=C,D,O,N;if(w==="c")_=A(R)+_,R="";else{R=+R;var P=R<0||1/R<0;if(R=isNaN(R)?u:A(Math.abs(R),T),S&&(R=Q_(R)),P&&+R==0&&g!=="+"&&(P=!1),E=(P?g==="("?g:l:g==="-"||g==="("?"":g)+E,_=(w==="s"?hY[8+Z_/3]:"")+_+(P&&g==="("?")":""),L){for(D=-1,O=R.length;++DN||N>57){_=(N===46?i+R.slice(D+1):R.slice(D))+_,R=R.slice(0,D);break}}}b&&!v&&(R=e(R,1/0));var B=E.length+R.length+_.length,F=B>1)+E+R+_+F.slice(B);break;default:R=F+E+R+_;break}return a(R)}return o(I,"format"),I.toString=function(){return d+""},I}o(h,"newFormat");function f(d,p){var m=h((d=Nh(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(bl(p)/3)))*3,y=Math.pow(10,-g),v=hY[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var uY,hY,fY=M(()=>{"use strict";Nv();iY();aY();K_();sY();lY();eD();cY();uY=Array.prototype.map,hY=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(rD,"default")});function nD(t){return A5=rD(t),cc=A5.format,_5=A5.formatPrefix,A5}var A5,cc,_5,dY=M(()=>{"use strict";fY();nD({thousands:",",grouping:[3],currency:["$",""]});o(nD,"defaultLocale")});function D5(t){return Math.max(0,-bl(Math.abs(t)))}var pY=M(()=>{"use strict";Nv();o(D5,"default")});function L5(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(bl(e)/3)))*3-bl(Math.abs(t)))}var mY=M(()=>{"use strict";Nv();o(L5,"default")});function R5(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,bl(e)-bl(t))+1}var gY=M(()=>{"use strict";Nv();o(R5,"default")});var iD=M(()=>{"use strict";dY();K_();pY();mY();gY()});var yY=M(()=>{"use strict"});function e6e(t){var e=0,r=t.children,n=r&&r.length;if(!n)e=1;else for(;--n>=0;)e+=r[n].value;t.value=e}function aD(){return this.eachAfter(e6e)}var vY=M(()=>{"use strict";o(e6e,"count");o(aD,"default")});function sD(t,e){let r=-1;for(let n of this)t.call(e,n,++r,this);return this}var xY=M(()=>{"use strict";o(sD,"default")});function oD(t,e){for(var r=this,n=[r],i,a,s=-1;r=n.pop();)if(t.call(e,r,++s,this),i=r.children)for(a=i.length-1;a>=0;--a)n.push(i[a]);return this}var bY=M(()=>{"use strict";o(oD,"default")});function lD(t,e){for(var r=this,n=[r],i=[],a,s,l,u=-1;r=n.pop();)if(i.push(r),a=r.children)for(s=0,l=a.length;s{"use strict";o(lD,"default")});function cD(t,e){let r=-1;for(let n of this)if(t.call(e,n,++r,this))return n}var wY=M(()=>{"use strict";o(cD,"default")});function uD(t){return this.eachAfter(function(e){for(var r=+t(e.data)||0,n=e.children,i=n&&n.length;--i>=0;)r+=n[i].value;e.value=r})}var kY=M(()=>{"use strict";o(uD,"default")});function hD(t){return this.eachBefore(function(e){e.children&&e.children.sort(t)})}var EY=M(()=>{"use strict";o(hD,"default")});function fD(t){for(var e=this,r=t6e(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var i=n.length;t!==r;)n.splice(i,0,t),t=t.parent;return n}function t6e(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),i=null;for(t=r.pop(),e=n.pop();t===e;)i=t,t=r.pop(),e=n.pop();return i}var SY=M(()=>{"use strict";o(fD,"default");o(t6e,"leastCommonAncestor")});function dD(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e}var CY=M(()=>{"use strict";o(dD,"default")});function pD(){return Array.from(this)}var AY=M(()=>{"use strict";o(pD,"default")});function mD(){var t=[];return this.eachBefore(function(e){e.children||t.push(e)}),t}var _Y=M(()=>{"use strict";o(mD,"default")});function gD(){var t=this,e=[];return t.each(function(r){r!==t&&e.push({source:r.parent,target:r})}),e}var DY=M(()=>{"use strict";o(gD,"default")});function*yD(){var t=this,e,r=[t],n,i,a;do for(e=r.reverse(),r=[];t=e.pop();)if(yield t,n=t.children)for(i=0,a=n.length;i{"use strict";o(yD,"default")});function U0(t,e){t instanceof Map?(t=[void 0,t],e===void 0&&(e=i6e)):e===void 0&&(e=n6e);for(var r=new Mv(t),n,i=[r],a,s,l,u;n=i.pop();)if((s=e(n.data))&&(u=(s=Array.from(s)).length))for(n.children=s,l=u-1;l>=0;--l)i.push(a=s[l]=new Mv(s[l])),a.parent=n,a.depth=n.depth+1;return r.eachBefore(s6e)}function r6e(){return U0(this).eachBefore(a6e)}function n6e(t){return t.children}function i6e(t){return Array.isArray(t)?t[1]:null}function a6e(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function s6e(t){var e=0;do t.height=e;while((t=t.parent)&&t.height<++e)}function Mv(t){this.data=t,this.depth=this.height=0,this.parent=null}var RY=M(()=>{"use strict";vY();xY();bY();TY();wY();kY();EY();SY();CY();AY();_Y();DY();LY();o(U0,"hierarchy");o(r6e,"node_copy");o(n6e,"objectChildren");o(i6e,"mapChildren");o(a6e,"copyData");o(s6e,"computeHeight");o(Mv,"Node");Mv.prototype=U0.prototype={constructor:Mv,count:aD,each:sD,eachAfter:lD,eachBefore:oD,find:cD,sum:uD,sort:hD,path:fD,ancestors:dD,descendants:pD,leaves:mD,links:gD,copy:r6e,[Symbol.iterator]:yD}});function NY(t){if(typeof t!="function")throw new Error;return t}var MY=M(()=>{"use strict";o(NY,"required")});function H0(){return 0}function Ld(t){return function(){return t}}var IY=M(()=>{"use strict";o(H0,"constantZero");o(Ld,"default")});function vD(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}var OY=M(()=>{"use strict";o(vD,"default")});function xD(t,e,r,n,i){for(var a=t.children,s,l=-1,u=a.length,h=t.value&&(n-e)/t.value;++l{"use strict";o(xD,"default")});function bD(t,e,r,n,i){for(var a=t.children,s,l=-1,u=a.length,h=t.value&&(i-r)/t.value;++l{"use strict";o(bD,"default")});function l6e(t,e,r,n,i,a){for(var s=[],l=e.children,u,h,f=0,d=0,p=l.length,m,g,y=e.value,v,x,b,T,S,w,k;fb&&(b=h),k=v*v*w,T=Math.max(b/k,k/x),T>S){v-=h;break}S=T}s.push(u={value:v,dice:m{"use strict";PY();BY();o6e=(1+Math.sqrt(5))/2;o(l6e,"squarifyRatio");FY=o((function t(e){function r(n,i,a,s,l){l6e(e,n,i,a,s,l)}return o(r,"squarify"),r.ratio=function(n){return t((n=+n)>1?n:1)},r}),"custom")(o6e)});function N5(){var t=FY,e=!1,r=1,n=1,i=[0],a=H0,s=H0,l=H0,u=H0,h=H0;function f(p){return p.x0=p.y0=0,p.x1=r,p.y1=n,p.eachBefore(d),i=[0],e&&p.eachBefore(vD),p}o(f,"treemap");function d(p){var m=i[p.depth],g=p.x0+m,y=p.y0+m,v=p.x1-m,x=p.y1-m;v{"use strict";OY();$Y();MY();IY();o(N5,"default")});var GY=M(()=>{"use strict";RY();zY()});var VY=M(()=>{"use strict"});var UY=M(()=>{"use strict"});function Mh(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);break}return this}var Iv=M(()=>{"use strict";o(Mh,"initRange")});function no(){var t=new D0,e=[],r=[],n=TD;function i(a){let s=t.get(a);if(s===void 0){if(n!==TD)return n;t.set(a,s=e.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return e.slice();e=[],t=new D0;for(let s of a)t.has(s)||t.set(s,e.push(s)-1);return i},i.range=function(a){return arguments.length?(r=Array.from(a),i):r.slice()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return no(e,r).unknown(n)},Mh.apply(i,arguments),i}var TD,wD=M(()=>{"use strict";Ch();Iv();TD=Symbol("implicit");o(no,"ordinal")});function q0(){var t=no().unknown(void 0),e=t.domain,r=t.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete t.unknown;function d(){var p=e().length,m=i{"use strict";Ch();Iv();wD();o(q0,"band")});function kD(t){return function(){return t}}var qY=M(()=>{"use strict";o(kD,"constants")});function ED(t){return+t}var WY=M(()=>{"use strict";o(ED,"number")});function W0(t){return t}function SD(t,e){return(e-=t=+t)?function(r){return(r-t)/e}:kD(isNaN(e)?NaN:.5)}function c6e(t,e){var r;return t>e&&(r=t,t=e,e=r),function(n){return Math.max(t,Math.min(e,n))}}function u6e(t,e,r){var n=t[0],i=t[1],a=e[0],s=e[1];return i2?h6e:u6e,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(t.map(n),e,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(e,t.map(n),Wi)))(p)))},d.domain=function(p){return arguments.length?(t=Array.from(p,ED),f()):t.slice()},d.range=function(p){return arguments.length?(e=Array.from(p),f()):e.slice()},d.rangeRound=function(p){return e=Array.from(p),r=c5,f()},d.clamp=function(p){return arguments.length?(s=p?!0:W0,f()):s!==W0},d.interpolate=function(p){return arguments.length?(r=p,f()):r},d.unknown=function(p){return arguments.length?(a=p,d):a},function(p,m){return n=p,i=m,f()}}function Ov(){return f6e()(W0,W0)}var YY,CD=M(()=>{"use strict";Ch();z0();qY();WY();YY=[0,1];o(W0,"identity");o(SD,"normalize");o(c6e,"clamper");o(u6e,"bimap");o(h6e,"polymap");o(M5,"copy");o(f6e,"transformer");o(Ov,"continuous")});function AD(t,e,r,n){var i=L0(t,e,r),a;switch(n=Nh(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(t),Math.abs(e));return n.precision==null&&!isNaN(a=L5(i,s))&&(n.precision=a),_5(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=R5(i,Math.max(Math.abs(t),Math.abs(e))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=D5(i))&&(n.precision=a-(n.type==="%")*2);break}}return cc(n)}var XY=M(()=>{"use strict";Ch();iD();o(AD,"tickFormat")});function d6e(t){var e=t.domain;return t.ticks=function(r){var n=e();return W3(n[0],n[n.length-1],r??10)},t.tickFormat=function(r,n){var i=e();return AD(i[0],i[i.length-1],r??10,n)},t.nice=function(r){r==null&&(r=10);var n=e(),i=0,a=n.length-1,s=n[i],l=n[a],u,h,f=10;for(l0;){if(h=cv(s,l,r),h===u)return n[i]=s,n[a]=l,e(n);if(h>0)s=Math.floor(s/h)*h,l=Math.ceil(l/h)*h;else if(h<0)s=Math.ceil(s*h)/h,l=Math.floor(l*h)/h;else break;u=h}return t},t}function Tl(){var t=Ov();return t.copy=function(){return M5(t,Tl())},Mh.apply(t,arguments),d6e(t)}var jY=M(()=>{"use strict";Ch();CD();Iv();XY();o(d6e,"linearish");o(Tl,"linear")});function _D(t,e){t=t.slice();var r=0,n=t.length-1,i=t[r],a=t[n],s;return a{"use strict";o(_D,"nice")});function En(t,e,r,n){function i(a){return t(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s(e(a=new Date(+a),s==null?1:Math.floor(s)),a),i.range=(a,s,l)=>{let u=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a0))return u;let h;do u.push(h=new Date(+a)),e(a,l),t(a);while(hEn(s=>{if(s>=s)for(;t(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;e(s,-1),!a(s););else for(;--l>=0;)for(;e(s,1),!a(s););}),r&&(i.count=(a,s)=>(DD.setTime(+a),LD.setTime(+s),t(DD),t(LD),Math.floor(r(DD,LD))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?s=>n(s)%a===0:s=>i.count(0,s)%a===0):i)),i}var DD,LD,wu=M(()=>{"use strict";DD=new Date,LD=new Date;o(En,"timeInterval")});var uc,QY,RD=M(()=>{"use strict";wu();uc=En(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);uc.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?En(e=>{e.setTime(Math.floor(e/t)*t)},(e,r)=>{e.setTime(+e+r*t)},(e,r)=>(r-e)/t):uc);QY=uc.range});var io,ZY,ND=M(()=>{"use strict";wu();io=En(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*1e3)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds()),ZY=io.range});var ku,p6e,I5,m6e,MD=M(()=>{"use strict";wu();ku=En(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getMinutes()),p6e=ku.range,I5=En(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()),m6e=I5.range});var Eu,g6e,O5,y6e,ID=M(()=>{"use strict";wu();Eu=En(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3-t.getMinutes()*6e4)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getHours()),g6e=Eu.range,O5=En(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()),y6e=O5.range});var Ro,v6e,Bv,x6e,P5,b6e,OD=M(()=>{"use strict";wu();Ro=En(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5,t=>t.getDate()-1),v6e=Ro.range,Bv=En(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1),x6e=Bv.range,P5=En(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)),b6e=P5.range});function Md(t){return En(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,r)=>{e.setDate(e.getDate()+r*7)},(e,r)=>(r-e-(r.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/6048e5)}function Id(t){return En(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCDate(e.getUTCDate()+r*7)},(e,r)=>(r-e)/6048e5)}var wl,Ih,B5,F5,fc,$5,z5,eX,T6e,w6e,k6e,E6e,S6e,C6e,Od,Y0,tX,rX,Oh,nX,iX,aX,A6e,_6e,D6e,L6e,R6e,N6e,PD=M(()=>{"use strict";wu();o(Md,"timeWeekday");wl=Md(0),Ih=Md(1),B5=Md(2),F5=Md(3),fc=Md(4),$5=Md(5),z5=Md(6),eX=wl.range,T6e=Ih.range,w6e=B5.range,k6e=F5.range,E6e=fc.range,S6e=$5.range,C6e=z5.range;o(Id,"utcWeekday");Od=Id(0),Y0=Id(1),tX=Id(2),rX=Id(3),Oh=Id(4),nX=Id(5),iX=Id(6),aX=Od.range,A6e=Y0.range,_6e=tX.range,D6e=rX.range,L6e=Oh.range,R6e=nX.range,N6e=iX.range});var Su,M6e,G5,I6e,BD=M(()=>{"use strict";wu();Su=En(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),M6e=Su.range,G5=En(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),I6e=G5.range});var ao,O6e,kl,P6e,FD=M(()=>{"use strict";wu();ao=En(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());ao.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:En(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,r)=>{e.setFullYear(e.getFullYear()+r*t)});O6e=ao.range,kl=En(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());kl.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:En(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)});P6e=kl.range});function oX(t,e,r,n,i,a){let s=[[io,1,1e3],[io,5,5*1e3],[io,15,15*1e3],[io,30,30*1e3],[a,1,6e4],[a,5,5*6e4],[a,15,15*6e4],[a,30,30*6e4],[i,1,36e5],[i,3,3*36e5],[i,6,6*36e5],[i,12,12*36e5],[n,1,864e5],[n,2,2*864e5],[r,1,6048e5],[e,1,2592e6],[e,3,3*2592e6],[t,1,31536e6]];function l(h,f,d){let p=fv).right(s,p);if(m===s.length)return t.every(L0(h/31536e6,f/31536e6,d));if(m===0)return uc.every(Math.max(L0(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";Ch();RD();ND();MD();ID();OD();PD();BD();FD();o(oX,"ticker");[F6e,$6e]=oX(kl,G5,Od,P5,O5,I5),[$D,zD]=oX(ao,Su,wl,Ro,Eu,ku)});var V5=M(()=>{"use strict";RD();ND();MD();ID();OD();PD();BD();FD();lX()});function GD(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function VD(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Fv(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function UD(t){var e=t.dateTime,r=t.date,n=t.time,i=t.periods,a=t.days,s=t.shortDays,l=t.months,u=t.shortMonths,h=$v(i),f=zv(i),d=$v(a),p=zv(a),m=$v(s),g=zv(s),y=$v(l),v=zv(l),x=$v(u),b=zv(u),T={a:P,A:B,b:F,B:V,c:null,d:pX,e:pX,f:lCe,g:vCe,G:bCe,H:aCe,I:sCe,j:oCe,L:xX,m:cCe,M:uCe,p:$,q:U,Q:yX,s:vX,S:hCe,u:fCe,U:dCe,V:pCe,w:mCe,W:gCe,x:null,X:null,y:yCe,Y:xCe,Z:TCe,"%":gX},S={a:j,A:ee,b:q,B:oe,c:null,d:mX,e:mX,f:SCe,g:OCe,G:BCe,H:wCe,I:kCe,j:ECe,L:TX,m:CCe,M:ACe,p:Q,q:ue,Q:yX,s:vX,S:_Ce,u:DCe,U:LCe,V:RCe,w:NCe,W:MCe,x:null,X:null,y:ICe,Y:PCe,Z:FCe,"%":gX},w={a:I,A:R,b:E,B:_,c:D,d:fX,e:fX,f:tCe,g:hX,G:uX,H:dX,I:dX,j:Q6e,L:eCe,m:K6e,M:Z6e,p:L,q:j6e,Q:nCe,s:iCe,S:J6e,u:H6e,U:q6e,V:W6e,w:U6e,W:Y6e,x:O,X:N,y:hX,Y:uX,Z:X6e,"%":rCe};T.x=k(r,T),T.X=k(n,T),T.c=k(e,T),S.x=k(r,S),S.X=k(n,S),S.c=k(e,S);function k(te,re){return function(J){var K=[],ae=-1,Z=0,de=te.length,ne,Te,W;for(J instanceof Date||(J=new Date(+J));++ae53)return null;"w"in K||(K.w=1),"Z"in K?(Z=VD(Fv(K.y,0,1)),de=Z.getUTCDay(),Z=de>4||de===0?Y0.ceil(Z):Y0(Z),Z=Bv.offset(Z,(K.V-1)*7),K.y=Z.getUTCFullYear(),K.m=Z.getUTCMonth(),K.d=Z.getUTCDate()+(K.w+6)%7):(Z=GD(Fv(K.y,0,1)),de=Z.getDay(),Z=de>4||de===0?Ih.ceil(Z):Ih(Z),Z=Ro.offset(Z,(K.V-1)*7),K.y=Z.getFullYear(),K.m=Z.getMonth(),K.d=Z.getDate()+(K.w+6)%7)}else("W"in K||"U"in K)&&("w"in K||(K.w="u"in K?K.u%7:"W"in K?1:0),de="Z"in K?VD(Fv(K.y,0,1)).getUTCDay():GD(Fv(K.y,0,1)).getDay(),K.m=0,K.d="W"in K?(K.w+6)%7+K.W*7-(de+5)%7:K.w+K.U*7-(de+6)%7);return"Z"in K?(K.H+=K.Z/100|0,K.M+=K.Z%100,VD(K)):GD(K)}}o(C,"newParse");function A(te,re,J,K){for(var ae=0,Z=re.length,de=J.length,ne,Te;ae=de)return-1;if(ne=re.charCodeAt(ae++),ne===37){if(ne=re.charAt(ae++),Te=w[ne in cX?re.charAt(ae++):ne],!Te||(K=Te(te,J,K))<0)return-1}else if(ne!=J.charCodeAt(K++))return-1}return K}o(A,"parseSpecifier");function L(te,re,J){var K=h.exec(re.slice(J));return K?(te.p=f.get(K[0].toLowerCase()),J+K[0].length):-1}o(L,"parsePeriod");function I(te,re,J){var K=m.exec(re.slice(J));return K?(te.w=g.get(K[0].toLowerCase()),J+K[0].length):-1}o(I,"parseShortWeekday");function R(te,re,J){var K=d.exec(re.slice(J));return K?(te.w=p.get(K[0].toLowerCase()),J+K[0].length):-1}o(R,"parseWeekday");function E(te,re,J){var K=x.exec(re.slice(J));return K?(te.m=b.get(K[0].toLowerCase()),J+K[0].length):-1}o(E,"parseShortMonth");function _(te,re,J){var K=y.exec(re.slice(J));return K?(te.m=v.get(K[0].toLowerCase()),J+K[0].length):-1}o(_,"parseMonth");function D(te,re,J){return A(te,e,re,J)}o(D,"parseLocaleDateTime");function O(te,re,J){return A(te,r,re,J)}o(O,"parseLocaleDate");function N(te,re,J){return A(te,n,re,J)}o(N,"parseLocaleTime");function P(te){return s[te.getDay()]}o(P,"formatShortWeekday");function B(te){return a[te.getDay()]}o(B,"formatWeekday");function F(te){return u[te.getMonth()]}o(F,"formatShortMonth");function V(te){return l[te.getMonth()]}o(V,"formatMonth");function $(te){return i[+(te.getHours()>=12)]}o($,"formatPeriod");function U(te){return 1+~~(te.getMonth()/3)}o(U,"formatQuarter");function j(te){return s[te.getUTCDay()]}o(j,"formatUTCShortWeekday");function ee(te){return a[te.getUTCDay()]}o(ee,"formatUTCWeekday");function q(te){return u[te.getUTCMonth()]}o(q,"formatUTCShortMonth");function oe(te){return l[te.getUTCMonth()]}o(oe,"formatUTCMonth");function Q(te){return i[+(te.getUTCHours()>=12)]}o(Q,"formatUTCPeriod");function ue(te){return 1+~~(te.getUTCMonth()/3)}return o(ue,"formatUTCQuarter"),{format:o(function(te){var re=k(te+="",T);return re.toString=function(){return te},re},"format"),parse:o(function(te){var re=C(te+="",!1);return re.toString=function(){return te},re},"parse"),utcFormat:o(function(te){var re=k(te+="",S);return re.toString=function(){return te},re},"utcFormat"),utcParse:o(function(te){var re=C(te+="",!0);return re.toString=function(){return te},re},"utcParse")}}function Kr(t,e,r){var n=t<0?"-":"",i=(n?-t:t)+"",a=i.length;return n+(a[e.toLowerCase(),r]))}function U6e(t,e,r){var n=Yi.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function H6e(t,e,r){var n=Yi.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function q6e(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function W6e(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function Y6e(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function uX(t,e,r){var n=Yi.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function hX(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function X6e(t,e,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function j6e(t,e,r){var n=Yi.exec(e.slice(r,r+1));return n?(t.q=n[0]*3-3,r+n[0].length):-1}function K6e(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function fX(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function Q6e(t,e,r){var n=Yi.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function dX(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function Z6e(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function J6e(t,e,r){var n=Yi.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function eCe(t,e,r){var n=Yi.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function tCe(t,e,r){var n=Yi.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function rCe(t,e,r){var n=z6e.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function nCe(t,e,r){var n=Yi.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function iCe(t,e,r){var n=Yi.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function pX(t,e){return Kr(t.getDate(),e,2)}function aCe(t,e){return Kr(t.getHours(),e,2)}function sCe(t,e){return Kr(t.getHours()%12||12,e,2)}function oCe(t,e){return Kr(1+Ro.count(ao(t),t),e,3)}function xX(t,e){return Kr(t.getMilliseconds(),e,3)}function lCe(t,e){return xX(t,e)+"000"}function cCe(t,e){return Kr(t.getMonth()+1,e,2)}function uCe(t,e){return Kr(t.getMinutes(),e,2)}function hCe(t,e){return Kr(t.getSeconds(),e,2)}function fCe(t){var e=t.getDay();return e===0?7:e}function dCe(t,e){return Kr(wl.count(ao(t)-1,t),e,2)}function bX(t){var e=t.getDay();return e>=4||e===0?fc(t):fc.ceil(t)}function pCe(t,e){return t=bX(t),Kr(fc.count(ao(t),t)+(ao(t).getDay()===4),e,2)}function mCe(t){return t.getDay()}function gCe(t,e){return Kr(Ih.count(ao(t)-1,t),e,2)}function yCe(t,e){return Kr(t.getFullYear()%100,e,2)}function vCe(t,e){return t=bX(t),Kr(t.getFullYear()%100,e,2)}function xCe(t,e){return Kr(t.getFullYear()%1e4,e,4)}function bCe(t,e){var r=t.getDay();return t=r>=4||r===0?fc(t):fc.ceil(t),Kr(t.getFullYear()%1e4,e,4)}function TCe(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Kr(e/60|0,"0",2)+Kr(e%60,"0",2)}function mX(t,e){return Kr(t.getUTCDate(),e,2)}function wCe(t,e){return Kr(t.getUTCHours(),e,2)}function kCe(t,e){return Kr(t.getUTCHours()%12||12,e,2)}function ECe(t,e){return Kr(1+Bv.count(kl(t),t),e,3)}function TX(t,e){return Kr(t.getUTCMilliseconds(),e,3)}function SCe(t,e){return TX(t,e)+"000"}function CCe(t,e){return Kr(t.getUTCMonth()+1,e,2)}function ACe(t,e){return Kr(t.getUTCMinutes(),e,2)}function _Ce(t,e){return Kr(t.getUTCSeconds(),e,2)}function DCe(t){var e=t.getUTCDay();return e===0?7:e}function LCe(t,e){return Kr(Od.count(kl(t)-1,t),e,2)}function wX(t){var e=t.getUTCDay();return e>=4||e===0?Oh(t):Oh.ceil(t)}function RCe(t,e){return t=wX(t),Kr(Oh.count(kl(t),t)+(kl(t).getUTCDay()===4),e,2)}function NCe(t){return t.getUTCDay()}function MCe(t,e){return Kr(Y0.count(kl(t)-1,t),e,2)}function ICe(t,e){return Kr(t.getUTCFullYear()%100,e,2)}function OCe(t,e){return t=wX(t),Kr(t.getUTCFullYear()%100,e,2)}function PCe(t,e){return Kr(t.getUTCFullYear()%1e4,e,4)}function BCe(t,e){var r=t.getUTCDay();return t=r>=4||r===0?Oh(t):Oh.ceil(t),Kr(t.getUTCFullYear()%1e4,e,4)}function FCe(){return"+0000"}function gX(){return"%"}function yX(t){return+t}function vX(t){return Math.floor(+t/1e3)}var cX,Yi,z6e,G6e,kX=M(()=>{"use strict";V5();o(GD,"localDate");o(VD,"utcDate");o(Fv,"newDate");o(UD,"formatLocale");cX={"-":"",_:" ",0:"0"},Yi=/^\s*\d+/,z6e=/^%/,G6e=/[\\^$*+?|[\]().{}]/g;o(Kr,"pad");o(V6e,"requote");o($v,"formatRe");o(zv,"formatLookup");o(U6e,"parseWeekdayNumberSunday");o(H6e,"parseWeekdayNumberMonday");o(q6e,"parseWeekNumberSunday");o(W6e,"parseWeekNumberISO");o(Y6e,"parseWeekNumberMonday");o(uX,"parseFullYear");o(hX,"parseYear");o(X6e,"parseZone");o(j6e,"parseQuarter");o(K6e,"parseMonthNumber");o(fX,"parseDayOfMonth");o(Q6e,"parseDayOfYear");o(dX,"parseHour24");o(Z6e,"parseMinutes");o(J6e,"parseSeconds");o(eCe,"parseMilliseconds");o(tCe,"parseMicroseconds");o(rCe,"parseLiteralPercent");o(nCe,"parseUnixTimestamp");o(iCe,"parseUnixTimestampSeconds");o(pX,"formatDayOfMonth");o(aCe,"formatHour24");o(sCe,"formatHour12");o(oCe,"formatDayOfYear");o(xX,"formatMilliseconds");o(lCe,"formatMicroseconds");o(cCe,"formatMonthNumber");o(uCe,"formatMinutes");o(hCe,"formatSeconds");o(fCe,"formatWeekdayNumberMonday");o(dCe,"formatWeekNumberSunday");o(bX,"dISO");o(pCe,"formatWeekNumberISO");o(mCe,"formatWeekdayNumberSunday");o(gCe,"formatWeekNumberMonday");o(yCe,"formatYear");o(vCe,"formatYearISO");o(xCe,"formatFullYear");o(bCe,"formatFullYearISO");o(TCe,"formatZone");o(mX,"formatUTCDayOfMonth");o(wCe,"formatUTCHour24");o(kCe,"formatUTCHour12");o(ECe,"formatUTCDayOfYear");o(TX,"formatUTCMilliseconds");o(SCe,"formatUTCMicroseconds");o(CCe,"formatUTCMonthNumber");o(ACe,"formatUTCMinutes");o(_Ce,"formatUTCSeconds");o(DCe,"formatUTCWeekdayNumberMonday");o(LCe,"formatUTCWeekNumberSunday");o(wX,"UTCdISO");o(RCe,"formatUTCWeekNumberISO");o(NCe,"formatUTCWeekdayNumberSunday");o(MCe,"formatUTCWeekNumberMonday");o(ICe,"formatUTCYear");o(OCe,"formatUTCYearISO");o(PCe,"formatUTCFullYear");o(BCe,"formatUTCFullYearISO");o(FCe,"formatUTCZone");o(gX,"formatLiteralPercent");o(yX,"formatUnixTimestamp");o(vX,"formatUnixTimestampSeconds")});function HD(t){return X0=UD(t),Pd=X0.format,EX=X0.parse,SX=X0.utcFormat,CX=X0.utcParse,X0}var X0,Pd,EX,SX,CX,AX=M(()=>{"use strict";kX();HD({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});o(HD,"defaultLocale")});var qD=M(()=>{"use strict";AX()});function $Ce(t){return new Date(t)}function zCe(t){return t instanceof Date?+t:+new Date(+t)}function _X(t,e,r,n,i,a,s,l,u,h){var f=Ov(),d=f.invert,p=f.domain,m=h(".%L"),g=h(":%S"),y=h("%I:%M"),v=h("%I %p"),x=h("%a %d"),b=h("%b %d"),T=h("%B"),S=h("%Y");function w(k){return(u(k){"use strict";V5();qD();CD();Iv();KY();o($Ce,"date");o(zCe,"number");o(_X,"calendar");o(U5,"time")});var LX=M(()=>{"use strict";HY();jY();wD();DX()});function WD(t){for(var e=t.length/6|0,r=new Array(e),n=0;n{"use strict";o(WD,"default")});var YD,NX=M(()=>{"use strict";RX();YD=WD("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var MX=M(()=>{"use strict";NX()});function zn(t){return o(function(){return t},"constant")}var H5=M(()=>{"use strict";o(zn,"default")});function OX(t){return t>1?0:t<-1?j0:Math.acos(t)}function jD(t){return t>=1?Gv:t<=-1?-Gv:Math.asin(t)}var XD,ua,Ph,IX,q5,El,Bd,Xi,j0,Gv,K0,W5=M(()=>{"use strict";XD=Math.abs,ua=Math.atan2,Ph=Math.cos,IX=Math.max,q5=Math.min,El=Math.sin,Bd=Math.sqrt,Xi=1e-12,j0=Math.PI,Gv=j0/2,K0=2*j0;o(OX,"acos");o(jD,"asin")});function Y5(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(r==null)e=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);e=n}return t},()=>new _d(e)}var KD=M(()=>{"use strict";W_();o(Y5,"withPath")});function GCe(t){return t.innerRadius}function VCe(t){return t.outerRadius}function UCe(t){return t.startAngle}function HCe(t){return t.endAngle}function qCe(t){return t&&t.padAngle}function WCe(t,e,r,n,i,a,s,l){var u=r-t,h=n-e,f=s-i,d=l-a,p=d*u-f*h;if(!(p*pD*D+O*O&&(A=I,L=R),{cx:A,cy:L,x01:-f,y01:-d,x11:A*(i/w-1),y11:L*(i/w-1)}}function Sl(){var t=GCe,e=VCe,r=zn(0),n=null,i=UCe,a=HCe,s=qCe,l=null,u=Y5(h);function h(){var f,d,p=+t.apply(this,arguments),m=+e.apply(this,arguments),g=i.apply(this,arguments)-Gv,y=a.apply(this,arguments)-Gv,v=XD(y-g),x=y>g;if(l||(l=f=u()),mXi))l.moveTo(0,0);else if(v>K0-Xi)l.moveTo(m*Ph(g),m*El(g)),l.arc(0,0,m,g,y,!x),p>Xi&&(l.moveTo(p*Ph(y),p*El(y)),l.arc(0,0,p,y,g,x));else{var b=g,T=y,S=g,w=y,k=v,C=v,A=s.apply(this,arguments)/2,L=A>Xi&&(n?+n.apply(this,arguments):Bd(p*p+m*m)),I=q5(XD(m-p)/2,+r.apply(this,arguments)),R=I,E=I,_,D;if(L>Xi){var O=jD(L/p*El(A)),N=jD(L/m*El(A));(k-=O*2)>Xi?(O*=x?1:-1,S+=O,w-=O):(k=0,S=w=(g+y)/2),(C-=N*2)>Xi?(N*=x?1:-1,b+=N,T-=N):(C=0,b=T=(g+y)/2)}var P=m*Ph(b),B=m*El(b),F=p*Ph(w),V=p*El(w);if(I>Xi){var $=m*Ph(T),U=m*El(T),j=p*Ph(S),ee=p*El(S),q;if(vXi?E>Xi?(_=X5(j,ee,P,B,m,E,x),D=X5($,U,F,V,m,E,x),l.moveTo(_.cx+_.x01,_.cy+_.y01),EXi)||!(k>Xi)?l.lineTo(F,V):R>Xi?(_=X5(F,V,$,U,p,-R,x),D=X5(P,B,j,ee,p,-R,x),l.lineTo(_.cx+_.x01,_.cy+_.y01),R{"use strict";H5();W5();KD();o(GCe,"arcInnerRadius");o(VCe,"arcOuterRadius");o(UCe,"arcStartAngle");o(HCe,"arcEndAngle");o(qCe,"arcPadAngle");o(WCe,"intersect");o(X5,"cornerTangents");o(Sl,"default")});function Vv(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var nbt,QD=M(()=>{"use strict";nbt=Array.prototype.slice;o(Vv,"default")});function BX(t){this._context=t}function Cu(t){return new BX(t)}var ZD=M(()=>{"use strict";o(BX,"Linear");BX.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}},"point")};o(Cu,"default")});function FX(t){return t[0]}function $X(t){return t[1]}var zX=M(()=>{"use strict";o(FX,"x");o($X,"y")});function Cl(t,e){var r=zn(!0),n=null,i=Cu,a=null,s=Y5(l);t=typeof t=="function"?t:t===void 0?FX:zn(t),e=typeof e=="function"?e:e===void 0?$X:zn(e);function l(u){var h,f=(u=Vv(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";QD();H5();ZD();KD();zX();o(Cl,"default")});function JD(t,e){return et?1:e>=t?0:NaN}var VX=M(()=>{"use strict";o(JD,"default")});function eL(t){return t}var UX=M(()=>{"use strict";o(eL,"default")});function j5(){var t=eL,e=JD,r=null,n=zn(0),i=zn(K0),a=zn(0);function s(l){var u,h=(l=Vv(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(K0,Math.max(-K0,i.apply(this,arguments)-y)),x,b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),T=b*(v<0?-1:1),S;for(u=0;u0&&(p+=S);for(e!=null?m.sort(function(w,k){return e(g[w],g[k])}):r!=null&&m.sort(function(w,k){return r(l[w],l[k])}),u=0,d=p?(v-h*T)/p:0;u0?S*d:0)+T,g[f]={data:l[f],index:u,value:S,startAngle:y,endAngle:x,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(t=typeof l=="function"?l:zn(+l),s):t},s.sortValues=function(l){return arguments.length?(e=l,r=null,s):e},s.sort=function(l){return arguments.length?(r=l,e=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:zn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:zn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:zn(+l),s):a},s}var HX=M(()=>{"use strict";QD();H5();VX();UX();W5();o(j5,"default")});function Uv(t){return new K5(t,!0)}function Hv(t){return new K5(t,!1)}var K5,qX=M(()=>{"use strict";K5=class{static{o(this,"Bump")}constructor(e,r){this._context=e,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,r){switch(e=+e,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,r,e,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,e,this._y0,e,r);break}}this._x0=e,this._y0=r}};o(Uv,"bumpX");o(Hv,"bumpY")});function so(){}var qv=M(()=>{"use strict";o(so,"default")});function Q0(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function Wv(t){this._context=t}function No(t){return new Wv(t)}var Yv=M(()=>{"use strict";o(Q0,"point");o(Wv,"Basis");Wv.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:Q0(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Q0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(No,"default")});function WX(t){this._context=t}function Q5(t){return new WX(t)}var YX=M(()=>{"use strict";qv();Yv();o(WX,"BasisClosed");WX.prototype={areaStart:so,areaEnd:so,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:Q0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Q5,"default")});function XX(t){this._context=t}function Z5(t){return new XX(t)}var jX=M(()=>{"use strict";Yv();o(XX,"BasisOpen");XX.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:Q0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Z5,"default")});function KX(t,e){this._basis=new Wv(t),this._beta=e}var tL,QX=M(()=>{"use strict";Yv();o(KX,"Bundle");KX.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n=t[0],i=e[0],a=t[r]-n,s=e[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+u*a),this._beta*e[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(t,e){this._x.push(+t),this._y.push(+e)},"point")};tL=o((function t(e){function r(n){return e===1?new Wv(n):new KX(n,e)}return o(r,"bundle"),r.beta=function(n){return t(+n)},r}),"custom")(.85)});function Z0(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function J5(t,e){this._context=t,this._k=(1-e)/6}var Xv,jv=M(()=>{"use strict";o(Z0,"point");o(J5,"Cardinal");J5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Z0(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:Z0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};Xv=o((function t(e){function r(n){return new J5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r}),"custom")(0)});function eT(t,e){this._context=t,this._k=(1-e)/6}var rL,nL=M(()=>{"use strict";qv();jv();o(eT,"CardinalClosed");eT.prototype={areaStart:so,areaEnd:so,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Z0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};rL=o((function t(e){function r(n){return new eT(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r}),"custom")(0)});function tT(t,e){this._context=t,this._k=(1-e)/6}var iL,aL=M(()=>{"use strict";jv();o(tT,"CardinalOpen");tT.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Z0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};iL=o((function t(e){function r(n){return new tT(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r}),"custom")(0)});function Kv(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>Xi){var l=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*l-t._x0*t._l12_2a+t._x2*t._l01_2a)/u,i=(i*l-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>Xi){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*h+t._x1*t._l23_2a-e*t._l12_2a)/f,s=(s*h+t._y1*t._l23_2a-r*t._l12_2a)/f}t._context.bezierCurveTo(n,i,a,s,t._x2,t._y2)}function ZX(t,e){this._context=t,this._alpha=e}var Qv,rT=M(()=>{"use strict";W5();jv();o(Kv,"point");o(ZX,"CatmullRom");ZX.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Kv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};Qv=o((function t(e){function r(n){return e?new ZX(n,e):new J5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r}),"custom")(.5)});function JX(t,e){this._context=t,this._alpha=e}var sL,ej=M(()=>{"use strict";nL();qv();rT();o(JX,"CatmullRomClosed");JX.prototype={areaStart:so,areaEnd:so,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Kv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};sL=o((function t(e){function r(n){return e?new JX(n,e):new eT(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r}),"custom")(.5)});function tj(t,e){this._context=t,this._alpha=e}var oL,rj=M(()=>{"use strict";aL();rT();o(tj,"CatmullRomOpen");tj.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Kv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};oL=o((function t(e){function r(n){return e?new tj(n,e):new tT(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r}),"custom")(.5)});function nj(t){this._context=t}function nT(t){return new nj(t)}var ij=M(()=>{"use strict";qv();o(nj,"LinearClosed");nj.prototype={areaStart:so,areaEnd:so,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))},"point")};o(nT,"default")});function aj(t){return t<0?-1:1}function sj(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),s=(r-t._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(aj(a)+aj(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function oj(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function lL(t,e,r){var n=t._x0,i=t._y0,a=t._x1,s=t._y1,l=(a-n)/3;t._context.bezierCurveTo(n+l,i+l*e,a-l,s-l*r,a,s)}function iT(t){this._context=t}function lj(t){this._context=new cj(t)}function cj(t){this._context=t}function Zv(t){return new iT(t)}function Jv(t){return new lj(t)}var uj=M(()=>{"use strict";o(aj,"sign");o(sj,"slope3");o(oj,"slope2");o(lL,"point");o(iT,"MonotoneX");iT.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:lL(this,this._t0,oj(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){var r=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,lL(this,oj(this,r=sj(this,t,e)),r);break;default:lL(this,this._t0,r=sj(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}},"point")};o(lj,"MonotoneY");(lj.prototype=Object.create(iT.prototype)).point=function(t,e){iT.prototype.point.call(this,e,t)};o(cj,"ReflectContext");cj.prototype={moveTo:o(function(t,e){this._context.moveTo(e,t)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(t,e){this._context.lineTo(e,t)},"lineTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._context.bezierCurveTo(e,t,n,r,a,i)},"bezierCurveTo")};o(Zv,"monotoneX");o(Jv,"monotoneY")});function fj(t){this._context=t}function hj(t){var e,r=t.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(s[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e{"use strict";o(fj,"Natural");fj.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),r===2)this._context.lineTo(t[1],e[1]);else for(var n=hj(t),i=hj(e),a=0,s=1;s{"use strict";o(aT,"Step");aT.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}break}}this._x=t,this._y=e},"point")};o(em,"default");o(e2,"stepBefore");o(t2,"stepAfter")});var mj=M(()=>{"use strict";PX();GX();HX();YX();jX();Yv();qX();QX();nL();aL();jv();ej();rj();rT();ij();ZD();uj();dj();pj()});var gj=M(()=>{"use strict"});var yj=M(()=>{"use strict"});function Bh(t,e,r){this.k=t,this.x=e,this.y=r}function uL(t){for(;!t.__zoom;)if(!(t=t.parentNode))return cL;return t.__zoom}var cL,hL=M(()=>{"use strict";o(Bh,"Transform");Bh.prototype={constructor:Bh,scale:o(function(t){return t===1?this:new Bh(this.k*t,this.x,this.y)},"scale"),translate:o(function(t,e){return t===0&e===0?this:new Bh(this.k,this.x+this.k*t,this.y+this.k*e)},"translate"),apply:o(function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},"apply"),applyX:o(function(t){return t*this.k+this.x},"applyX"),applyY:o(function(t){return t*this.k+this.y},"applyY"),invert:o(function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},"invert"),invertX:o(function(t){return(t-this.x)/this.k},"invertX"),invertY:o(function(t){return(t-this.y)/this.k},"invertY"),rescaleX:o(function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},"rescaleX"),rescaleY:o(function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};cL=new Bh(1,0,0);uL.prototype=Bh.prototype;o(uL,"transform")});var vj=M(()=>{"use strict"});var xj=M(()=>{"use strict";k5();gj();yj();hL();vj()});var bj=M(()=>{"use strict";xj();hL()});var yr=M(()=>{"use strict";Ch();_H();YW();QW();B0();ZW();JW();JA();xq();eY();G_();tY();nY();iD();yY();GY();z0();W_();VY();rY();UY();LX();MX();yl();mj();V5();qD();y5();k5();bj()});var Tj=sa(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.BLANK_URL=ji.relativeFirstCharacters=ji.whitespaceEscapeCharsRegex=ji.urlSchemeRegex=ji.ctrlCharactersRegex=ji.htmlCtrlEntityRegex=ji.htmlEntitiesRegex=ji.invalidProtocolRegex=void 0;ji.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;ji.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;ji.htmlCtrlEntityRegex=/&(newline|tab);/gi;ji.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;ji.urlSchemeRegex=/^.+(:|:)/gim;ji.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;ji.relativeFirstCharacters=[".","/"];ji.BLANK_URL="about:blank"});var tm=sa(sT=>{"use strict";Object.defineProperty(sT,"__esModule",{value:!0});sT.sanitizeUrl=void 0;var Ma=Tj();function YCe(t){return Ma.relativeFirstCharacters.indexOf(t[0])>-1}o(YCe,"isRelativeUrlWithoutProtocol");function XCe(t){var e=t.replace(Ma.ctrlCharactersRegex,"");return e.replace(Ma.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(XCe,"decodeHtmlCharacters");function jCe(t){return URL.canParse(t)}o(jCe,"isValidUrl");function wj(t){try{return decodeURIComponent(t)}catch{return t}}o(wj,"decodeURI");function KCe(t){if(!t)return Ma.BLANK_URL;var e,r=wj(t.trim());do r=XCe(r).replace(Ma.htmlCtrlEntityRegex,"").replace(Ma.ctrlCharactersRegex,"").replace(Ma.whitespaceEscapeCharsRegex,"").trim(),r=wj(r),e=r.match(Ma.ctrlCharactersRegex)||r.match(Ma.htmlEntitiesRegex)||r.match(Ma.htmlCtrlEntityRegex)||r.match(Ma.whitespaceEscapeCharsRegex);while(e&&e.length>0);var n=r;if(!n)return Ma.BLANK_URL;if(YCe(n))return n;var i=n.trimStart(),a=i.match(Ma.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Ma.invalidProtocolRegex.test(s))return Ma.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!jCe(l))return Ma.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(KCe,"sanitizeUrl");sT.sanitizeUrl=KCe});var fL,Fd,oT,kj,lT,cT,ha,r2,n2=M(()=>{"use strict";fL=La(tm(),1);gr();Fd=o((t,e)=>{let r=t.append("rect");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),e.name&&r.attr("name",e.name),e.rx&&r.attr("rx",e.rx),e.ry&&r.attr("ry",e.ry),e.attrs!==void 0)for(let n in e.attrs)r.attr(n,e.attrs[n]);return e.class&&r.attr("class",e.class),r},"drawRect"),oT=o((t,e)=>{let r={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};Fd(t,r).lower()},"drawBackgroundRect"),kj=o((t,e)=>{let r=e.text.replace(pd," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),lT=o((t,e,r,n)=>{let i=t.append("image");i.attr("x",e),i.attr("y",r);let a=(0,fL.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),cT=o((t,e,r,n)=>{let i=t.append("use");i.attr("x",e),i.attr("y",r);let a=(0,fL.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),ha=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),r2=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var Ej,dL,Sj,QCe,ZCe,JCe,e7e,t7e,r7e,n7e,i7e,a7e,s7e,o7e,l7e,Au,Al,Cj=M(()=>{"use strict";gr();n2();Ej=La(tm(),1),dL=o(function(t,e){return Fd(t,e)},"drawRect"),Sj=o(function(t,e,r,n,i,a){let s=t.append("image");s.attr("width",e),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,Ej.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),QCe=o((t,e,r)=>{let n=t.append("g"),i=0;for(let a of e){let s=a.textColor?a.textColor:"#444444",l=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,h=a.offsetY?parseInt(a.offsetY):0,f="";if(i===0){let p=n.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",l),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)"),i=-1}else{let p=n.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)")}let d=r.messageFont();Au(r)(a.label.text,n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+h,a.label.width,a.label.height,{fill:s},d),a.techn&&a.techn.text!==""&&(d=r.messageFont(),Au(r)("["+a.techn.text+"]",n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+r.messageFontSize+5+h,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:s,"font-style":"italic"},d))}},"drawRels"),ZCe=o(function(t,e,r){let n=t.append("g"),i=e.bgColor?e.bgColor:"none",a=e.borderColor?e.borderColor:"#444444",s=e.fontColor?e.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(l={"stroke-width":1});let u={x:e.x,y:e.y,fill:i,stroke:a,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};dL(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,Au(r)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},h),e.type&&e.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,Au(r)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},h)),e.descr&&e.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,Au(r)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},h))},"drawBoundary"),JCe=o(function(t,e,r){let n=e.bgColor?e.bgColor:r[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:r[e.typeC4Shape.text+"_border_color"],a=e.fontColor?e.fontColor:"#FFFFFF",s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let l=t.append("g");l.attr("class","person-man");let u=ha();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=e.x,u.y=e.y,u.fill=n,u.width=e.width,u.height=e.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},dL(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2));break}let h=l7e(r,e.typeC4Shape.text);switch(l.append("text").attr("fill",a).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":Sj(l,48,48,e.x+e.width/2-24,e.y+e.image.Y,s);break}let f=r[e.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,Au(r)(e.label.text,l,e.x,e.y+e.label.Y,e.width,e.height,{fill:a},f),f=r[e.typeC4Shape.text+"Font"](),f.fontColor=a,e.techn&&e.techn?.text!==""?Au(r)(e.techn.text,l,e.x,e.y+e.techn.Y,e.width,e.height,{fill:a,"font-style":"italic"},f):e.type&&e.type.text!==""&&Au(r)(e.type.text,l,e.x,e.y+e.type.Y,e.width,e.height,{fill:a,"font-style":"italic"},f),e.descr&&e.descr.text!==""&&(f=r.personFont(),f.fontColor=a,Au(r)(e.descr.text,l,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},f)),e.height},"drawC4Shape"),e7e=o(function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),t7e=o(function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),r7e=o(function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),n7e=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),i7e=o(function(t){t.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),a7e=o(function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),s7e=o(function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertDynamicNumber"),o7e=o(function(t){let r=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),r.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),l7e=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"getC4ShapeFont"),Au=(function(){function t(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(i);n(d,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(tt.lineBreakRegex);for(let v=0;v{"use strict";c7e=typeof global=="object"&&global&&global.Object===Object&&global,hT=c7e});var u7e,h7e,hi,Mo=M(()=>{"use strict";pL();u7e=typeof self=="object"&&self&&self.Object===Object&&self,h7e=hT||u7e||Function("return this")(),hi=h7e});var f7e,Ki,$d=M(()=>{"use strict";Mo();f7e=hi.Symbol,Ki=f7e});function m7e(t){var e=d7e.call(t,i2),r=t[i2];try{t[i2]=void 0;var n=!0}catch{}var i=p7e.call(t);return n&&(e?t[i2]=r:delete t[i2]),i}var Aj,d7e,p7e,i2,_j,Dj=M(()=>{"use strict";$d();Aj=Object.prototype,d7e=Aj.hasOwnProperty,p7e=Aj.toString,i2=Ki?Ki.toStringTag:void 0;o(m7e,"getRawTag");_j=m7e});function v7e(t){return y7e.call(t)}var g7e,y7e,Lj,Rj=M(()=>{"use strict";g7e=Object.prototype,y7e=g7e.toString;o(v7e,"objectToString");Lj=v7e});function T7e(t){return t==null?t===void 0?b7e:x7e:Nj&&Nj in Object(t)?_j(t):Lj(t)}var x7e,b7e,Nj,fa,_u=M(()=>{"use strict";$d();Dj();Rj();x7e="[object Null]",b7e="[object Undefined]",Nj=Ki?Ki.toStringTag:void 0;o(T7e,"baseGetTag");fa=T7e});function w7e(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var Sn,oo=M(()=>{"use strict";o(w7e,"isObject");Sn=w7e});function A7e(t){if(!Sn(t))return!1;var e=fa(t);return e==E7e||e==S7e||e==k7e||e==C7e}var k7e,E7e,S7e,C7e,Si,a2=M(()=>{"use strict";_u();oo();k7e="[object AsyncFunction]",E7e="[object Function]",S7e="[object GeneratorFunction]",C7e="[object Proxy]";o(A7e,"isFunction");Si=A7e});var _7e,fT,Mj=M(()=>{"use strict";Mo();_7e=hi["__core-js_shared__"],fT=_7e});function D7e(t){return!!Ij&&Ij in t}var Ij,Oj,Pj=M(()=>{"use strict";Mj();Ij=(function(){var t=/[^.]+$/.exec(fT&&fT.keys&&fT.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();o(D7e,"isMasked");Oj=D7e});function N7e(t){if(t!=null){try{return R7e.call(t)}catch{}try{return t+""}catch{}}return""}var L7e,R7e,Du,mL=M(()=>{"use strict";L7e=Function.prototype,R7e=L7e.toString;o(N7e,"toSource");Du=N7e});function z7e(t){if(!Sn(t)||Oj(t))return!1;var e=Si(t)?$7e:I7e;return e.test(Du(t))}var M7e,I7e,O7e,P7e,B7e,F7e,$7e,Bj,Fj=M(()=>{"use strict";a2();Pj();oo();mL();M7e=/[\\^$.*+?()[\]{}|]/g,I7e=/^\[object .+?Constructor\]$/,O7e=Function.prototype,P7e=Object.prototype,B7e=O7e.toString,F7e=P7e.hasOwnProperty,$7e=RegExp("^"+B7e.call(F7e).replace(M7e,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(z7e,"baseIsNative");Bj=z7e});function G7e(t,e){return t?.[e]}var $j,zj=M(()=>{"use strict";o(G7e,"getValue");$j=G7e});function V7e(t,e){var r=$j(t,e);return Bj(r)?r:void 0}var Ls,Fh=M(()=>{"use strict";Fj();zj();o(V7e,"getNative");Ls=V7e});var U7e,Lu,s2=M(()=>{"use strict";Fh();U7e=Ls(Object,"create"),Lu=U7e});function H7e(){this.__data__=Lu?Lu(null):{},this.size=0}var Gj,Vj=M(()=>{"use strict";s2();o(H7e,"hashClear");Gj=H7e});function q7e(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var Uj,Hj=M(()=>{"use strict";o(q7e,"hashDelete");Uj=q7e});function j7e(t){var e=this.__data__;if(Lu){var r=e[t];return r===W7e?void 0:r}return X7e.call(e,t)?e[t]:void 0}var W7e,Y7e,X7e,qj,Wj=M(()=>{"use strict";s2();W7e="__lodash_hash_undefined__",Y7e=Object.prototype,X7e=Y7e.hasOwnProperty;o(j7e,"hashGet");qj=j7e});function Z7e(t){var e=this.__data__;return Lu?e[t]!==void 0:Q7e.call(e,t)}var K7e,Q7e,Yj,Xj=M(()=>{"use strict";s2();K7e=Object.prototype,Q7e=K7e.hasOwnProperty;o(Z7e,"hashHas");Yj=Z7e});function eAe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Lu&&e===void 0?J7e:e,this}var J7e,jj,Kj=M(()=>{"use strict";s2();J7e="__lodash_hash_undefined__";o(eAe,"hashSet");jj=eAe});function rm(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";Vj();Hj();Wj();Xj();Kj();o(rm,"Hash");rm.prototype.clear=Gj;rm.prototype.delete=Uj;rm.prototype.get=qj;rm.prototype.has=Yj;rm.prototype.set=jj;gL=rm});function tAe(){this.__data__=[],this.size=0}var Zj,Jj=M(()=>{"use strict";o(tAe,"listCacheClear");Zj=tAe});function rAe(t,e){return t===e||t!==t&&e!==e}var Io,zd=M(()=>{"use strict";o(rAe,"eq");Io=rAe});function nAe(t,e){for(var r=t.length;r--;)if(Io(t[r][0],e))return r;return-1}var $h,o2=M(()=>{"use strict";zd();o(nAe,"assocIndexOf");$h=nAe});function sAe(t){var e=this.__data__,r=$h(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():aAe.call(e,r,1),--this.size,!0}var iAe,aAe,eK,tK=M(()=>{"use strict";o2();iAe=Array.prototype,aAe=iAe.splice;o(sAe,"listCacheDelete");eK=sAe});function oAe(t){var e=this.__data__,r=$h(e,t);return r<0?void 0:e[r][1]}var rK,nK=M(()=>{"use strict";o2();o(oAe,"listCacheGet");rK=oAe});function lAe(t){return $h(this.__data__,t)>-1}var iK,aK=M(()=>{"use strict";o2();o(lAe,"listCacheHas");iK=lAe});function cAe(t,e){var r=this.__data__,n=$h(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var sK,oK=M(()=>{"use strict";o2();o(cAe,"listCacheSet");sK=cAe});function nm(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";Jj();tK();nK();aK();oK();o(nm,"ListCache");nm.prototype.clear=Zj;nm.prototype.delete=eK;nm.prototype.get=rK;nm.prototype.has=iK;nm.prototype.set=sK;zh=nm});var uAe,Gh,dT=M(()=>{"use strict";Fh();Mo();uAe=Ls(hi,"Map"),Gh=uAe});function hAe(){this.size=0,this.__data__={hash:new gL,map:new(Gh||zh),string:new gL}}var lK,cK=M(()=>{"use strict";Qj();l2();dT();o(hAe,"mapCacheClear");lK=hAe});function fAe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var uK,hK=M(()=>{"use strict";o(fAe,"isKeyable");uK=fAe});function dAe(t,e){var r=t.__data__;return uK(e)?r[typeof e=="string"?"string":"hash"]:r.map}var Vh,c2=M(()=>{"use strict";hK();o(dAe,"getMapData");Vh=dAe});function pAe(t){var e=Vh(this,t).delete(t);return this.size-=e?1:0,e}var fK,dK=M(()=>{"use strict";c2();o(pAe,"mapCacheDelete");fK=pAe});function mAe(t){return Vh(this,t).get(t)}var pK,mK=M(()=>{"use strict";c2();o(mAe,"mapCacheGet");pK=mAe});function gAe(t){return Vh(this,t).has(t)}var gK,yK=M(()=>{"use strict";c2();o(gAe,"mapCacheHas");gK=gAe});function yAe(t,e){var r=Vh(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var vK,xK=M(()=>{"use strict";c2();o(yAe,"mapCacheSet");vK=yAe});function im(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";cK();dK();mK();yK();xK();o(im,"MapCache");im.prototype.clear=lK;im.prototype.delete=fK;im.prototype.get=pK;im.prototype.has=gK;im.prototype.set=vK;Gd=im});function yL(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(vAe);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=t.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(yL.Cache||Gd),r}var vAe,am,vL=M(()=>{"use strict";pT();vAe="Expected a function";o(yL,"memoize");yL.Cache=Gd;am=yL});function xAe(){this.__data__=new zh,this.size=0}var bK,TK=M(()=>{"use strict";l2();o(xAe,"stackClear");bK=xAe});function bAe(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var wK,kK=M(()=>{"use strict";o(bAe,"stackDelete");wK=bAe});function TAe(t){return this.__data__.get(t)}var EK,SK=M(()=>{"use strict";o(TAe,"stackGet");EK=TAe});function wAe(t){return this.__data__.has(t)}var CK,AK=M(()=>{"use strict";o(wAe,"stackHas");CK=wAe});function EAe(t,e){var r=this.__data__;if(r instanceof zh){var n=r.__data__;if(!Gh||n.length{"use strict";l2();dT();pT();kAe=200;o(EAe,"stackSet");_K=EAe});function sm(t){var e=this.__data__=new zh(t);this.size=e.size}var dc,u2=M(()=>{"use strict";l2();TK();kK();SK();AK();DK();o(sm,"Stack");sm.prototype.clear=bK;sm.prototype.delete=wK;sm.prototype.get=EK;sm.prototype.has=CK;sm.prototype.set=_K;dc=sm});var SAe,om,xL=M(()=>{"use strict";Fh();SAe=(function(){try{var t=Ls(Object,"defineProperty");return t({},"",{}),t}catch{}})(),om=SAe});function CAe(t,e,r){e=="__proto__"&&om?om(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var pc,lm=M(()=>{"use strict";xL();o(CAe,"baseAssignValue");pc=CAe});function AAe(t,e,r){(r!==void 0&&!Io(t[e],r)||r===void 0&&!(e in t))&&pc(t,e,r)}var h2,bL=M(()=>{"use strict";lm();zd();o(AAe,"assignMergeValue");h2=AAe});function _Ae(t){return function(e,r,n){for(var i=-1,a=Object(e),s=n(e),l=s.length;l--;){var u=s[t?l:++i];if(r(a[u],u,a)===!1)break}return e}}var LK,RK=M(()=>{"use strict";o(_Ae,"createBaseFor");LK=_Ae});var DAe,cm,mT=M(()=>{"use strict";RK();DAe=LK(),cm=DAe});function RAe(t,e){if(e)return t.slice();var r=t.length,n=IK?IK(r):new t.constructor(r);return t.copy(n),n}var OK,NK,LAe,MK,IK,gT,TL=M(()=>{"use strict";Mo();OK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,NK=OK&&typeof module=="object"&&module&&!module.nodeType&&module,LAe=NK&&NK.exports===OK,MK=LAe?hi.Buffer:void 0,IK=MK?MK.allocUnsafe:void 0;o(RAe,"cloneBuffer");gT=RAe});var NAe,um,wL=M(()=>{"use strict";Mo();NAe=hi.Uint8Array,um=NAe});function MAe(t){var e=new t.constructor(t.byteLength);return new um(e).set(new um(t)),e}var hm,yT=M(()=>{"use strict";wL();o(MAe,"cloneArrayBuffer");hm=MAe});function IAe(t,e){var r=e?hm(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var vT,kL=M(()=>{"use strict";yT();o(IAe,"cloneTypedArray");vT=IAe});function OAe(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r{"use strict";o(OAe,"copyArray");xT=OAe});var PK,PAe,BK,FK=M(()=>{"use strict";oo();PK=Object.create,PAe=(function(){function t(){}return o(t,"object"),function(e){if(!Sn(e))return{};if(PK)return PK(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}})(),BK=PAe});function BAe(t,e){return function(r){return t(e(r))}}var bT,SL=M(()=>{"use strict";o(BAe,"overArg");bT=BAe});var FAe,fm,TT=M(()=>{"use strict";SL();FAe=bT(Object.getPrototypeOf,Object),fm=FAe});function zAe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||$Ae;return t===r}var $Ae,mc,dm=M(()=>{"use strict";$Ae=Object.prototype;o(zAe,"isPrototype");mc=zAe});function GAe(t){return typeof t.constructor=="function"&&!mc(t)?BK(fm(t)):{}}var wT,CL=M(()=>{"use strict";FK();TT();dm();o(GAe,"initCloneObject");wT=GAe});function VAe(t){return t!=null&&typeof t=="object"}var ai,Oo=M(()=>{"use strict";o(VAe,"isObjectLike");ai=VAe});function HAe(t){return ai(t)&&fa(t)==UAe}var UAe,AL,$K=M(()=>{"use strict";_u();Oo();UAe="[object Arguments]";o(HAe,"baseIsArguments");AL=HAe});var zK,qAe,WAe,YAe,_l,pm=M(()=>{"use strict";$K();Oo();zK=Object.prototype,qAe=zK.hasOwnProperty,WAe=zK.propertyIsEnumerable,YAe=AL((function(){return arguments})())?AL:function(t){return ai(t)&&qAe.call(t,"callee")&&!WAe.call(t,"callee")},_l=YAe});var XAe,Bt,Yn=M(()=>{"use strict";XAe=Array.isArray,Bt=XAe});function KAe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=jAe}var jAe,mm,kT=M(()=>{"use strict";jAe=9007199254740991;o(KAe,"isLength");mm=KAe});function QAe(t){return t!=null&&mm(t.length)&&!Si(t)}var fi,Po=M(()=>{"use strict";a2();kT();o(QAe,"isArrayLike");fi=QAe});function ZAe(t){return ai(t)&&fi(t)}var Vd,ET=M(()=>{"use strict";Po();Oo();o(ZAe,"isArrayLikeObject");Vd=ZAe});function JAe(){return!1}var GK,VK=M(()=>{"use strict";o(JAe,"stubFalse");GK=JAe});var qK,UK,e8e,HK,t8e,r8e,Dl,gm=M(()=>{"use strict";Mo();VK();qK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,UK=qK&&typeof module=="object"&&module&&!module.nodeType&&module,e8e=UK&&UK.exports===qK,HK=e8e?hi.Buffer:void 0,t8e=HK?HK.isBuffer:void 0,r8e=t8e||GK,Dl=r8e});function l8e(t){if(!ai(t)||fa(t)!=n8e)return!1;var e=fm(t);if(e===null)return!0;var r=s8e.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&WK.call(r)==o8e}var n8e,i8e,a8e,WK,s8e,o8e,YK,XK=M(()=>{"use strict";_u();TT();Oo();n8e="[object Object]",i8e=Function.prototype,a8e=Object.prototype,WK=i8e.toString,s8e=a8e.hasOwnProperty,o8e=WK.call(Object);o(l8e,"isPlainObject");YK=l8e});function M8e(t){return ai(t)&&mm(t.length)&&!!Gn[fa(t)]}var c8e,u8e,h8e,f8e,d8e,p8e,m8e,g8e,y8e,v8e,x8e,b8e,T8e,w8e,k8e,E8e,S8e,C8e,A8e,_8e,D8e,L8e,R8e,N8e,Gn,jK,KK=M(()=>{"use strict";_u();kT();Oo();c8e="[object Arguments]",u8e="[object Array]",h8e="[object Boolean]",f8e="[object Date]",d8e="[object Error]",p8e="[object Function]",m8e="[object Map]",g8e="[object Number]",y8e="[object Object]",v8e="[object RegExp]",x8e="[object Set]",b8e="[object String]",T8e="[object WeakMap]",w8e="[object ArrayBuffer]",k8e="[object DataView]",E8e="[object Float32Array]",S8e="[object Float64Array]",C8e="[object Int8Array]",A8e="[object Int16Array]",_8e="[object Int32Array]",D8e="[object Uint8Array]",L8e="[object Uint8ClampedArray]",R8e="[object Uint16Array]",N8e="[object Uint32Array]",Gn={};Gn[E8e]=Gn[S8e]=Gn[C8e]=Gn[A8e]=Gn[_8e]=Gn[D8e]=Gn[L8e]=Gn[R8e]=Gn[N8e]=!0;Gn[c8e]=Gn[u8e]=Gn[w8e]=Gn[h8e]=Gn[k8e]=Gn[f8e]=Gn[d8e]=Gn[p8e]=Gn[m8e]=Gn[g8e]=Gn[y8e]=Gn[v8e]=Gn[x8e]=Gn[b8e]=Gn[T8e]=!1;o(M8e,"baseIsTypedArray");jK=M8e});function I8e(t){return function(e){return t(e)}}var Bo,Ud=M(()=>{"use strict";o(I8e,"baseUnary");Bo=I8e});var QK,f2,O8e,_L,P8e,Fo,d2=M(()=>{"use strict";pL();QK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,f2=QK&&typeof module=="object"&&module&&!module.nodeType&&module,O8e=f2&&f2.exports===QK,_L=O8e&&hT.process,P8e=(function(){try{var t=f2&&f2.require&&f2.require("util").types;return t||_L&&_L.binding&&_L.binding("util")}catch{}})(),Fo=P8e});var ZK,B8e,Uh,p2=M(()=>{"use strict";KK();Ud();d2();ZK=Fo&&Fo.isTypedArray,B8e=ZK?Bo(ZK):jK,Uh=B8e});function F8e(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var m2,DL=M(()=>{"use strict";o(F8e,"safeGet");m2=F8e});function G8e(t,e,r){var n=t[e];(!(z8e.call(t,e)&&Io(n,r))||r===void 0&&!(e in t))&&pc(t,e,r)}var $8e,z8e,gc,ym=M(()=>{"use strict";lm();zd();$8e=Object.prototype,z8e=$8e.hasOwnProperty;o(G8e,"assignValue");gc=G8e});function V8e(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a{"use strict";ym();lm();o(V8e,"copyObject");$o=V8e});function U8e(t,e){for(var r=-1,n=Array(t);++r{"use strict";o(U8e,"baseTimes");JK=U8e});function W8e(t,e){var r=typeof t;return e=e??H8e,!!e&&(r=="number"||r!="symbol"&&q8e.test(t))&&t>-1&&t%1==0&&t{"use strict";H8e=9007199254740991,q8e=/^(?:0|[1-9]\d*)$/;o(W8e,"isIndex");Hh=W8e});function j8e(t,e){var r=Bt(t),n=!r&&_l(t),i=!r&&!n&&Dl(t),a=!r&&!n&&!i&&Uh(t),s=r||n||i||a,l=s?JK(t.length,String):[],u=l.length;for(var h in t)(e||X8e.call(t,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||Hh(h,u)))&&l.push(h);return l}var Y8e,X8e,ST,LL=M(()=>{"use strict";eQ();pm();Yn();gm();g2();p2();Y8e=Object.prototype,X8e=Y8e.hasOwnProperty;o(j8e,"arrayLikeKeys");ST=j8e});function K8e(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var tQ,rQ=M(()=>{"use strict";o(K8e,"nativeKeysIn");tQ=K8e});function J8e(t){if(!Sn(t))return tQ(t);var e=mc(t),r=[];for(var n in t)n=="constructor"&&(e||!Z8e.call(t,n))||r.push(n);return r}var Q8e,Z8e,nQ,iQ=M(()=>{"use strict";oo();dm();rQ();Q8e=Object.prototype,Z8e=Q8e.hasOwnProperty;o(J8e,"baseKeysIn");nQ=J8e});function e_e(t){return fi(t)?ST(t,!0):nQ(t)}var Rs,qh=M(()=>{"use strict";LL();iQ();Po();o(e_e,"keysIn");Rs=e_e});function t_e(t){return $o(t,Rs(t))}var aQ,sQ=M(()=>{"use strict";Hd();qh();o(t_e,"toPlainObject");aQ=t_e});function r_e(t,e,r,n,i,a,s){var l=m2(t,r),u=m2(e,r),h=s.get(u);if(h){h2(t,r,h);return}var f=a?a(l,u,r+"",t,e,s):void 0,d=f===void 0;if(d){var p=Bt(u),m=!p&&Dl(u),g=!p&&!m&&Uh(u);f=u,p||m||g?Bt(l)?f=l:Vd(l)?f=xT(l):m?(d=!1,f=gT(u,!0)):g?(d=!1,f=vT(u,!0)):f=[]:YK(u)||_l(u)?(f=l,_l(l)?f=aQ(l):(!Sn(l)||Si(l))&&(f=wT(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),h2(t,r,f)}var oQ,lQ=M(()=>{"use strict";bL();TL();kL();EL();CL();pm();Yn();ET();gm();a2();oo();XK();p2();DL();sQ();o(r_e,"baseMergeDeep");oQ=r_e});function cQ(t,e,r,n,i){t!==e&&cm(e,function(a,s){if(i||(i=new dc),Sn(a))oQ(t,e,s,r,cQ,n,i);else{var l=n?n(m2(t,s),a,s+"",t,e,i):void 0;l===void 0&&(l=a),h2(t,s,l)}},Rs)}var uQ,hQ=M(()=>{"use strict";u2();bL();mT();lQ();oo();qh();DL();o(cQ,"baseMerge");uQ=cQ});function n_e(t){return t}var Qi,Ru=M(()=>{"use strict";o(n_e,"identity");Qi=n_e});function i_e(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var fQ,dQ=M(()=>{"use strict";o(i_e,"apply");fQ=i_e});function a_e(t,e,r){return e=pQ(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=pQ(n.length-e,0),s=Array(a);++i{"use strict";dQ();pQ=Math.max;o(a_e,"overRest");CT=a_e});function s_e(t){return function(){return t}}var Ns,NL=M(()=>{"use strict";o(s_e,"constant");Ns=s_e});var o_e,mQ,gQ=M(()=>{"use strict";NL();xL();Ru();o_e=om?function(t,e){return om(t,"toString",{configurable:!0,enumerable:!1,value:Ns(e),writable:!0})}:Qi,mQ=o_e});function h_e(t){var e=0,r=0;return function(){var n=u_e(),i=c_e-(n-r);if(r=n,i>0){if(++e>=l_e)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var l_e,c_e,u_e,yQ,vQ=M(()=>{"use strict";l_e=800,c_e=16,u_e=Date.now;o(h_e,"shortOut");yQ=h_e});var f_e,AT,ML=M(()=>{"use strict";gQ();vQ();f_e=yQ(mQ),AT=f_e});function d_e(t,e){return AT(CT(t,e,Qi),t+"")}var yc,vm=M(()=>{"use strict";Ru();RL();ML();o(d_e,"baseRest");yc=d_e});function p_e(t,e,r){if(!Sn(r))return!1;var n=typeof e;return(n=="number"?fi(r)&&Hh(e,r.length):n=="string"&&e in r)?Io(r[e],t):!1}var lo,qd=M(()=>{"use strict";zd();Po();g2();oo();o(p_e,"isIterateeCall");lo=p_e});function m_e(t){return yc(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,s&&lo(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++n{"use strict";vm();qd();o(m_e,"createAssigner");_T=m_e});var g_e,Wh,OL=M(()=>{"use strict";hQ();IL();g_e=_T(function(t,e,r){uQ(t,e,r)}),Wh=g_e});function FL(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return y_e[r]??e}function T_e(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,TQ.sanitizeUrl)(r):r}function EQ(t,e){return!t||!e?0:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function k_e(t){let e,r=0;t.forEach(i=>{r+=EQ(i,e),e=i});let n=r/2;return $L(t,n)}function E_e(t){return t.length===1?t[0]:k_e(t)}function C_e(t,e,r){let n=structuredClone(r);X.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();let i=25+t,a=$L(n,i),s=10+t*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return e==="start_left"?(u.x=Math.sin(l+Math.PI)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*s+(n[0].y+a.y)/2):e==="end_right"?(u.x=Math.sin(l-Math.PI)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*s+(n[0].y+a.y)/2-5):e==="end_left"?(u.x=Math.sin(l)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2-5):(u.x=Math.sin(l)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2),u}function zL(t){let e="",r="";for(let n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}function A_e(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;iMath.round(parseFloat(a)).toString());return i.includes(r.toString())||i.includes(n.toString())}var TQ,BL,y_e,v_e,x_e,wQ,kQ,b_e,w_e,xQ,$L,S_e,bQ,GL,VL,__e,D_e,UL,L_e,HL,PL,DT,R_e,N_e,vc,qt,SQ,Ji,xc,tr=M(()=>{"use strict";TQ=La(tm(),1);yr();gr();S7();pt();vd();v0();vL();OL();$3();BL="\u200B",y_e={curveBasis:No,curveBasisClosed:Q5,curveBasisOpen:Z5,curveBumpX:Uv,curveBumpY:Hv,curveBundle:tL,curveCardinalClosed:rL,curveCardinalOpen:iL,curveCardinal:Xv,curveCatmullRomClosed:sL,curveCatmullRomOpen:oL,curveCatmullRom:Qv,curveLinear:Cu,curveLinearClosed:nT,curveMonotoneX:Zv,curveMonotoneY:Jv,curveNatural:J0,curveStep:em,curveStepAfter:t2,curveStepBefore:e2},v_e=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,x_e=o(function(t,e){let r=wQ(t,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);b0(s),n=Rn(n,[...s])}else n=r.args;if(!n)return;let i=_0(t,e),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),wQ=o(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${v_e.source})(?=[}][%]{2}).* -`,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),X.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n,i=[];for(;(n=yd.exec(t))!==null;)if(n.index===yd.lastIndex&&yd.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){let a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return X.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},"detectDirective"),kQ=o(function(t){return t.replace(yd,"")},"removeDirectives"),b_e=o(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");o(FL,"interpolateToCurve");o(T_e,"formatUrl");w_e=o((t,...e)=>{let r=t.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s{let r=Math.pow(10,e);return Math.round(t*r)/r},"roundNumber"),$L=o((t,e)=>{let r,n=e;for(let i of t){if(r){let a=EQ(i,r);if(a===0)return r;if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:xQ((1-s)*r.x+s*i.x,5),y:xQ((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),S_e=o((t,e,r)=>{X.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=$L(e,25),a=t?10:5,s=Math.atan2(e[0].y-i.y,e[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(e[0].x+i.x)/2,l.y=-Math.cos(s)*a+(e[0].y+i.y)/2,l},"calcCardinalityPosition");o(C_e,"calcTerminalLabelPosition");o(zL,"getStylesFromArray");bQ=0,GL=o(()=>(bQ++,"id-"+Math.random().toString(36).substr(2,12)+"-"+bQ),"generateId");o(A_e,"makeRandomHex");VL=o(t=>A_e(t.length),"random"),__e=o(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),D_e=o(function(t,e){let r=e.text.replace(tt.lineBreakRegex," "),[,n]=vc(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);let a=i.append("tspan");return a.attr("x",e.x+e.textMargin*2),a.attr("fill",e.fill),a.text(r),i},"drawSimpleText"),UL=am((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),tt.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=Zi(`${s} `,r),h=Zi(a,r);if(u>e){let{hyphenatedStrings:p,remainingWord:m}=L_e(s,e,"-",r);i.push(a,...p),a=m}else h+u>=e?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");l+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),L_e=am((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...t],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(Zi(h,n)>=e){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(LT,"calculateTextHeight");o(Zi,"calculateTextWidth");HL=am((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,a]=vc(r),s=["sans-serif",n],l=t.split(tt.lineBreakRegex),u=[],h=qe("body");if(!h.remove)return{width:0,height:0,lineHeight:0};let f=h.append("svg");for(let p of s){let m=0,g={width:0,height:0,lineHeight:0};for(let y of l){let v=__e();v.text=y||BL;let x=D_e(f,v).style("font-size",a).style("font-weight",i).style("font-family",p),b=(x._groups||x)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,b.width)),m=Math.round(b.height),g.height+=m,g.lineHeight=Math.round(Math.max(g.lineHeight,m))}u.push(g)}f.remove();let d=isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1;return u[d]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),PL=class{constructor(e=!1,r){this.count=0;this.count=r?r.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},R_e=o(function(t){return DT=DT||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),DT.innerHTML=t,unescape(DT.textContent)},"entityDecode");o(qL,"isDetailedError");N_e=o((t,e,r,n)=>{if(!n)return;let i=t.node()?.getBBox();i&&t.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},"insertTitle"),vc=o(t=>{if(typeof t=="number")return[t,t+"px"];let e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},"parseFontSize");o(Vn,"cleanAndMerge");qt={assignWithDepth:Rn,wrapLabel:UL,calculateTextHeight:LT,calculateTextWidth:Zi,calculateTextDimensions:HL,cleanAndMerge:Vn,detectInit:x_e,detectDirective:wQ,isSubstringInArray:b_e,interpolateToCurve:FL,calcLabelPosition:E_e,calcCardinalityPosition:S_e,calcTerminalLabelPosition:C_e,formatUrl:T_e,getStylesFromArray:zL,generateId:GL,random:VL,runFunc:w_e,entityDecode:R_e,insertTitle:N_e,isLabelCoordinateInPath:M_e,parseFontSize:vc,InitIDGenerator:PL},SQ=o(function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),e},"encodeEntities"),Ji=o(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),xc=o((t,e,{counter:r=0,prefix:n,suffix:i},a)=>a||`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");o(Cn,"handleUndefinedAttr");o(M_e,"isLabelCoordinateInPath")});function Ll(t,e,r,n,i){if(!e[t].width)if(r)e[t].text=UL(e[t].text,i,n),e[t].textLines=e[t].text.split(tt.lineBreakRegex).length,e[t].width=i,e[t].height=LT(e[t].text,n);else{let a=e[t].text.split(tt.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(let l of a)e[t].width=Math.max(Zi(l,n),e[t].width),s=LT(l,n),e[t].height=e[t].height+s}}function LQ(t,e,r,n,i){let a=new IT(i);a.data.widthLimit=r.data.widthLimit/Math.min(WL,n.length);for(let[s,l]of n.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);let h=l.wrap&&Wt.wrap,f=RT(Wt);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ll("label",l,h,f,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&l.type.text!==""){l.type.text="["+l.type.text+"]";let g=RT(Wt);Ll("type",l,h,g,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height}if(l.descr&&l.descr.text!==""){let g=RT(Wt);g.fontSize=g.fontSize-2,Ll("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%WL===0){let g=r.data.startx+Wt.diagramMarginX,y=r.data.stopy+Wt.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+Wt.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;let d=i.db.getC4ShapeArray(l.alias),p=i.db.getC4ShapeKeys(l.alias);p.length>0&&DQ(a,t,d,p),e=l.alias;let m=i.db.getBoundaries(e);m.length>0&&LQ(t,e,a,m,i),l.alias!=="global"&&_Q(t,l,a),r.data.stopy=Math.max(a.data.stopy+Wt.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+Wt.c4ShapeMargin,r.data.stopx),NT=Math.max(NT,r.data.stopx),MT=Math.max(MT,r.data.stopy)}}var NT,MT,AQ,WL,Wt,IT,YL,y2,RT,I_e,_Q,DQ,Ms,CQ,O_e,P_e,B_e,XL,RQ=M(()=>{"use strict";yr();Cj();pt();RA();gr();GA();Xt();v0();tr();Ei();NT=0,MT=0,AQ=4,WL=2;rv.yy=lv;Wt={},IT=class{static{o(this,"Bounds")}constructor(e){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,YL(e.db.getConfig())}setData(e,r,n,i){this.nextData.startx=this.data.startx=e,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(e,r,n,i){e[r]===void 0?e[r]=n:e[r]=i(n,e[r])}insert(e){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+e.margin:this.nextData.stopx+e.margin*2,n=r+e.width,i=this.nextData.starty+e.margin*2,a=i+e.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>AQ)&&(r=this.nextData.startx+e.margin+Wt.nextLinePaddingX,i=this.nextData.stopy+e.margin*2,this.nextData.stopx=n=r+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+e.height,this.nextData.cnt=1),e.x=r,e.y=i,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",i,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",i,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(e){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},YL(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},YL=o(function(t){Rn(Wt,t),t.fontFamily&&(Wt.personFontFamily=Wt.systemFontFamily=Wt.messageFontFamily=t.fontFamily),t.fontSize&&(Wt.personFontSize=Wt.systemFontSize=Wt.messageFontSize=t.fontSize),t.fontWeight&&(Wt.personFontWeight=Wt.systemFontWeight=Wt.messageFontWeight=t.fontWeight)},"setConf"),y2=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"c4ShapeFont"),RT=o(t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),"boundaryFont"),I_e=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont");o(Ll,"calcC4ShapeTextWH");_Q=o(function(t,e,r){e.x=r.data.startx,e.y=r.data.starty,e.width=r.data.stopx-r.data.startx,e.height=r.data.stopy-r.data.starty,e.label.y=Wt.c4ShapeMargin-35;let n=e.wrap&&Wt.wrap,i=RT(Wt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=Zi(e.label.text,i);Ll("label",e,n,i,a),Al.drawBoundary(t,e,Wt)},"drawBoundary"),DQ=o(function(t,e,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=y2(Wt,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=Zi("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=Wt.c4ShapePadding,i=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height;break}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height);let u=s.wrap&&Wt.wrap,h=Wt.width-Wt.c4ShapePadding*2,f=y2(Wt,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ll("label",s,u,f,h),s.label.Y=i+8,i=s.label.Y+s.label.height,s.type&&s.type.text!==""){s.type.text="["+s.type.text+"]";let m=y2(Wt,s.typeC4Shape.text);Ll("type",s,u,m,h),s.type.Y=i+5,i=s.type.Y+s.type.height}else if(s.techn&&s.techn.text!==""){s.techn.text="["+s.techn.text+"]";let m=y2(Wt,s.techn.text);Ll("techn",s,u,m,h),s.techn.Y=i+5,i=s.techn.Y+s.techn.height}let d=i,p=s.label.width;if(s.descr&&s.descr.text!==""){let m=y2(Wt,s.typeC4Shape.text);Ll("descr",s,u,m,h),s.descr.Y=i+20,i=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),d=i-s.descr.textLines*5}p=p+Wt.c4ShapePadding,s.width=Math.max(s.width||Wt.width,p,Wt.width),s.height=Math.max(s.height||Wt.height,d,Wt.height),s.margin=s.margin||Wt.c4ShapeMargin,t.insert(s),Al.drawC4Shape(e,s,Wt)}t.bumpLastMargin(Wt.c4ShapeMargin)},"drawC4ShapeArray"),Ms=class{static{o(this,"Point")}constructor(e,r){this.x=e,this.y=r}},CQ=o(function(t,e){let r=t.x,n=t.y,i=e.x,a=e.y,s=r+t.width/2,l=n+t.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=t.height/t.width,p=null;return n==a&&ri?p=new Ms(r,l):r==i&&na&&(p=new Ms(s,n)),r>i&&n=f?p=new Ms(r,l+f*t.width/2):p=new Ms(s-u/h*t.height/2,n+t.height):r=f?p=new Ms(r+t.width,l+f*t.width/2):p=new Ms(s+u/h*t.height/2,n+t.height):ra?d>=f?p=new Ms(r+t.width,l-f*t.width/2):p=new Ms(s+t.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new Ms(r,l-t.width/2*f):p=new Ms(s-t.height/2*u/h,n)),p},"getIntersectPoint"),O_e=o(function(t,e){let r={x:0,y:0};r.x=e.x+e.width/2,r.y=e.y+e.height/2;let n=CQ(t,r);r.x=t.x+t.width/2,r.y=t.y+t.height/2;let i=CQ(e,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),P_e=o(function(t,e,r,n){let i=0;for(let a of e){i=i+1;let s=a.wrap&&Wt.wrap,l=I_e(Wt);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=Zi(a.label.text,l);Ll("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=Zi(a.techn.text,l),Ll("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=Zi(a.descr.text,l),Ll("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=O_e(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}Al.drawRels(t,e,Wt)},"drawRels");o(LQ,"drawInsideBoundary");B_e=o(function(t,e,r,n){Wt=ge().c4;let i=ge().securityLevel,a;i==="sandbox"&&(a=qe("#i"+e));let s=i==="sandbox"?qe(a.nodes()[0].contentDocument.body):qe("body"),l=n.db;n.db.setWrap(Wt.wrap),AQ=l.getC4ShapeInRow(),WL=l.getC4BoundaryInRow(),X.debug(`C:${JSON.stringify(Wt,null,2)}`);let u=i==="sandbox"?s.select(`[id="${e}"]`):qe(`[id="${e}"]`);Al.insertComputerIcon(u),Al.insertDatabaseIcon(u),Al.insertClockIcon(u);let h=new IT(n);h.setData(Wt.diagramMarginX,Wt.diagramMarginX,Wt.diagramMarginY,Wt.diagramMarginY),h.data.widthLimit=screen.availWidth,NT=Wt.diagramMarginX,MT=Wt.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundaries("");LQ(u,"",h,d,n),Al.insertArrowHead(u),Al.insertArrowEnd(u),Al.insertArrowCrossHead(u),Al.insertArrowFilledHead(u),P_e(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=NT,h.data.stopy=MT;let p=h.data,g=p.stopy-p.starty+2*Wt.diagramMarginY,v=p.stopx-p.startx+2*Wt.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*Wt.diagramMarginX).attr("y",p.starty+Wt.diagramMarginY),mn(u,g,v,Wt.useMaxWidth);let x=f?60:0;u.attr("viewBox",p.startx-Wt.diagramMarginX+" -"+(Wt.diagramMarginY+x)+" "+v+" "+(g+x)),X.debug("models:",p)},"draw"),XL={drawPersonOrSystemArray:DQ,drawBoundary:_Q,setConf:YL,draw:B_e}});var F_e,NQ,MQ=M(()=>{"use strict";F_e=o(t=>`.person { +`},"getStyles"),Wj=o((t,e)=>{e!==void 0&&(kw[t]=e)},"addStylesForDiagram"),Hj=s8e});var C2={};vr(C2,{clear:()=>Mr,getAccDescription:()=>Ur,getAccTitle:()=>Vr,getDiagramTitle:()=>Wr,setAccDescription:()=>qr,setAccTitle:()=>zr,setDiagramTitle:()=>Xr});var lD,cD,uD,hD,Mr,zr,Vr,qr,Ur,Xr,Wr,ki=I(()=>{"use strict";wr();ti();lD="",cD="",uD="",hD=o(t=>fr(t,tr()),"sanitizeText"),Mr=o(()=>{lD="",uD="",cD=""},"clear"),zr=o(t=>{lD=hD(t).replace(/^\s+/g,"")},"setAccTitle"),Vr=o(()=>lD,"getAccTitle"),qr=o(t=>{uD=hD(t).replace(/\n\s+/g,` +`)},"setAccDescription"),Ur=o(()=>uD,"getAccDescription"),Xr=o(t=>{cD=hD(t)},"setDiagramTitle"),Wr=o(()=>cD,"getDiagramTitle")});var Yj,o8e,xe,A2,Ew,_2,dD,l8e,Sw,Pp,D2,fD,Qt=I(()=>{"use strict";Op();gt();ti();wr();Fi();oD();ki();Yj=X,o8e=Jv,xe=tr,A2=G3,Ew=hf,_2=o(t=>fr(t,xe()),"sanitizeText"),dD=Vc,l8e=o(()=>C2,"getCommonDb"),Sw={},Pp=o((t,e,r)=>{Sw[t]&&Yj.warn(`Diagram with id ${t} already registered. Overwriting.`),Sw[t]=e,r&&aD(t,r),Wj(t,e.styles),e.injectUtils?.(Yj,o8e,xe,_2,dD,l8e(),()=>{})},"registerDiagram"),D2=o(t=>{if(t in Sw)return Sw[t];throw new fD(t)},"getDiagram"),fD=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(e){super(`Diagram ${e} not found.`)}}});var jl,xf,Es,Yl,qc,R2,pD,mD,Cw,Aw,jj,c8e,u8e,h8e,f8e,d8e,p8e,m8e,g8e,y8e,v8e,x8e,b8e,T8e,w8e,k8e,S8e,E8e,Xj,C8e,A8e,Kj,_8e,D8e,R8e,L8e,bf,N8e,M8e,I8e,O8e,P8e,L2,gD=I(()=>{"use strict";Qt();wr();ki();jl=[],xf=[""],Es="global",Yl="",qc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],R2=[],pD="",mD=!1,Cw=4,Aw=2,c8e=o(function(){return jj},"getC4Type"),u8e=o(function(t){jj=fr(t,xe())},"setC4Type"),h8e=o(function(t,e,r,n,i,a,s,l,u){if(t==null||e===void 0||e===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=R2.find(d=>d.from===e&&d.to===r);if(f?h=f:R2.push(h),h.type=t,h.from=e,h.to=r,h.label={text:n},i==null)h.techn={text:""};else if(typeof i=="object"){let[d,p]=Object.entries(i)[0];h[d]={text:p}}else h.techn={text:i};if(a==null)h.descr={text:""};else if(typeof a=="object"){let[d,p]=Object.entries(a)[0];h[d]={text:p}}else h.descr={text:a};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];h[d]=p}else h.sprite=s;if(typeof l=="object"){let[d,p]=Object.entries(l)[0];h[d]=p}else h.tags=l;if(typeof u=="object"){let[d,p]=Object.entries(u)[0];h[d]=p}else h.link=u;h.wrap=bf()},"addRel"),f8e=o(function(t,e,r,n,i,a,s){if(e===null||r===null)return;let l={},u=jl.find(h=>h.alias===e);if(u&&e===u.alias?l=u:(l.alias=e,jl.push(l)),r==null?l.label={text:""}:l.label={text:r},n==null)l.descr={text:""};else if(typeof n=="object"){let[h,f]=Object.entries(n)[0];l[h]={text:f}}else l.descr={text:n};if(typeof i=="object"){let[h,f]=Object.entries(i)[0];l[h]=f}else l.sprite=i;if(typeof a=="object"){let[h,f]=Object.entries(a)[0];l[h]=f}else l.tags=a;if(typeof s=="object"){let[h,f]=Object.entries(s)[0];l[h]=f}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=Es,l.wrap=bf()},"addPersonOrSystem"),d8e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=jl.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,jl.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=bf(),u.typeC4Shape={text:t},u.parentBoundary=Es},"addContainer"),p8e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=jl.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,jl.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=bf(),u.typeC4Shape={text:t},u.parentBoundary=Es},"addComponent"),m8e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=qc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,qc.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"system"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Es,a.wrap=bf(),Yl=Es,Es=t,xf.push(Yl)},"addPersonOrSystemBoundary"),g8e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=qc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,qc.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"container"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Es,a.wrap=bf(),Yl=Es,Es=t,xf.push(Yl)},"addContainerBoundary"),y8e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=qc.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,qc.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.type={text:"node"};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.type={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.nodeType=t,u.parentBoundary=Es,u.wrap=bf(),Yl=Es,Es=e,xf.push(Yl)},"addDeploymentNode"),v8e=o(function(){Es=Yl,xf.pop(),Yl=xf.pop(),xf.push(Yl)},"popBoundaryParseStack"),x8e=o(function(t,e,r,n,i,a,s,l,u,h,f){let d=jl.find(p=>p.alias===e);if(!(d===void 0&&(d=qc.find(p=>p.alias===e),d===void 0))){if(r!=null)if(typeof r=="object"){let[p,m]=Object.entries(r)[0];d[p]=m}else d.bgColor=r;if(n!=null)if(typeof n=="object"){let[p,m]=Object.entries(n)[0];d[p]=m}else d.fontColor=n;if(i!=null)if(typeof i=="object"){let[p,m]=Object.entries(i)[0];d[p]=m}else d.borderColor=i;if(a!=null)if(typeof a=="object"){let[p,m]=Object.entries(a)[0];d[p]=m}else d.shadowing=a;if(s!=null)if(typeof s=="object"){let[p,m]=Object.entries(s)[0];d[p]=m}else d.shape=s;if(l!=null)if(typeof l=="object"){let[p,m]=Object.entries(l)[0];d[p]=m}else d.sprite=l;if(u!=null)if(typeof u=="object"){let[p,m]=Object.entries(u)[0];d[p]=m}else d.techn=u;if(h!=null)if(typeof h=="object"){let[p,m]=Object.entries(h)[0];d[p]=m}else d.legendText=h;if(f!=null)if(typeof f=="object"){let[p,m]=Object.entries(f)[0];d[p]=m}else d.legendSprite=f}},"updateElStyle"),b8e=o(function(t,e,r,n,i,a,s){let l=R2.find(u=>u.from===e&&u.to===r);if(l!==void 0){if(n!=null)if(typeof n=="object"){let[u,h]=Object.entries(n)[0];l[u]=h}else l.textColor=n;if(i!=null)if(typeof i=="object"){let[u,h]=Object.entries(i)[0];l[u]=h}else l.lineColor=i;if(a!=null)if(typeof a=="object"){let[u,h]=Object.entries(a)[0];l[u]=parseInt(h)}else l.offsetX=parseInt(a);if(s!=null)if(typeof s=="object"){let[u,h]=Object.entries(s)[0];l[u]=parseInt(h)}else l.offsetY=parseInt(s)}},"updateRelStyle"),T8e=o(function(t,e,r){let n=Cw,i=Aw;if(typeof e=="object"){let a=Object.values(e)[0];n=parseInt(a)}else n=parseInt(e);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(Cw=n),i>=1&&(Aw=i)},"updateLayoutConfig"),w8e=o(function(){return Cw},"getC4ShapeInRow"),k8e=o(function(){return Aw},"getC4BoundaryInRow"),S8e=o(function(){return Es},"getCurrentBoundaryParse"),E8e=o(function(){return Yl},"getParentBoundaryParse"),Xj=o(function(t){return t==null?jl:jl.filter(e=>e.parentBoundary===t)},"getC4ShapeArray"),C8e=o(function(t){return jl.find(e=>e.alias===t)},"getC4Shape"),A8e=o(function(t){return Object.keys(Xj(t))},"getC4ShapeKeys"),Kj=o(function(t){return t==null?qc:qc.filter(e=>e.parentBoundary===t)},"getBoundaries"),_8e=Kj,D8e=o(function(){return R2},"getRels"),R8e=o(function(){return pD},"getTitle"),L8e=o(function(t){mD=t},"setWrap"),bf=o(function(){return mD},"autoWrap"),N8e=o(function(){jl=[],qc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Yl="",Es="global",xf=[""],R2=[],xf=[""],pD="",mD=!1,Cw=4,Aw=2},"clear"),M8e={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},I8e={FILLED:0,OPEN:1},O8e={LEFTOF:0,RIGHTOF:1,OVER:2},P8e=o(function(t){pD=fr(t,xe())},"setTitle"),L2={addPersonOrSystem:f8e,addPersonOrSystemBoundary:m8e,addContainer:d8e,addContainerBoundary:g8e,addComponent:p8e,addDeploymentNode:y8e,popBoundaryParseStack:v8e,addRel:h8e,updateElStyle:x8e,updateRelStyle:b8e,updateLayoutConfig:T8e,autoWrap:bf,setWrap:L8e,getC4ShapeArray:Xj,getC4Shape:C8e,getC4ShapeKeys:A8e,getBoundaries:Kj,getBoundarys:_8e,getCurrentBoundaryParse:S8e,getParentBoundaryParse:E8e,getRels:D8e,getTitle:R8e,getC4Type:c8e,getC4ShapeInRow:w8e,getC4BoundaryInRow:k8e,setAccTitle:zr,getAccTitle:Vr,getAccDescription:Ur,setAccDescription:qr,getConfig:o(()=>xe().c4,"getConfig"),clear:N8e,LINETYPE:M8e,ARROWTYPE:I8e,PLACEMENT:O8e,setTitle:P8e,setC4Type:u8e}});function Bp(t,e){return t==null||e==null?NaN:te?1:t>=e?0:NaN}var yD=I(()=>{"use strict";o(Bp,"ascending")});function vD(t,e){return t==null||e==null?NaN:et?1:e>=t?0:NaN}var Qj=I(()=>{"use strict";o(vD,"descending")});function Fp(t){let e,r,n;t.length!==2?(e=Bp,r=o((l,u)=>Bp(t(l),u),"compare2"),n=o((l,u)=>t(l)-u,"delta")):(e=t===Bp||t===vD?t:B8e,r=t,n=t);function i(l,u,h=0,f=l.length){if(h>>1;r(l[d],u)<0?h=d+1:f=d}while(h>>1;r(l[d],u)<=0?h=d+1:f=d}while(hh&&n(l[d-1],u)>-n(l[d],u)?d-1:d}return o(s,"center"),{left:i,center:s,right:a}}function B8e(){return 0}var xD=I(()=>{"use strict";yD();Qj();o(Fp,"bisector");o(B8e,"zero")});function bD(t){return t===null?NaN:+t}var Zj=I(()=>{"use strict";o(bD,"number")});var Jj,eX,F8e,$8e,TD,tX=I(()=>{"use strict";yD();xD();Zj();Jj=Fp(Bp),eX=Jj.right,F8e=Jj.left,$8e=Fp(bD).center,TD=eX});function rX({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):r}function z8e({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):(t.set(n,r),r)}function G8e({_intern:t,_key:e},r){let n=e(r);return t.has(n)&&(r=t.get(n),t.delete(n)),r}function V8e(t){return t!==null&&typeof t=="object"?t.valueOf():t}var fg,nX=I(()=>{"use strict";fg=class extends Map{static{o(this,"InternMap")}constructor(e,r=V8e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),e!=null)for(let[n,i]of e)this.set(n,i)}get(e){return super.get(rX(this,e))}has(e){return super.has(rX(this,e))}set(e,r){return super.set(z8e(this,e),r)}delete(e){return super.delete(G8e(this,e))}};o(rX,"intern_get");o(z8e,"intern_set");o(G8e,"intern_delete");o(V8e,"keyof")});function _w(t,e,r){let n=(e-t)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=q8e?10:a>=U8e?5:a>=W8e?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(t*h),u=Math.round(e*h),l/he&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(t/h),u=Math.round(e/h),l*he&&--u),u0))return[];if(t===e)return[t];let n=e=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h{"use strict";q8e=Math.sqrt(50),U8e=Math.sqrt(10),W8e=Math.sqrt(2);o(_w,"tickSpec");o(Dw,"ticks");o(N2,"tickIncrement");o(dg,"tickStep")});function Rw(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var aX=I(()=>{"use strict";o(Rw,"max")});function Lw(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var sX=I(()=>{"use strict";o(Lw,"min")});function Nw(t,e,r){t=+t,e=+e,r=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((e-t)/r))|0,a=new Array(i);++n{"use strict";o(Nw,"range")});var Tf=I(()=>{"use strict";tX();xD();aX();sX();oX();iX();nX()});function wD(t){return t}var lX=I(()=>{"use strict";o(wD,"default")});function H8e(t){return"translate("+t+",0)"}function Y8e(t){return"translate(0,"+t+")"}function j8e(t){return e=>+t(e)}function X8e(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function K8e(){return!this.__axis}function uX(t,e){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=t===Iw||t===Mw?-1:1,f=t===Mw||t===kD?"x":"y",d=t===Iw||t===SD?H8e:Y8e;function p(m){var g=n??(e.ticks?e.ticks.apply(e,r):e.domain()),y=i??(e.tickFormat?e.tickFormat.apply(e,r):wD),v=Math.max(a,0)+l,x=e.range(),b=+x[0]+u,T=+x[x.length-1]+u,E=(e.bandwidth?X8e:j8e)(e.copy(),u),w=m.selection?m.selection():m,k=w.selectAll(".domain").data([null]),C=w.selectAll(".tick").data(g,e).order(),D=C.exit(),R=C.enter().append("g").attr("class","tick"),O=C.select("line"),L=C.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),C=C.merge(R),O=O.merge(R.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),L=L.merge(R.append("text").attr("fill","currentColor").attr(f,h*v).attr("dy",t===Iw?"0em":t===SD?"0.71em":"0.32em")),m!==w&&(k=k.transition(m),C=C.transition(m),O=O.transition(m),L=L.transition(m),D=D.transition(m).attr("opacity",cX).attr("transform",function(S){return isFinite(S=E(S))?d(S+u):this.getAttribute("transform")}),R.attr("opacity",cX).attr("transform",function(S){var A=this.parentNode.__axis;return d((A&&isFinite(A=A(S))?A:E(S))+u)})),D.remove(),k.attr("d",t===Mw||t===kD?s?"M"+h*s+","+b+"H"+u+"V"+T+"H"+h*s:"M"+u+","+b+"V"+T:s?"M"+b+","+h*s+"V"+u+"H"+T+"V"+h*s:"M"+b+","+u+"H"+T),C.attr("opacity",1).attr("transform",function(S){return d(E(S)+u)}),O.attr(f+"2",h*a),L.attr(f,h*v).text(y),w.filter(K8e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===kD?"start":t===Mw?"end":"middle"),w.each(function(){this.__axis=E})}return o(p,"axis"),p.scale=function(m){return arguments.length?(e=m,p):e},p.ticks=function(){return r=Array.from(arguments),p},p.tickArguments=function(m){return arguments.length?(r=m==null?[]:Array.from(m),p):r.slice()},p.tickValues=function(m){return arguments.length?(n=m==null?null:Array.from(m),p):n&&n.slice()},p.tickFormat=function(m){return arguments.length?(i=m,p):i},p.tickSize=function(m){return arguments.length?(a=s=+m,p):a},p.tickSizeInner=function(m){return arguments.length?(a=+m,p):a},p.tickSizeOuter=function(m){return arguments.length?(s=+m,p):s},p.tickPadding=function(m){return arguments.length?(l=+m,p):l},p.offset=function(m){return arguments.length?(u=+m,p):u},p}function ED(t){return uX(Iw,t)}function CD(t){return uX(SD,t)}var Iw,kD,SD,Mw,cX,hX=I(()=>{"use strict";lX();Iw=1,kD=2,SD=3,Mw=4,cX=1e-6;o(H8e,"translateX");o(Y8e,"translateY");o(j8e,"number");o(X8e,"center");o(K8e,"entering");o(uX,"axis");o(ED,"axisTop");o(CD,"axisBottom")});var fX=I(()=>{"use strict";hX()});function pX(){for(var t=0,e=arguments.length,r={},n;t=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!e.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function J8e(t,e){for(var r=0,n=t.length,i;r{"use strict";Q8e={value:o(()=>{},"value")};o(pX,"dispatch");o(Ow,"Dispatch");o(Z8e,"parseTypenames");Ow.prototype=pX.prototype={constructor:Ow,on:o(function(t,e){var r=this._,n=Z8e(t+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a0)for(var r=new Array(i),n=0,i,a;n{"use strict";mX()});var Pw,DD,RD=I(()=>{"use strict";Pw="http://www.w3.org/1999/xhtml",DD={svg:"http://www.w3.org/2000/svg",xhtml:Pw,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function Uc(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),DD.hasOwnProperty(e)?{space:DD[e],local:t}:t}var Bw=I(()=>{"use strict";RD();o(Uc,"default")});function e_e(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===Pw&&e.documentElement.namespaceURI===Pw?e.createElement(t):e.createElementNS(r,t)}}function t_e(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function M2(t){var e=Uc(t);return(e.local?t_e:e_e)(e)}var LD=I(()=>{"use strict";Bw();RD();o(e_e,"creatorInherit");o(t_e,"creatorFixed");o(M2,"default")});function r_e(){}function wf(t){return t==null?r_e:function(){return this.querySelector(t)}}var Fw=I(()=>{"use strict";o(r_e,"none");o(wf,"default")});function ND(t){typeof t!="function"&&(t=wf(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";Xl();Fw();o(ND,"default")});function MD(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}var yX=I(()=>{"use strict";o(MD,"array")});function n_e(){return[]}function pg(t){return t==null?n_e:function(){return this.querySelectorAll(t)}}var ID=I(()=>{"use strict";o(n_e,"empty");o(pg,"default")});function i_e(t){return function(){return MD(t.apply(this,arguments))}}function OD(t){typeof t=="function"?t=i_e(t):t=pg(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a{"use strict";Xl();yX();ID();o(i_e,"arrayAll");o(OD,"default")});function mg(t){return function(){return this.matches(t)}}function $w(t){return function(e){return e.matches(t)}}var I2=I(()=>{"use strict";o(mg,"default");o($w,"childMatcher")});function s_e(t){return function(){return a_e.call(this.children,t)}}function o_e(){return this.firstElementChild}function PD(t){return this.select(t==null?o_e:s_e(typeof t=="function"?t:$w(t)))}var a_e,xX=I(()=>{"use strict";I2();a_e=Array.prototype.find;o(s_e,"childFind");o(o_e,"childFirst");o(PD,"default")});function c_e(){return Array.from(this.children)}function u_e(t){return function(){return l_e.call(this.children,t)}}function BD(t){return this.selectAll(t==null?c_e:u_e(typeof t=="function"?t:$w(t)))}var l_e,bX=I(()=>{"use strict";I2();l_e=Array.prototype.filter;o(c_e,"children");o(u_e,"childrenFilter");o(BD,"default")});function FD(t){typeof t!="function"&&(t=mg(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";Xl();I2();o(FD,"default")});function O2(t){return new Array(t.length)}var $D=I(()=>{"use strict";o(O2,"default")});function zD(){return new Si(this._enter||this._groups.map(O2),this._parents)}function P2(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}var GD=I(()=>{"use strict";$D();Xl();o(zD,"default");o(P2,"EnterNode");P2.prototype={constructor:P2,appendChild:o(function(t){return this._parent.insertBefore(t,this._next)},"appendChild"),insertBefore:o(function(t,e){return this._parent.insertBefore(t,e)},"insertBefore"),querySelector:o(function(t){return this._parent.querySelector(t)},"querySelector"),querySelectorAll:o(function(t){return this._parent.querySelectorAll(t)},"querySelectorAll")}});function VD(t){return function(){return t}}var wX=I(()=>{"use strict";o(VD,"default")});function h_e(t,e,r,n,i,a){for(var s=0,l,u=e.length,h=a.length;s=T&&(T=b+1);!(w=v[T])&&++T{"use strict";Xl();GD();wX();o(h_e,"bindIndex");o(f_e,"bindKey");o(d_e,"datum");o(qD,"default");o(p_e,"arraylike")});function UD(){return new Si(this._exit||this._groups.map(O2),this._parents)}var SX=I(()=>{"use strict";$D();Xl();o(UD,"default")});function WD(t,e,r){var n=this.enter(),i=this,a=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(i=e(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var EX=I(()=>{"use strict";o(WD,"default")});function HD(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u{"use strict";Xl();o(HD,"default")});function YD(){for(var t=this._groups,e=-1,r=t.length;++e=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var AX=I(()=>{"use strict";o(YD,"default")});function jD(t){t||(t=m_e);function e(d,p){return d&&p?t(d.__data__,p.__data__):!d-!p}o(e,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;ae?1:t>=e?0:NaN}var _X=I(()=>{"use strict";Xl();o(jD,"default");o(m_e,"ascending")});function XD(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}var DX=I(()=>{"use strict";o(XD,"default")});function KD(){return Array.from(this)}var RX=I(()=>{"use strict";o(KD,"default")});function QD(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(QD,"default")});function ZD(){let t=0;for(let e of this)++t;return t}var NX=I(()=>{"use strict";o(ZD,"default")});function JD(){return!this.node()}var MX=I(()=>{"use strict";o(JD,"default")});function eR(t){for(var e=this._groups,r=0,n=e.length;r{"use strict";o(eR,"default")});function g_e(t){return function(){this.removeAttribute(t)}}function y_e(t){return function(){this.removeAttributeNS(t.space,t.local)}}function v_e(t,e){return function(){this.setAttribute(t,e)}}function x_e(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function b_e(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttribute(t):this.setAttribute(t,r)}}function T_e(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function tR(t,e){var r=Uc(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((e==null?r.local?y_e:g_e:typeof e=="function"?r.local?T_e:b_e:r.local?x_e:v_e)(r,e))}var OX=I(()=>{"use strict";Bw();o(g_e,"attrRemove");o(y_e,"attrRemoveNS");o(v_e,"attrConstant");o(x_e,"attrConstantNS");o(b_e,"attrFunction");o(T_e,"attrFunctionNS");o(tR,"default")});function B2(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}var rR=I(()=>{"use strict";o(B2,"default")});function w_e(t){return function(){this.style.removeProperty(t)}}function k_e(t,e,r){return function(){this.style.setProperty(t,e,r)}}function S_e(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function nR(t,e,r){return arguments.length>1?this.each((e==null?w_e:typeof e=="function"?S_e:k_e)(t,e,r??"")):kf(this.node(),t)}function kf(t,e){return t.style.getPropertyValue(e)||B2(t).getComputedStyle(t,null).getPropertyValue(e)}var iR=I(()=>{"use strict";rR();o(w_e,"styleRemove");o(k_e,"styleConstant");o(S_e,"styleFunction");o(nR,"default");o(kf,"styleValue")});function E_e(t){return function(){delete this[t]}}function C_e(t,e){return function(){this[t]=e}}function A_e(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function aR(t,e){return arguments.length>1?this.each((e==null?E_e:typeof e=="function"?A_e:C_e)(t,e)):this.node()[t]}var PX=I(()=>{"use strict";o(E_e,"propertyRemove");o(C_e,"propertyConstant");o(A_e,"propertyFunction");o(aR,"default")});function BX(t){return t.trim().split(/^|\s+/)}function sR(t){return t.classList||new FX(t)}function FX(t){this._node=t,this._names=BX(t.getAttribute("class")||"")}function $X(t,e){for(var r=sR(t),n=-1,i=e.length;++n{"use strict";o(BX,"classArray");o(sR,"classList");o(FX,"ClassList");FX.prototype={add:o(function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(t){return this._names.indexOf(t)>=0},"contains")};o($X,"classedAdd");o(zX,"classedRemove");o(__e,"classedTrue");o(D_e,"classedFalse");o(R_e,"classedFunction");o(oR,"default")});function L_e(){this.textContent=""}function N_e(t){return function(){this.textContent=t}}function M_e(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function lR(t){return arguments.length?this.each(t==null?L_e:(typeof t=="function"?M_e:N_e)(t)):this.node().textContent}var VX=I(()=>{"use strict";o(L_e,"textRemove");o(N_e,"textConstant");o(M_e,"textFunction");o(lR,"default")});function I_e(){this.innerHTML=""}function O_e(t){return function(){this.innerHTML=t}}function P_e(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function cR(t){return arguments.length?this.each(t==null?I_e:(typeof t=="function"?P_e:O_e)(t)):this.node().innerHTML}var qX=I(()=>{"use strict";o(I_e,"htmlRemove");o(O_e,"htmlConstant");o(P_e,"htmlFunction");o(cR,"default")});function B_e(){this.nextSibling&&this.parentNode.appendChild(this)}function uR(){return this.each(B_e)}var UX=I(()=>{"use strict";o(B_e,"raise");o(uR,"default")});function F_e(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function hR(){return this.each(F_e)}var WX=I(()=>{"use strict";o(F_e,"lower");o(hR,"default")});function fR(t){var e=typeof t=="function"?t:M2(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var HX=I(()=>{"use strict";LD();o(fR,"default")});function $_e(){return null}function dR(t,e){var r=typeof t=="function"?t:M2(t),n=e==null?$_e:typeof e=="function"?e:wf(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var YX=I(()=>{"use strict";LD();Fw();o($_e,"constantNull");o(dR,"default")});function z_e(){var t=this.parentNode;t&&t.removeChild(this)}function pR(){return this.each(z_e)}var jX=I(()=>{"use strict";o(z_e,"remove");o(pR,"default")});function G_e(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function V_e(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function mR(t){return this.select(t?V_e:G_e)}var XX=I(()=>{"use strict";o(G_e,"selection_cloneShallow");o(V_e,"selection_cloneDeep");o(mR,"default")});function gR(t){return arguments.length?this.property("__data__",t):this.node().__data__}var KX=I(()=>{"use strict";o(gR,"default")});function q_e(t){return function(e){t.call(this,e,this.__data__)}}function U_e(t){return t.trim().split(/^|\s+/).map(function(e){var r="",n=e.indexOf(".");return n>=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function W_e(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r{"use strict";o(q_e,"contextListener");o(U_e,"parseTypenames");o(W_e,"onRemove");o(H_e,"onAdd");o(yR,"default")});function ZX(t,e,r){var n=B2(t),i=n.CustomEvent;typeof i=="function"?i=new i(e,r):(i=n.document.createEvent("Event"),r?(i.initEvent(e,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function Y_e(t,e){return function(){return ZX(this,t,e)}}function j_e(t,e){return function(){return ZX(this,t,e.apply(this,arguments))}}function vR(t,e){return this.each((typeof e=="function"?j_e:Y_e)(t,e))}var JX=I(()=>{"use strict";rR();o(ZX,"dispatchEvent");o(Y_e,"dispatchConstant");o(j_e,"dispatchFunction");o(vR,"default")});function*xR(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(xR,"default")});function Si(t,e){this._groups=t,this._parents=e}function tK(){return new Si([[document.documentElement]],bR)}function X_e(){return this}var bR,sh,Xl=I(()=>{"use strict";gX();vX();xX();bX();TX();kX();GD();SX();EX();CX();AX();_X();DX();RX();LX();NX();MX();IX();OX();iR();PX();GX();VX();qX();UX();WX();HX();YX();jX();XX();KX();QX();JX();eK();bR=[null];o(Si,"Selection");o(tK,"selection");o(X_e,"selection_selection");Si.prototype=tK.prototype={constructor:Si,select:ND,selectAll:OD,selectChild:PD,selectChildren:BD,filter:FD,data:qD,enter:zD,exit:UD,join:WD,merge:HD,selection:X_e,order:YD,sort:jD,call:XD,nodes:KD,node:QD,size:ZD,empty:JD,each:eR,attr:tR,style:nR,property:aR,classed:oR,text:lR,html:cR,raise:uR,lower:hR,append:fR,insert:dR,remove:pR,clone:mR,datum:gR,on:yR,dispatch:vR,[Symbol.iterator]:xR};sh=tK});function He(t){return typeof t=="string"?new Si([[document.querySelector(t)]],[document.documentElement]):new Si([[t]],bR)}var rK=I(()=>{"use strict";Xl();o(He,"default")});var Kl=I(()=>{"use strict";I2();Bw();rK();Xl();Fw();ID();iR()});var nK=I(()=>{"use strict"});function Sf(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function gg(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}var TR=I(()=>{"use strict";o(Sf,"default");o(gg,"extend")});function Ef(){}function aK(){return this.rgb().formatHex()}function nDe(){return this.rgb().formatHex8()}function iDe(){return fK(this).formatHsl()}function sK(){return this.rgb().formatRgb()}function Zl(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=K_e.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?oK(e):r===3?new Da(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?zw(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?zw(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Q_e.exec(t))?new Da(e[1],e[2],e[3],1):(e=Z_e.exec(t))?new Da(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=J_e.exec(t))?zw(e[1],e[2],e[3],e[4]):(e=eDe.exec(t))?zw(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=tDe.exec(t))?uK(e[1],e[2]/100,e[3]/100,1):(e=rDe.exec(t))?uK(e[1],e[2]/100,e[3]/100,e[4]):iK.hasOwnProperty(t)?oK(iK[t]):t==="transparent"?new Da(NaN,NaN,NaN,0):null}function oK(t){return new Da(t>>16&255,t>>8&255,t&255,1)}function zw(t,e,r,n){return n<=0&&(t=e=r=NaN),new Da(t,e,r,n)}function kR(t){return t instanceof Ef||(t=Zl(t)),t?(t=t.rgb(),new Da(t.r,t.g,t.b,t.opacity)):new Da}function vg(t,e,r,n){return arguments.length===1?kR(t):new Da(t,e,r,n??1)}function Da(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function lK(){return`#${$p(this.r)}${$p(this.g)}${$p(this.b)}`}function aDe(){return`#${$p(this.r)}${$p(this.g)}${$p(this.b)}${$p((isNaN(this.opacity)?1:this.opacity)*255)}`}function cK(){let t=qw(this.opacity);return`${t===1?"rgb(":"rgba("}${zp(this.r)}, ${zp(this.g)}, ${zp(this.b)}${t===1?")":`, ${t})`}`}function qw(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function zp(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function $p(t){return t=zp(t),(t<16?"0":"")+t.toString(16)}function uK(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new Ql(t,e,r,n)}function fK(t){if(t instanceof Ql)return new Ql(t.h,t.s,t.l,t.opacity);if(t instanceof Ef||(t=Zl(t)),!t)return new Ql;if(t instanceof Ql)return t;t=t.rgb();var e=t.r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(e===a?s=(r-n)/l+(r0&&u<1?0:s,new Ql(s,l,u,t.opacity)}function dK(t,e,r,n){return arguments.length===1?fK(t):new Ql(t,e,r,n??1)}function Ql(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function hK(t){return t=(t||0)%360,t<0?t+360:t}function Gw(t){return Math.max(0,Math.min(1,t||0))}function wR(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}var F2,Vw,yg,$2,Wc,K_e,Q_e,Z_e,J_e,eDe,tDe,rDe,iK,SR=I(()=>{"use strict";TR();o(Ef,"Color");F2=.7,Vw=1/F2,yg="\\s*([+-]?\\d+)\\s*",$2="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Wc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",K_e=/^#([0-9a-f]{3,8})$/,Q_e=new RegExp(`^rgb\\(${yg},${yg},${yg}\\)$`),Z_e=new RegExp(`^rgb\\(${Wc},${Wc},${Wc}\\)$`),J_e=new RegExp(`^rgba\\(${yg},${yg},${yg},${$2}\\)$`),eDe=new RegExp(`^rgba\\(${Wc},${Wc},${Wc},${$2}\\)$`),tDe=new RegExp(`^hsl\\(${$2},${Wc},${Wc}\\)$`),rDe=new RegExp(`^hsla\\(${$2},${Wc},${Wc},${$2}\\)$`),iK={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Sf(Ef,Zl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:aK,formatHex:aK,formatHex8:nDe,formatHsl:iDe,formatRgb:sK,toString:sK});o(aK,"color_formatHex");o(nDe,"color_formatHex8");o(iDe,"color_formatHsl");o(sK,"color_formatRgb");o(Zl,"color");o(oK,"rgbn");o(zw,"rgba");o(kR,"rgbConvert");o(vg,"rgb");o(Da,"Rgb");Sf(Da,vg,gg(Ef,{brighter(t){return t=t==null?Vw:Math.pow(Vw,t),new Da(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?F2:Math.pow(F2,t),new Da(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Da(zp(this.r),zp(this.g),zp(this.b),qw(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:lK,formatHex:lK,formatHex8:aDe,formatRgb:cK,toString:cK}));o(lK,"rgb_formatHex");o(aDe,"rgb_formatHex8");o(cK,"rgb_formatRgb");o(qw,"clampa");o(zp,"clampi");o($p,"hex");o(uK,"hsla");o(fK,"hslConvert");o(dK,"hsl");o(Ql,"Hsl");Sf(Ql,dK,gg(Ef,{brighter(t){return t=t==null?Vw:Math.pow(Vw,t),new Ql(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?F2:Math.pow(F2,t),new Ql(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new Da(wR(t>=240?t-240:t+120,i,n),wR(t,i,n),wR(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new Ql(hK(this.h),Gw(this.s),Gw(this.l),qw(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=qw(this.opacity);return`${t===1?"hsl(":"hsla("}${hK(this.h)}, ${Gw(this.s)*100}%, ${Gw(this.l)*100}%${t===1?")":`, ${t})`}`}}));o(hK,"clamph");o(Gw,"clampt");o(wR,"hsl2rgb")});var pK,mK,gK=I(()=>{"use strict";pK=Math.PI/180,mK=180/Math.PI});function wK(t){if(t instanceof Hc)return new Hc(t.l,t.a,t.b,t.opacity);if(t instanceof oh)return kK(t);t instanceof Da||(t=kR(t));var e=_R(t.r),r=_R(t.g),n=_R(t.b),i=ER((.2225045*e+.7168786*r+.0606169*n)/vK),a,s;return e===r&&r===n?a=s=i:(a=ER((.4360747*e+.3850649*r+.1430804*n)/yK),s=ER((.0139322*e+.0971045*r+.7141733*n)/xK)),new Hc(116*i-16,500*(a-i),200*(i-s),t.opacity)}function DR(t,e,r,n){return arguments.length===1?wK(t):new Hc(t,e,r,n??1)}function Hc(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function ER(t){return t>sDe?Math.pow(t,1/3):t/TK+bK}function CR(t){return t>xg?t*t*t:TK*(t-bK)}function AR(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function _R(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function oDe(t){if(t instanceof oh)return new oh(t.h,t.c,t.l,t.opacity);if(t instanceof Hc||(t=wK(t)),t.a===0&&t.b===0)return new oh(NaN,0{"use strict";TR();SR();gK();Uw=18,yK=.96422,vK=1,xK=.82521,bK=4/29,xg=6/29,TK=3*xg*xg,sDe=xg*xg*xg;o(wK,"labConvert");o(DR,"lab");o(Hc,"Lab");Sf(Hc,DR,gg(Ef,{brighter(t){return new Hc(this.l+Uw*(t??1),this.a,this.b,this.opacity)},darker(t){return new Hc(this.l-Uw*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return e=yK*CR(e),t=vK*CR(t),r=xK*CR(r),new Da(AR(3.1338561*e-1.6168667*t-.4906146*r),AR(-.9787684*e+1.9161415*t+.033454*r),AR(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}}));o(ER,"xyz2lab");o(CR,"lab2xyz");o(AR,"lrgb2rgb");o(_R,"rgb2lrgb");o(oDe,"hclConvert");o(z2,"hcl");o(oh,"Hcl");o(kK,"hcl2lab");Sf(oh,z2,gg(Ef,{brighter(t){return new oh(this.h,this.c,this.l+Uw*(t??1),this.opacity)},darker(t){return new oh(this.h,this.c,this.l-Uw*(t??1),this.opacity)},rgb(){return kK(this).rgb()}}))});var bg=I(()=>{"use strict";SR();SK()});function RR(t,e,r,n,i){var a=t*t,s=a*t;return((1-3*t+3*a-s)*e+(4-6*a+3*s)*r+(1+3*t+3*a-3*s)*n+s*i)/6}function LR(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],s=n>0?t[n-1]:2*i-a,l=n{"use strict";o(RR,"basis");o(LR,"default")});function MR(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],s=t[(n+1)%e],l=t[(n+2)%e];return RR((r-n/e)*e,i,a,s,l)}}var EK=I(()=>{"use strict";NR();o(MR,"default")});var Tg,IR=I(()=>{"use strict";Tg=o(t=>()=>t,"default")});function CK(t,e){return function(r){return t+r*e}}function lDe(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}function AK(t,e){var r=e-t;return r?CK(t,r>180||r<-180?r-360*Math.round(r/360):r):Tg(isNaN(t)?e:t)}function _K(t){return(t=+t)==1?lh:function(e,r){return r-e?lDe(e,r,t):Tg(isNaN(e)?r:e)}}function lh(t,e){var r=e-t;return r?CK(t,r):Tg(isNaN(t)?e:t)}var OR=I(()=>{"use strict";IR();o(CK,"linear");o(lDe,"exponential");o(AK,"hue");o(_K,"gamma");o(lh,"nogamma")});function DK(t){return function(e){var r=e.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s{"use strict";bg();NR();EK();OR();Gp=o((function t(e){var r=_K(e);function n(i,a){var s=r((i=vg(i)).r,(a=vg(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=lh(i.opacity,a.opacity);return function(f){return i.r=s(f),i.g=l(f),i.b=u(f),i.opacity=h(f),i+""}}return o(n,"rgb"),n.gamma=t,n}),"rgbGamma")(1);o(DK,"rgbSpline");cDe=DK(LR),uDe=DK(MR)});function BR(t,e){e||(e=[]);var r=t?Math.min(e.length,t.length):0,n=e.slice(),i;return function(a){for(i=0;i{"use strict";o(BR,"default");o(RK,"isNumberArray")});function NK(t,e){var r=e?e.length:0,n=t?Math.min(r,t.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s{"use strict";Ww();o(NK,"genericArray")});function FR(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}var IK=I(()=>{"use strict";o(FR,"default")});function ca(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var G2=I(()=>{"use strict";o(ca,"default")});function $R(t,e){var r={},n={},i;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(i in e)i in t?r[i]=Cf(t[i],e[i]):n[i]=e[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var OK=I(()=>{"use strict";Ww();o($R,"default")});function hDe(t){return function(){return t}}function fDe(t){return function(e){return t(e)+""}}function wg(t,e){var r=GR.lastIndex=zR.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(t=t+"",e=e+"";(n=GR.exec(t))&&(i=zR.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),l[s]?l[s]+=a:l[++s]=a),(n=n[0])===(i=i[0])?l[s]?l[s]+=i:l[++s]=i:(l[++s]=null,u.push({i:s,x:ca(n,i)})),r=zR.lastIndex;return r{"use strict";G2();GR=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,zR=new RegExp(GR.source,"g");o(hDe,"zero");o(fDe,"one");o(wg,"default")});function Cf(t,e){var r=typeof e,n;return e==null||r==="boolean"?Tg(e):(r==="number"?ca:r==="string"?(n=Zl(e))?(e=n,Gp):wg:e instanceof Zl?Gp:e instanceof Date?FR:RK(e)?BR:Array.isArray(e)?NK:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?$R:ca)(t,e)}var Ww=I(()=>{"use strict";bg();PR();MK();IK();G2();OK();VR();IR();LK();o(Cf,"default")});function Hw(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}}var PK=I(()=>{"use strict";o(Hw,"default")});function jw(t,e,r,n,i,a){var s,l,u;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(u=t*r+e*n)&&(r-=t*u,n-=e*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),t*n{"use strict";BK=180/Math.PI,Yw={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(jw,"default")});function $K(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?Yw:jw(e.a,e.b,e.c,e.d,e.e,e.f)}function zK(t){return t==null?Yw:(Xw||(Xw=document.createElementNS("http://www.w3.org/2000/svg","g")),Xw.setAttribute("transform",t),(t=Xw.transform.baseVal.consolidate())?(t=t.matrix,jw(t.a,t.b,t.c,t.d,t.e,t.f)):Yw)}var Xw,GK=I(()=>{"use strict";FK();o($K,"parseCss");o(zK,"parseSvg")});function VK(t,e,r,n){function i(h){return h.length?h.pop()+" ":""}o(i,"pop");function a(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push("translate(",null,e,null,r);g.push({i:y-4,x:ca(h,d)},{i:y-2,x:ca(f,p)})}else(d||p)&&m.push("translate("+d+e+p+r)}o(a,"translate");function s(h,f,d,p){h!==f?(h-f>180?f+=360:f-h>180&&(h+=360),p.push({i:d.push(i(d)+"rotate(",null,n)-2,x:ca(h,f)})):f&&d.push(i(d)+"rotate("+f+n)}o(s,"rotate");function l(h,f,d,p){h!==f?p.push({i:d.push(i(d)+"skewX(",null,n)-2,x:ca(h,f)}):f&&d.push(i(d)+"skewX("+f+n)}o(l,"skewX");function u(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:ca(h,d)},{i:y-2,x:ca(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return o(u,"scale"),function(h,f){var d=[],p=[];return h=t(h),f=t(f),a(h.translateX,h.translateY,f.translateX,f.translateY,d,p),s(h.rotate,f.rotate,d,p),l(h.skewX,f.skewX,d,p),u(h.scaleX,h.scaleY,f.scaleX,f.scaleY,d,p),h=f=null,function(m){for(var g=-1,y=p.length,v;++g{"use strict";G2();GK();o(VK,"interpolateTransform");qR=VK($K,"px, ","px)","deg)"),UR=VK(zK,", ",")",")")});function UK(t){return function(e,r){var n=t((e=z2(e)).h,(r=z2(r)).h),i=lh(e.c,r.c),a=lh(e.l,r.l),s=lh(e.opacity,r.opacity);return function(l){return e.h=n(l),e.c=i(l),e.l=a(l),e.opacity=s(l),e+""}}}var WR,dDe,WK=I(()=>{"use strict";bg();OR();o(UK,"hcl");WR=UK(AK),dDe=UK(lh)});var kg=I(()=>{"use strict";Ww();G2();PK();VR();qK();PR();WK()});function Y2(){return Vp||(jK(pDe),Vp=W2.now()+Zw)}function pDe(){Vp=0}function H2(){this._call=this._time=this._next=null}function Jw(t,e,r){var n=new H2;return n.restart(t,e,r),n}function XK(){Y2(),++Sg;for(var t=Kw,e;t;)(e=Vp-t._time)>=0&&t._call.call(void 0,e),t=t._next;--Sg}function HK(){Vp=(Qw=W2.now())+Zw,Sg=q2=0;try{XK()}finally{Sg=0,gDe(),Vp=0}}function mDe(){var t=W2.now(),e=t-Qw;e>YK&&(Zw-=e,Qw=t)}function gDe(){for(var t,e=Kw,r,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(r=e._next,e._next=null,e=t?t._next=r:Kw=r);U2=t,HR(n)}function HR(t){if(!Sg){q2&&(q2=clearTimeout(q2));var e=t-Vp;e>24?(t<1/0&&(q2=setTimeout(HK,t-W2.now()-Zw)),V2&&(V2=clearInterval(V2))):(V2||(Qw=W2.now(),V2=setInterval(mDe,YK)),Sg=1,jK(HK))}}var Sg,q2,V2,YK,Kw,U2,Qw,Vp,Zw,W2,jK,YR=I(()=>{"use strict";Sg=0,q2=0,V2=0,YK=1e3,Qw=0,Vp=0,Zw=0,W2=typeof performance=="object"&&performance.now?performance:Date,jK=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};o(Y2,"now");o(pDe,"clearNow");o(H2,"Timer");H2.prototype=Jw.prototype={constructor:H2,restart:o(function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?Y2():+r)+(e==null?0:+e),!this._next&&U2!==this&&(U2?U2._next=this:Kw=this,U2=this),this._call=t,this._time=r,HR()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,HR())},"stop")};o(Jw,"timer");o(XK,"timerFlush");o(HK,"wake");o(mDe,"poke");o(gDe,"nap");o(HR,"sleep")});function j2(t,e,r){var n=new H2;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var KK=I(()=>{"use strict";YR();o(j2,"default")});var e5=I(()=>{"use strict";YR();KK()});function ch(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;xDe(t,r,{name:e,index:n,group:i,on:yDe,tween:vDe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:JK})}function K2(t,e){var r=Ki(t,e);if(r.state>JK)throw new Error("too late; already scheduled");return r}function Ra(t,e){var r=Ki(t,e);if(r.state>t5)throw new Error("too late; already running");return r}function Ki(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function xDe(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=Jw(a,0,r.time);function a(h){r.state=QK,r.timer.restart(s,r.delay,r.time),r.delay<=h&&s(h-r.delay)}o(a,"schedule");function s(h){var f,d,p,m;if(r.state!==QK)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===t5)return j2(s);m.state===ZK?(m.state=X2,m.timer.stop(),m.on.call("interrupt",t,t.__data__,m.index,m.group),delete n[f]):+f{"use strict";_D();e5();yDe=AD("start","end","cancel","interrupt"),vDe=[],JK=0,QK=1,r5=2,t5=3,ZK=4,n5=5,X2=6;o(ch,"default");o(K2,"init");o(Ra,"set");o(Ki,"get");o(xDe,"create")});function Q2(t,e){var r=t.__transition,n,i,a=!0,s;if(r){e=e==null?null:e+"";for(s in r){if((n=r[s]).name!==e){a=!1;continue}i=n.state>r5&&n.state{"use strict";Qs();o(Q2,"default")});function jR(t){return this.each(function(){Q2(this,t)})}var tQ=I(()=>{"use strict";eQ();o(jR,"default")});function bDe(t,e){var r,n;return function(){var i=Ra(this,t),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";Qs();o(bDe,"tweenRemove");o(TDe,"tweenFunction");o(XR,"default");o(Eg,"tweenValue")});function J2(t,e){var r;return(typeof e=="number"?ca:e instanceof Zl?Gp:(r=Zl(e))?(e=r,Gp):wg)(t,e)}var KR=I(()=>{"use strict";bg();kg();o(J2,"default")});function wDe(t){return function(){this.removeAttribute(t)}}function kDe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function SDe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttribute(t);return s===i?null:s===n?a:a=e(n=s,r)}}function EDe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(t.space,t.local);return s===i?null:s===n?a:a=e(n=s,r)}}function CDe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(t):(s=this.getAttribute(t),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function ADe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(t.space,t.local):(s=this.getAttributeNS(t.space,t.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function QR(t,e){var r=Uc(t),n=r==="transform"?UR:J2;return this.attrTween(t,typeof e=="function"?(r.local?ADe:CDe)(r,n,Eg(this,"attr."+t,e)):e==null?(r.local?kDe:wDe)(r):(r.local?EDe:SDe)(r,n,e))}var rQ=I(()=>{"use strict";kg();Kl();Z2();KR();o(wDe,"attrRemove");o(kDe,"attrRemoveNS");o(SDe,"attrConstant");o(EDe,"attrConstantNS");o(CDe,"attrFunction");o(ADe,"attrFunctionNS");o(QR,"default")});function _De(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function DDe(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function RDe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&DDe(t,a)),r}return o(i,"tween"),i._value=e,i}function LDe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&_De(t,a)),r}return o(i,"tween"),i._value=e,i}function ZR(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;var n=Uc(t);return this.tween(r,(n.local?RDe:LDe)(n,e))}var nQ=I(()=>{"use strict";Kl();o(_De,"attrInterpolate");o(DDe,"attrInterpolateNS");o(RDe,"attrTweenNS");o(LDe,"attrTween");o(ZR,"default")});function NDe(t,e){return function(){K2(this,t).delay=+e.apply(this,arguments)}}function MDe(t,e){return e=+e,function(){K2(this,t).delay=e}}function JR(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?NDe:MDe)(e,t)):Ki(this.node(),e).delay}var iQ=I(()=>{"use strict";Qs();o(NDe,"delayFunction");o(MDe,"delayConstant");o(JR,"default")});function IDe(t,e){return function(){Ra(this,t).duration=+e.apply(this,arguments)}}function ODe(t,e){return e=+e,function(){Ra(this,t).duration=e}}function eL(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?IDe:ODe)(e,t)):Ki(this.node(),e).duration}var aQ=I(()=>{"use strict";Qs();o(IDe,"durationFunction");o(ODe,"durationConstant");o(eL,"default")});function PDe(t,e){if(typeof e!="function")throw new Error;return function(){Ra(this,t).ease=e}}function tL(t){var e=this._id;return arguments.length?this.each(PDe(e,t)):Ki(this.node(),e).ease}var sQ=I(()=>{"use strict";Qs();o(PDe,"easeConstant");o(tL,"default")});function BDe(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;Ra(this,t).ease=r}}function rL(t){if(typeof t!="function")throw new Error;return this.each(BDe(this._id,t))}var oQ=I(()=>{"use strict";Qs();o(BDe,"easeVarying");o(rL,"default")});function nL(t){typeof t!="function"&&(t=mg(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";Kl();qp();o(nL,"default")});function iL(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l{"use strict";qp();o(iL,"default")});function FDe(t){return(t+"").trim().split(/^|\s+/).every(function(e){var r=e.indexOf(".");return r>=0&&(e=e.slice(0,r)),!e||e==="start"})}function $De(t,e,r){var n,i,a=FDe(e)?K2:Ra;return function(){var s=a(this,t),l=s.on;l!==n&&(i=(n=l).copy()).on(e,r),s.on=i}}function aL(t,e){var r=this._id;return arguments.length<2?Ki(this.node(),r).on.on(t):this.each($De(r,t,e))}var uQ=I(()=>{"use strict";Qs();o(FDe,"start");o($De,"onFunction");o(aL,"default")});function zDe(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function sL(){return this.on("end.remove",zDe(this._id))}var hQ=I(()=>{"use strict";o(zDe,"removeFunction");o(sL,"default")});function oL(t){var e=this._name,r=this._id;typeof t!="function"&&(t=wf(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";Kl();qp();Qs();o(oL,"default")});function lL(t){var e=this._name,r=this._id;typeof t!="function"&&(t=pg(t));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";Kl();qp();Qs();o(lL,"default")});function cL(){return new GDe(this._groups,this._parents)}var GDe,pQ=I(()=>{"use strict";Kl();GDe=sh.prototype.constructor;o(cL,"default")});function VDe(t,e){var r,n,i;return function(){var a=kf(this,t),s=(this.style.removeProperty(t),kf(this,t));return a===s?null:a===r&&s===n?i:i=e(r=a,n=s)}}function mQ(t){return function(){this.style.removeProperty(t)}}function qDe(t,e,r){var n,i=r+"",a;return function(){var s=kf(this,t);return s===i?null:s===n?a:a=e(n=s,r)}}function UDe(t,e,r){var n,i,a;return function(){var s=kf(this,t),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(t),kf(this,t))),s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l))}}function WDe(t,e){var r,n,i,a="style."+e,s="end."+a,l;return function(){var u=Ra(this,t),h=u.on,f=u.value[a]==null?l||(l=mQ(e)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function uL(t,e,r){var n=(t+="")=="transform"?qR:J2;return e==null?this.styleTween(t,VDe(t,n)).on("end.style."+t,mQ(t)):typeof e=="function"?this.styleTween(t,UDe(t,n,Eg(this,"style."+t,e))).each(WDe(this._id,t)):this.styleTween(t,qDe(t,n,e),r).on("end.style."+t,null)}var gQ=I(()=>{"use strict";kg();Kl();Qs();Z2();KR();o(VDe,"styleNull");o(mQ,"styleRemove");o(qDe,"styleConstant");o(UDe,"styleFunction");o(WDe,"styleMaybeRemove");o(uL,"default")});function HDe(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function YDe(t,e,r){var n,i;function a(){var s=e.apply(this,arguments);return s!==i&&(n=(i=s)&&HDe(t,s,r)),n}return o(a,"tween"),a._value=e,a}function hL(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,YDe(t,e,r??""))}var yQ=I(()=>{"use strict";o(HDe,"styleInterpolate");o(YDe,"styleTween");o(hL,"default")});function jDe(t){return function(){this.textContent=t}}function XDe(t){return function(){var e=t(this);this.textContent=e??""}}function fL(t){return this.tween("text",typeof t=="function"?XDe(Eg(this,"text",t)):jDe(t==null?"":t+""))}var vQ=I(()=>{"use strict";Z2();o(jDe,"textConstant");o(XDe,"textFunction");o(fL,"default")});function KDe(t){return function(e){this.textContent=t.call(this,e)}}function QDe(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&KDe(i)),e}return o(n,"tween"),n._value=t,n}function dL(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,QDe(t))}var xQ=I(()=>{"use strict";o(KDe,"textInterpolate");o(QDe,"textTween");o(dL,"default")});function pL(){for(var t=this._name,e=this._id,r=i5(),n=this._groups,i=n.length,a=0;a{"use strict";qp();Qs();o(pL,"default")});function mL(){var t,e,r=this,n=r._id,i=r.size();return new Promise(function(a,s){var l={value:s},u={value:o(function(){--i===0&&a()},"value")};r.each(function(){var h=Ra(this,n),f=h.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(l),e._.interrupt.push(l),e._.end.push(u)),h.on=e}),i===0&&a()})}var TQ=I(()=>{"use strict";Qs();o(mL,"default")});function Cs(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function wQ(t){return sh().transition(t)}function i5(){return++ZDe}var ZDe,uh,qp=I(()=>{"use strict";Kl();rQ();nQ();iQ();aQ();sQ();oQ();lQ();cQ();uQ();hQ();fQ();dQ();pQ();gQ();yQ();vQ();xQ();bQ();Z2();TQ();ZDe=0;o(Cs,"Transition");o(wQ,"transition");o(i5,"newId");uh=sh.prototype;Cs.prototype=wQ.prototype={constructor:Cs,select:oL,selectAll:lL,selectChild:uh.selectChild,selectChildren:uh.selectChildren,filter:nL,merge:iL,selection:cL,transition:pL,call:uh.call,nodes:uh.nodes,node:uh.node,size:uh.size,empty:uh.empty,each:uh.each,on:aL,attr:QR,attrTween:ZR,style:uL,styleTween:hL,text:fL,textTween:dL,remove:sL,tween:XR,delay:JR,duration:eL,ease:tL,easeVarying:rL,end:mL,[Symbol.iterator]:uh[Symbol.iterator]}});function a5(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var kQ=I(()=>{"use strict";o(a5,"cubicInOut")});var gL=I(()=>{"use strict";kQ()});function eRe(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}function yL(t){var e,r;t instanceof Cs?(e=t._id,t=t._name):(e=i5(),(r=JDe).time=Y2(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";qp();Qs();gL();e5();JDe={time:null,delay:0,duration:250,ease:a5};o(eRe,"inherit");o(yL,"default")});var EQ=I(()=>{"use strict";Kl();tQ();SQ();sh.prototype.interrupt=jR;sh.prototype.transition=yL});var s5=I(()=>{"use strict";EQ()});var CQ=I(()=>{"use strict"});var AQ=I(()=>{"use strict"});var _Q=I(()=>{"use strict"});function DQ(t){return[+t[0],+t[1]]}function tRe(t){return[DQ(t[0]),DQ(t[1])]}function vL(t){return{type:t}}var f3t,d3t,p3t,m3t,g3t,y3t,RQ=I(()=>{"use strict";s5();CQ();AQ();_Q();({abs:f3t,max:d3t,min:p3t}=Math);o(DQ,"number1");o(tRe,"number2");m3t={name:"x",handles:["w","e"].map(vL),input:o(function(t,e){return t==null?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},"input"),output:o(function(t){return t&&[t[0][0],t[1][0]]},"output")},g3t={name:"y",handles:["n","s"].map(vL),input:o(function(t,e){return t==null?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},"input"),output:o(function(t){return t&&[t[0][1],t[1][1]]},"output")},y3t={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(vL),input:o(function(t){return t==null?null:tRe(t)},"input"),output:o(function(t){return t},"output")};o(vL,"type")});var LQ=I(()=>{"use strict";RQ()});function NQ(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return NQ;let r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";xL=Math.PI,bL=2*xL,Up=1e-6,rRe=bL-Up;o(NQ,"append");o(nRe,"appendRound");Wp=class{static{o(this,"Path")}constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e==null?NQ:nRe(e)}moveTo(e,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,r){this._append`L${this._x1=+e},${this._y1=+r}`}quadraticCurveTo(e,r,n,i){this._append`Q${+e},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(e,r,n,i,a,s){this._append`C${+e},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(e,r,n,i,a){if(e=+e,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,l=this._y1,u=n-e,h=i-r,f=s-e,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=e},${this._y1=r}`;else if(p>Up)if(!(Math.abs(d*u-h*f)>Up)||!a)this._append`L${this._x1=e},${this._y1=r}`;else{let m=n-s,g=i-l,y=u*u+h*h,v=m*m+g*g,x=Math.sqrt(y),b=Math.sqrt(p),T=a*Math.tan((xL-Math.acos((y+p-v)/(2*x*b)))/2),E=T/b,w=T/x;Math.abs(E-1)>Up&&this._append`L${e+E*f},${r+E*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=e+w*u},${this._y1=r+w*h}`}}arc(e,r,n,i,a,s){if(e=+e,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),u=n*Math.sin(i),h=e+l,f=r+u,d=1^s,p=s?i-a:a-i;this._x1===null?this._append`M${h},${f}`:(Math.abs(this._x1-h)>Up||Math.abs(this._y1-f)>Up)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%bL+bL),p>rRe?this._append`A${n},${n},0,1,${d},${e-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>Up&&this._append`A${n},${n},0,${+(p>=xL)},${d},${this._x1=e+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(e,r,n,i){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(MQ,"path");MQ.prototype=Wp.prototype});var TL=I(()=>{"use strict";IQ()});var OQ=I(()=>{"use strict"});var PQ=I(()=>{"use strict"});var BQ=I(()=>{"use strict"});var FQ=I(()=>{"use strict"});var $Q=I(()=>{"use strict"});var zQ=I(()=>{"use strict"});var GQ=I(()=>{"use strict"});function wL(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function Hp(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}var ex=I(()=>{"use strict";o(wL,"default");o(Hp,"formatDecimalParts")});function Jl(t){return t=Hp(Math.abs(t)),t?t[1]:NaN}var tx=I(()=>{"use strict";ex();o(Jl,"default")});function kL(t,e){return function(r,n){for(var i=r.length,a=[],s=0,l=t[0],u=0;i>0&&l>0&&(u+l+1>n&&(l=Math.max(1,n-u)),a.push(r.substring(i-=l,i+l)),!((u+=l+1)>n));)l=t[s=(s+1)%t.length];return a.reverse().join(e)}}var VQ=I(()=>{"use strict";o(kL,"default")});function SL(t){return function(e){return e.replace(/[0-9]/g,function(r){return t[+r]})}}var qQ=I(()=>{"use strict";o(SL,"default")});function Af(t){if(!(e=iRe.exec(t)))throw new Error("invalid format: "+t);var e;return new o5({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function o5(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}var iRe,EL=I(()=>{"use strict";iRe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Af,"formatSpecifier");Af.prototype=o5.prototype;o(o5,"FormatSpecifier");o5.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type}});function CL(t){e:for(var e=t.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?t.slice(0,n)+t.slice(i+1):t}var UQ=I(()=>{"use strict";o(CL,"default")});function _L(t,e){var r=Hp(t,e);if(!r)return t+"";var n=r[0],i=r[1],a=i-(AL=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,s=n.length;return a===s?n:a>s?n+new Array(a-s+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+Hp(t,Math.max(0,e+a-1))[0]}var AL,DL=I(()=>{"use strict";ex();o(_L,"default")});function l5(t,e){var r=Hp(t,e);if(!r)return t+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}var WQ=I(()=>{"use strict";ex();o(l5,"default")});var RL,HQ=I(()=>{"use strict";ex();DL();WQ();RL={"%":o((t,e)=>(t*100).toFixed(e),"%"),b:o(t=>Math.round(t).toString(2),"b"),c:o(t=>t+"","c"),d:wL,e:o((t,e)=>t.toExponential(e),"e"),f:o((t,e)=>t.toFixed(e),"f"),g:o((t,e)=>t.toPrecision(e),"g"),o:o(t=>Math.round(t).toString(8),"o"),p:o((t,e)=>l5(t*100,e),"p"),r:l5,s:_L,X:o(t=>Math.round(t).toString(16).toUpperCase(),"X"),x:o(t=>Math.round(t).toString(16),"x")}});function c5(t){return t}var YQ=I(()=>{"use strict";o(c5,"default")});function LL(t){var e=t.grouping===void 0||t.thousands===void 0?c5:kL(jQ.call(t.grouping,Number),t.thousands+""),r=t.currency===void 0?"":t.currency[0]+"",n=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",a=t.numerals===void 0?c5:SL(jQ.call(t.numerals,String)),s=t.percent===void 0?"%":t.percent+"",l=t.minus===void 0?"\u2212":t.minus+"",u=t.nan===void 0?"NaN":t.nan+"";function h(d){d=Af(d);var p=d.fill,m=d.align,g=d.sign,y=d.symbol,v=d.zero,x=d.width,b=d.comma,T=d.precision,E=d.trim,w=d.type;w==="n"?(b=!0,w="g"):RL[w]||(T===void 0&&(T=12),E=!0,w="g"),(v||p==="0"&&m==="=")&&(v=!0,p="0",m="=");var k=y==="$"?r:y==="#"&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",C=y==="$"?n:/[%p]/.test(w)?s:"",D=RL[w],R=/[defgprs%]/.test(w);T=T===void 0?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,T)):Math.max(0,Math.min(20,T));function O(L){var S=k,A=C,_,N,M;if(w==="c")A=D(L)+A,L="";else{L=+L;var P=L<0||1/L<0;if(L=isNaN(L)?u:D(Math.abs(L),T),E&&(L=CL(L)),P&&+L==0&&g!=="+"&&(P=!1),S=(P?g==="("?g:l:g==="-"||g==="("?"":g)+S,A=(w==="s"?XQ[8+AL/3]:"")+A+(P&&g==="("?")":""),R){for(_=-1,N=L.length;++_M||M>57){A=(M===46?i+L.slice(_+1):L.slice(_))+A,L=L.slice(0,_);break}}}b&&!v&&(L=e(L,1/0));var B=S.length+L.length+A.length,F=B>1)+S+L+A+F.slice(B);break;default:L=F+S+L+A;break}return a(L)}return o(O,"format"),O.toString=function(){return d+""},O}o(h,"newFormat");function f(d,p){var m=h((d=Af(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(Jl(p)/3)))*3,y=Math.pow(10,-g),v=XQ[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var jQ,XQ,KQ=I(()=>{"use strict";tx();VQ();qQ();EL();UQ();HQ();DL();YQ();jQ=Array.prototype.map,XQ=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(LL,"default")});function NL(t){return u5=LL(t),Yc=u5.format,h5=u5.formatPrefix,u5}var u5,Yc,h5,QQ=I(()=>{"use strict";KQ();NL({thousands:",",grouping:[3],currency:["$",""]});o(NL,"defaultLocale")});function f5(t){return Math.max(0,-Jl(Math.abs(t)))}var ZQ=I(()=>{"use strict";tx();o(f5,"default")});function d5(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Jl(e)/3)))*3-Jl(Math.abs(t)))}var JQ=I(()=>{"use strict";tx();o(d5,"default")});function p5(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,Jl(e)-Jl(t))+1}var eZ=I(()=>{"use strict";tx();o(p5,"default")});var ML=I(()=>{"use strict";QQ();EL();ZQ();JQ();eZ()});var tZ=I(()=>{"use strict"});function aRe(t){var e=0,r=t.children,n=r&&r.length;if(!n)e=1;else for(;--n>=0;)e+=r[n].value;t.value=e}function IL(){return this.eachAfter(aRe)}var rZ=I(()=>{"use strict";o(aRe,"count");o(IL,"default")});function OL(t,e){let r=-1;for(let n of this)t.call(e,n,++r,this);return this}var nZ=I(()=>{"use strict";o(OL,"default")});function PL(t,e){for(var r=this,n=[r],i,a,s=-1;r=n.pop();)if(t.call(e,r,++s,this),i=r.children)for(a=i.length-1;a>=0;--a)n.push(i[a]);return this}var iZ=I(()=>{"use strict";o(PL,"default")});function BL(t,e){for(var r=this,n=[r],i=[],a,s,l,u=-1;r=n.pop();)if(i.push(r),a=r.children)for(s=0,l=a.length;s{"use strict";o(BL,"default")});function FL(t,e){let r=-1;for(let n of this)if(t.call(e,n,++r,this))return n}var sZ=I(()=>{"use strict";o(FL,"default")});function $L(t){return this.eachAfter(function(e){for(var r=+t(e.data)||0,n=e.children,i=n&&n.length;--i>=0;)r+=n[i].value;e.value=r})}var oZ=I(()=>{"use strict";o($L,"default")});function zL(t){return this.eachBefore(function(e){e.children&&e.children.sort(t)})}var lZ=I(()=>{"use strict";o(zL,"default")});function GL(t){for(var e=this,r=sRe(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var i=n.length;t!==r;)n.splice(i,0,t),t=t.parent;return n}function sRe(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),i=null;for(t=r.pop(),e=n.pop();t===e;)i=t,t=r.pop(),e=n.pop();return i}var cZ=I(()=>{"use strict";o(GL,"default");o(sRe,"leastCommonAncestor")});function VL(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e}var uZ=I(()=>{"use strict";o(VL,"default")});function qL(){return Array.from(this)}var hZ=I(()=>{"use strict";o(qL,"default")});function UL(){var t=[];return this.eachBefore(function(e){e.children||t.push(e)}),t}var fZ=I(()=>{"use strict";o(UL,"default")});function WL(){var t=this,e=[];return t.each(function(r){r!==t&&e.push({source:r.parent,target:r})}),e}var dZ=I(()=>{"use strict";o(WL,"default")});function*HL(){var t=this,e,r=[t],n,i,a;do for(e=r.reverse(),r=[];t=e.pop();)if(yield t,n=t.children)for(i=0,a=n.length;i{"use strict";o(HL,"default")});function Cg(t,e){t instanceof Map?(t=[void 0,t],e===void 0&&(e=cRe)):e===void 0&&(e=lRe);for(var r=new rx(t),n,i=[r],a,s,l,u;n=i.pop();)if((s=e(n.data))&&(u=(s=Array.from(s)).length))for(n.children=s,l=u-1;l>=0;--l)i.push(a=s[l]=new rx(s[l])),a.parent=n,a.depth=n.depth+1;return r.eachBefore(hRe)}function oRe(){return Cg(this).eachBefore(uRe)}function lRe(t){return t.children}function cRe(t){return Array.isArray(t)?t[1]:null}function uRe(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function hRe(t){var e=0;do t.height=e;while((t=t.parent)&&t.height<++e)}function rx(t){this.data=t,this.depth=this.height=0,this.parent=null}var mZ=I(()=>{"use strict";rZ();nZ();iZ();aZ();sZ();oZ();lZ();cZ();uZ();hZ();fZ();dZ();pZ();o(Cg,"hierarchy");o(oRe,"node_copy");o(lRe,"objectChildren");o(cRe,"mapChildren");o(uRe,"copyData");o(hRe,"computeHeight");o(rx,"Node");rx.prototype=Cg.prototype={constructor:rx,count:IL,each:OL,eachAfter:BL,eachBefore:PL,find:FL,sum:$L,sort:zL,path:GL,ancestors:VL,descendants:qL,leaves:UL,links:WL,copy:oRe,[Symbol.iterator]:HL}});function gZ(t){if(typeof t!="function")throw new Error;return t}var yZ=I(()=>{"use strict";o(gZ,"required")});function Ag(){return 0}function Yp(t){return function(){return t}}var vZ=I(()=>{"use strict";o(Ag,"constantZero");o(Yp,"default")});function YL(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}var xZ=I(()=>{"use strict";o(YL,"default")});function jL(t,e,r,n,i){for(var a=t.children,s,l=-1,u=a.length,h=t.value&&(n-e)/t.value;++l{"use strict";o(jL,"default")});function XL(t,e,r,n,i){for(var a=t.children,s,l=-1,u=a.length,h=t.value&&(i-r)/t.value;++l{"use strict";o(XL,"default")});function dRe(t,e,r,n,i,a){for(var s=[],l=e.children,u,h,f=0,d=0,p=l.length,m,g,y=e.value,v,x,b,T,E,w,k;fb&&(b=h),k=v*v*w,T=Math.max(b/k,k/x),T>E){v-=h;break}E=T}s.push(u={value:v,dice:m{"use strict";bZ();TZ();fRe=(1+Math.sqrt(5))/2;o(dRe,"squarifyRatio");wZ=o((function t(e){function r(n,i,a,s,l){dRe(e,n,i,a,s,l)}return o(r,"squarify"),r.ratio=function(n){return t((n=+n)>1?n:1)},r}),"custom")(fRe)});function m5(){var t=wZ,e=!1,r=1,n=1,i=[0],a=Ag,s=Ag,l=Ag,u=Ag,h=Ag;function f(p){return p.x0=p.y0=0,p.x1=r,p.y1=n,p.eachBefore(d),i=[0],e&&p.eachBefore(YL),p}o(f,"treemap");function d(p){var m=i[p.depth],g=p.x0+m,y=p.y0+m,v=p.x1-m,x=p.y1-m;v{"use strict";xZ();kZ();yZ();vZ();o(m5,"default")});var EZ=I(()=>{"use strict";mZ();SZ()});var CZ=I(()=>{"use strict"});var AZ=I(()=>{"use strict"});function _f(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);break}return this}var nx=I(()=>{"use strict";o(_f,"initRange")});function Lo(){var t=new fg,e=[],r=[],n=KL;function i(a){let s=t.get(a);if(s===void 0){if(n!==KL)return n;t.set(a,s=e.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return e.slice();e=[],t=new fg;for(let s of a)t.has(s)||t.set(s,e.push(s)-1);return i},i.range=function(a){return arguments.length?(r=Array.from(a),i):r.slice()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return Lo(e,r).unknown(n)},_f.apply(i,arguments),i}var KL,QL=I(()=>{"use strict";Tf();nx();KL=Symbol("implicit");o(Lo,"ordinal")});function _g(){var t=Lo().unknown(void 0),e=t.domain,r=t.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete t.unknown;function d(){var p=e().length,m=i{"use strict";Tf();nx();QL();o(_g,"band")});function ZL(t){return function(){return t}}var DZ=I(()=>{"use strict";o(ZL,"constants")});function JL(t){return+t}var RZ=I(()=>{"use strict";o(JL,"number")});function Dg(t){return t}function e9(t,e){return(e-=t=+t)?function(r){return(r-t)/e}:ZL(isNaN(e)?NaN:.5)}function pRe(t,e){var r;return t>e&&(r=t,t=e,e=r),function(n){return Math.max(t,Math.min(e,n))}}function mRe(t,e,r){var n=t[0],i=t[1],a=e[0],s=e[1];return i2?gRe:mRe,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(t.map(n),e,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(e,t.map(n),ca)))(p)))},d.domain=function(p){return arguments.length?(t=Array.from(p,JL),f()):t.slice()},d.range=function(p){return arguments.length?(e=Array.from(p),f()):e.slice()},d.rangeRound=function(p){return e=Array.from(p),r=Hw,f()},d.clamp=function(p){return arguments.length?(s=p?!0:Dg,f()):s!==Dg},d.interpolate=function(p){return arguments.length?(r=p,f()):r},d.unknown=function(p){return arguments.length?(a=p,d):a},function(p,m){return n=p,i=m,f()}}function ix(){return yRe()(Dg,Dg)}var LZ,t9=I(()=>{"use strict";Tf();kg();DZ();RZ();LZ=[0,1];o(Dg,"identity");o(e9,"normalize");o(pRe,"clamper");o(mRe,"bimap");o(gRe,"polymap");o(g5,"copy");o(yRe,"transformer");o(ix,"continuous")});function r9(t,e,r,n){var i=dg(t,e,r),a;switch(n=Af(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(t),Math.abs(e));return n.precision==null&&!isNaN(a=d5(i,s))&&(n.precision=a),h5(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=p5(i,Math.max(Math.abs(t),Math.abs(e))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=f5(i))&&(n.precision=a-(n.type==="%")*2);break}}return Yc(n)}var NZ=I(()=>{"use strict";Tf();ML();o(r9,"tickFormat")});function vRe(t){var e=t.domain;return t.ticks=function(r){var n=e();return Dw(n[0],n[n.length-1],r??10)},t.tickFormat=function(r,n){var i=e();return r9(i[0],i[i.length-1],r??10,n)},t.nice=function(r){r==null&&(r=10);var n=e(),i=0,a=n.length-1,s=n[i],l=n[a],u,h,f=10;for(l0;){if(h=N2(s,l,r),h===u)return n[i]=s,n[a]=l,e(n);if(h>0)s=Math.floor(s/h)*h,l=Math.ceil(l/h)*h;else if(h<0)s=Math.ceil(s*h)/h,l=Math.floor(l*h)/h;else break;u=h}return t},t}function ec(){var t=ix();return t.copy=function(){return g5(t,ec())},_f.apply(t,arguments),vRe(t)}var MZ=I(()=>{"use strict";Tf();t9();nx();NZ();o(vRe,"linearish");o(ec,"linear")});function n9(t,e){t=t.slice();var r=0,n=t.length-1,i=t[r],a=t[n],s;return a{"use strict";o(n9,"nice")});function Mn(t,e,r,n){function i(a){return t(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s(e(a=new Date(+a),s==null?1:Math.floor(s)),a),i.range=(a,s,l)=>{let u=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a0))return u;let h;do u.push(h=new Date(+a)),e(a,l),t(a);while(hMn(s=>{if(s>=s)for(;t(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;e(s,-1),!a(s););else for(;--l>=0;)for(;e(s,1),!a(s););}),r&&(i.count=(a,s)=>(i9.setTime(+a),a9.setTime(+s),t(i9),t(a9),Math.floor(r(i9,a9))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?s=>n(s)%a===0:s=>i.count(0,s)%a===0):i)),i}var i9,a9,hh=I(()=>{"use strict";i9=new Date,a9=new Date;o(Mn,"timeInterval")});var jc,OZ,s9=I(()=>{"use strict";hh();jc=Mn(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);jc.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?Mn(e=>{e.setTime(Math.floor(e/t)*t)},(e,r)=>{e.setTime(+e+r*t)},(e,r)=>(r-e)/t):jc);OZ=jc.range});var No,PZ,o9=I(()=>{"use strict";hh();No=Mn(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*1e3)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds()),PZ=No.range});var fh,xRe,y5,bRe,l9=I(()=>{"use strict";hh();fh=Mn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getMinutes()),xRe=fh.range,y5=Mn(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()),bRe=y5.range});var dh,TRe,v5,wRe,c9=I(()=>{"use strict";hh();dh=Mn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3-t.getMinutes()*6e4)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getHours()),TRe=dh.range,v5=Mn(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()),wRe=v5.range});var ll,kRe,sx,SRe,x5,ERe,u9=I(()=>{"use strict";hh();ll=Mn(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5,t=>t.getDate()-1),kRe=ll.range,sx=Mn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1),SRe=sx.range,x5=Mn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)),ERe=x5.range});function Kp(t){return Mn(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,r)=>{e.setDate(e.getDate()+r*7)},(e,r)=>(r-e-(r.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/6048e5)}function Qp(t){return Mn(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCDate(e.getUTCDate()+r*7)},(e,r)=>(r-e)/6048e5)}var tc,Df,b5,T5,Kc,w5,k5,FZ,CRe,ARe,_Re,DRe,RRe,LRe,Zp,Rg,$Z,zZ,Rf,GZ,VZ,qZ,NRe,MRe,IRe,ORe,PRe,BRe,h9=I(()=>{"use strict";hh();o(Kp,"timeWeekday");tc=Kp(0),Df=Kp(1),b5=Kp(2),T5=Kp(3),Kc=Kp(4),w5=Kp(5),k5=Kp(6),FZ=tc.range,CRe=Df.range,ARe=b5.range,_Re=T5.range,DRe=Kc.range,RRe=w5.range,LRe=k5.range;o(Qp,"utcWeekday");Zp=Qp(0),Rg=Qp(1),$Z=Qp(2),zZ=Qp(3),Rf=Qp(4),GZ=Qp(5),VZ=Qp(6),qZ=Zp.range,NRe=Rg.range,MRe=$Z.range,IRe=zZ.range,ORe=Rf.range,PRe=GZ.range,BRe=VZ.range});var ph,FRe,S5,$Re,f9=I(()=>{"use strict";hh();ph=Mn(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),FRe=ph.range,S5=Mn(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),$Re=S5.range});var Mo,zRe,rc,GRe,d9=I(()=>{"use strict";hh();Mo=Mn(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());Mo.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:Mn(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,r)=>{e.setFullYear(e.getFullYear()+r*t)});zRe=Mo.range,rc=Mn(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());rc.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:Mn(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)});GRe=rc.range});function WZ(t,e,r,n,i,a){let s=[[No,1,1e3],[No,5,5*1e3],[No,15,15*1e3],[No,30,30*1e3],[a,1,6e4],[a,5,5*6e4],[a,15,15*6e4],[a,30,30*6e4],[i,1,36e5],[i,3,3*36e5],[i,6,6*36e5],[i,12,12*36e5],[n,1,864e5],[n,2,2*864e5],[r,1,6048e5],[e,1,2592e6],[e,3,3*2592e6],[t,1,31536e6]];function l(h,f,d){let p=fv).right(s,p);if(m===s.length)return t.every(dg(h/31536e6,f/31536e6,d));if(m===0)return jc.every(Math.max(dg(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";Tf();s9();o9();l9();c9();u9();h9();f9();d9();o(WZ,"ticker");[qRe,URe]=WZ(rc,S5,Zp,x5,v5,y5),[p9,m9]=WZ(Mo,ph,tc,ll,dh,fh)});var E5=I(()=>{"use strict";s9();o9();l9();c9();u9();h9();f9();d9();HZ()});function g9(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function y9(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function ox(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function v9(t){var e=t.dateTime,r=t.date,n=t.time,i=t.periods,a=t.days,s=t.shortDays,l=t.months,u=t.shortMonths,h=lx(i),f=cx(i),d=lx(a),p=cx(a),m=lx(s),g=cx(s),y=lx(l),v=cx(l),x=lx(u),b=cx(u),T={a:P,A:B,b:F,B:G,c:null,d:ZZ,e:ZZ,f:dLe,g:kLe,G:ELe,H:uLe,I:hLe,j:fLe,L:nJ,m:pLe,M:mLe,p:$,q:V,Q:tJ,s:rJ,S:gLe,u:yLe,U:vLe,V:xLe,w:bLe,W:TLe,x:null,X:null,y:wLe,Y:SLe,Z:CLe,"%":eJ},E={a:K,A:ee,b:H,B:he,c:null,d:JZ,e:JZ,f:RLe,g:zLe,G:VLe,H:ALe,I:_Le,j:DLe,L:aJ,m:LLe,M:NLe,p:Z,q:de,Q:tJ,s:rJ,S:MLe,u:ILe,U:OLe,V:PLe,w:BLe,W:FLe,x:null,X:null,y:$Le,Y:GLe,Z:qLe,"%":eJ},w={a:O,A:L,b:S,B:A,c:_,d:KZ,e:KZ,f:sLe,g:XZ,G:jZ,H:QZ,I:QZ,j:rLe,L:aLe,m:tLe,M:nLe,p:R,q:eLe,Q:lLe,s:cLe,S:iLe,u:XRe,U:KRe,V:QRe,w:jRe,W:ZRe,x:N,X:M,y:XZ,Y:jZ,Z:JRe,"%":oLe};T.x=k(r,T),T.X=k(n,T),T.c=k(e,T),E.x=k(r,E),E.X=k(n,E),E.c=k(e,E);function k(re,ne){return function(te){var Q=[],le=-1,J=0,ge=re.length,ie,Te,j;for(te instanceof Date||(te=new Date(+te));++le53)return null;"w"in Q||(Q.w=1),"Z"in Q?(J=y9(ox(Q.y,0,1)),ge=J.getUTCDay(),J=ge>4||ge===0?Rg.ceil(J):Rg(J),J=sx.offset(J,(Q.V-1)*7),Q.y=J.getUTCFullYear(),Q.m=J.getUTCMonth(),Q.d=J.getUTCDate()+(Q.w+6)%7):(J=g9(ox(Q.y,0,1)),ge=J.getDay(),J=ge>4||ge===0?Df.ceil(J):Df(J),J=ll.offset(J,(Q.V-1)*7),Q.y=J.getFullYear(),Q.m=J.getMonth(),Q.d=J.getDate()+(Q.w+6)%7)}else("W"in Q||"U"in Q)&&("w"in Q||(Q.w="u"in Q?Q.u%7:"W"in Q?1:0),ge="Z"in Q?y9(ox(Q.y,0,1)).getUTCDay():g9(ox(Q.y,0,1)).getDay(),Q.m=0,Q.d="W"in Q?(Q.w+6)%7+Q.W*7-(ge+5)%7:Q.w+Q.U*7-(ge+6)%7);return"Z"in Q?(Q.H+=Q.Z/100|0,Q.M+=Q.Z%100,y9(Q)):g9(Q)}}o(C,"newParse");function D(re,ne,te,Q){for(var le=0,J=ne.length,ge=te.length,ie,Te;le=ge)return-1;if(ie=ne.charCodeAt(le++),ie===37){if(ie=ne.charAt(le++),Te=w[ie in YZ?ne.charAt(le++):ie],!Te||(Q=Te(re,te,Q))<0)return-1}else if(ie!=te.charCodeAt(Q++))return-1}return Q}o(D,"parseSpecifier");function R(re,ne,te){var Q=h.exec(ne.slice(te));return Q?(re.p=f.get(Q[0].toLowerCase()),te+Q[0].length):-1}o(R,"parsePeriod");function O(re,ne,te){var Q=m.exec(ne.slice(te));return Q?(re.w=g.get(Q[0].toLowerCase()),te+Q[0].length):-1}o(O,"parseShortWeekday");function L(re,ne,te){var Q=d.exec(ne.slice(te));return Q?(re.w=p.get(Q[0].toLowerCase()),te+Q[0].length):-1}o(L,"parseWeekday");function S(re,ne,te){var Q=x.exec(ne.slice(te));return Q?(re.m=b.get(Q[0].toLowerCase()),te+Q[0].length):-1}o(S,"parseShortMonth");function A(re,ne,te){var Q=y.exec(ne.slice(te));return Q?(re.m=v.get(Q[0].toLowerCase()),te+Q[0].length):-1}o(A,"parseMonth");function _(re,ne,te){return D(re,e,ne,te)}o(_,"parseLocaleDateTime");function N(re,ne,te){return D(re,r,ne,te)}o(N,"parseLocaleDate");function M(re,ne,te){return D(re,n,ne,te)}o(M,"parseLocaleTime");function P(re){return s[re.getDay()]}o(P,"formatShortWeekday");function B(re){return a[re.getDay()]}o(B,"formatWeekday");function F(re){return u[re.getMonth()]}o(F,"formatShortMonth");function G(re){return l[re.getMonth()]}o(G,"formatMonth");function $(re){return i[+(re.getHours()>=12)]}o($,"formatPeriod");function V(re){return 1+~~(re.getMonth()/3)}o(V,"formatQuarter");function K(re){return s[re.getUTCDay()]}o(K,"formatUTCShortWeekday");function ee(re){return a[re.getUTCDay()]}o(ee,"formatUTCWeekday");function H(re){return u[re.getUTCMonth()]}o(H,"formatUTCShortMonth");function he(re){return l[re.getUTCMonth()]}o(he,"formatUTCMonth");function Z(re){return i[+(re.getUTCHours()>=12)]}o(Z,"formatUTCPeriod");function de(re){return 1+~~(re.getUTCMonth()/3)}return o(de,"formatUTCQuarter"),{format:o(function(re){var ne=k(re+="",T);return ne.toString=function(){return re},ne},"format"),parse:o(function(re){var ne=C(re+="",!1);return ne.toString=function(){return re},ne},"parse"),utcFormat:o(function(re){var ne=k(re+="",E);return ne.toString=function(){return re},ne},"utcFormat"),utcParse:o(function(re){var ne=C(re+="",!0);return ne.toString=function(){return re},ne},"utcParse")}}function on(t,e,r){var n=t<0?"-":"",i=(n?-t:t)+"",a=i.length;return n+(a[e.toLowerCase(),r]))}function jRe(t,e,r){var n=ua.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function XRe(t,e,r){var n=ua.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function KRe(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function QRe(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function ZRe(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function jZ(t,e,r){var n=ua.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function XZ(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function JRe(t,e,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function eLe(t,e,r){var n=ua.exec(e.slice(r,r+1));return n?(t.q=n[0]*3-3,r+n[0].length):-1}function tLe(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function KZ(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function rLe(t,e,r){var n=ua.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function QZ(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function nLe(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function iLe(t,e,r){var n=ua.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function aLe(t,e,r){var n=ua.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function sLe(t,e,r){var n=ua.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function oLe(t,e,r){var n=WRe.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function lLe(t,e,r){var n=ua.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function cLe(t,e,r){var n=ua.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function ZZ(t,e){return on(t.getDate(),e,2)}function uLe(t,e){return on(t.getHours(),e,2)}function hLe(t,e){return on(t.getHours()%12||12,e,2)}function fLe(t,e){return on(1+ll.count(Mo(t),t),e,3)}function nJ(t,e){return on(t.getMilliseconds(),e,3)}function dLe(t,e){return nJ(t,e)+"000"}function pLe(t,e){return on(t.getMonth()+1,e,2)}function mLe(t,e){return on(t.getMinutes(),e,2)}function gLe(t,e){return on(t.getSeconds(),e,2)}function yLe(t){var e=t.getDay();return e===0?7:e}function vLe(t,e){return on(tc.count(Mo(t)-1,t),e,2)}function iJ(t){var e=t.getDay();return e>=4||e===0?Kc(t):Kc.ceil(t)}function xLe(t,e){return t=iJ(t),on(Kc.count(Mo(t),t)+(Mo(t).getDay()===4),e,2)}function bLe(t){return t.getDay()}function TLe(t,e){return on(Df.count(Mo(t)-1,t),e,2)}function wLe(t,e){return on(t.getFullYear()%100,e,2)}function kLe(t,e){return t=iJ(t),on(t.getFullYear()%100,e,2)}function SLe(t,e){return on(t.getFullYear()%1e4,e,4)}function ELe(t,e){var r=t.getDay();return t=r>=4||r===0?Kc(t):Kc.ceil(t),on(t.getFullYear()%1e4,e,4)}function CLe(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+on(e/60|0,"0",2)+on(e%60,"0",2)}function JZ(t,e){return on(t.getUTCDate(),e,2)}function ALe(t,e){return on(t.getUTCHours(),e,2)}function _Le(t,e){return on(t.getUTCHours()%12||12,e,2)}function DLe(t,e){return on(1+sx.count(rc(t),t),e,3)}function aJ(t,e){return on(t.getUTCMilliseconds(),e,3)}function RLe(t,e){return aJ(t,e)+"000"}function LLe(t,e){return on(t.getUTCMonth()+1,e,2)}function NLe(t,e){return on(t.getUTCMinutes(),e,2)}function MLe(t,e){return on(t.getUTCSeconds(),e,2)}function ILe(t){var e=t.getUTCDay();return e===0?7:e}function OLe(t,e){return on(Zp.count(rc(t)-1,t),e,2)}function sJ(t){var e=t.getUTCDay();return e>=4||e===0?Rf(t):Rf.ceil(t)}function PLe(t,e){return t=sJ(t),on(Rf.count(rc(t),t)+(rc(t).getUTCDay()===4),e,2)}function BLe(t){return t.getUTCDay()}function FLe(t,e){return on(Rg.count(rc(t)-1,t),e,2)}function $Le(t,e){return on(t.getUTCFullYear()%100,e,2)}function zLe(t,e){return t=sJ(t),on(t.getUTCFullYear()%100,e,2)}function GLe(t,e){return on(t.getUTCFullYear()%1e4,e,4)}function VLe(t,e){var r=t.getUTCDay();return t=r>=4||r===0?Rf(t):Rf.ceil(t),on(t.getUTCFullYear()%1e4,e,4)}function qLe(){return"+0000"}function eJ(){return"%"}function tJ(t){return+t}function rJ(t){return Math.floor(+t/1e3)}var YZ,ua,WRe,HRe,oJ=I(()=>{"use strict";E5();o(g9,"localDate");o(y9,"utcDate");o(ox,"newDate");o(v9,"formatLocale");YZ={"-":"",_:" ",0:"0"},ua=/^\s*\d+/,WRe=/^%/,HRe=/[\\^$*+?|[\]().{}]/g;o(on,"pad");o(YRe,"requote");o(lx,"formatRe");o(cx,"formatLookup");o(jRe,"parseWeekdayNumberSunday");o(XRe,"parseWeekdayNumberMonday");o(KRe,"parseWeekNumberSunday");o(QRe,"parseWeekNumberISO");o(ZRe,"parseWeekNumberMonday");o(jZ,"parseFullYear");o(XZ,"parseYear");o(JRe,"parseZone");o(eLe,"parseQuarter");o(tLe,"parseMonthNumber");o(KZ,"parseDayOfMonth");o(rLe,"parseDayOfYear");o(QZ,"parseHour24");o(nLe,"parseMinutes");o(iLe,"parseSeconds");o(aLe,"parseMilliseconds");o(sLe,"parseMicroseconds");o(oLe,"parseLiteralPercent");o(lLe,"parseUnixTimestamp");o(cLe,"parseUnixTimestampSeconds");o(ZZ,"formatDayOfMonth");o(uLe,"formatHour24");o(hLe,"formatHour12");o(fLe,"formatDayOfYear");o(nJ,"formatMilliseconds");o(dLe,"formatMicroseconds");o(pLe,"formatMonthNumber");o(mLe,"formatMinutes");o(gLe,"formatSeconds");o(yLe,"formatWeekdayNumberMonday");o(vLe,"formatWeekNumberSunday");o(iJ,"dISO");o(xLe,"formatWeekNumberISO");o(bLe,"formatWeekdayNumberSunday");o(TLe,"formatWeekNumberMonday");o(wLe,"formatYear");o(kLe,"formatYearISO");o(SLe,"formatFullYear");o(ELe,"formatFullYearISO");o(CLe,"formatZone");o(JZ,"formatUTCDayOfMonth");o(ALe,"formatUTCHour24");o(_Le,"formatUTCHour12");o(DLe,"formatUTCDayOfYear");o(aJ,"formatUTCMilliseconds");o(RLe,"formatUTCMicroseconds");o(LLe,"formatUTCMonthNumber");o(NLe,"formatUTCMinutes");o(MLe,"formatUTCSeconds");o(ILe,"formatUTCWeekdayNumberMonday");o(OLe,"formatUTCWeekNumberSunday");o(sJ,"UTCdISO");o(PLe,"formatUTCWeekNumberISO");o(BLe,"formatUTCWeekdayNumberSunday");o(FLe,"formatUTCWeekNumberMonday");o($Le,"formatUTCYear");o(zLe,"formatUTCYearISO");o(GLe,"formatUTCFullYear");o(VLe,"formatUTCFullYearISO");o(qLe,"formatUTCZone");o(eJ,"formatLiteralPercent");o(tJ,"formatUnixTimestamp");o(rJ,"formatUnixTimestampSeconds")});function x9(t){return Lg=v9(t),Jp=Lg.format,lJ=Lg.parse,cJ=Lg.utcFormat,uJ=Lg.utcParse,Lg}var Lg,Jp,lJ,cJ,uJ,hJ=I(()=>{"use strict";oJ();x9({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});o(x9,"defaultLocale")});var b9=I(()=>{"use strict";hJ()});function ULe(t){return new Date(t)}function WLe(t){return t instanceof Date?+t:+new Date(+t)}function fJ(t,e,r,n,i,a,s,l,u,h){var f=ix(),d=f.invert,p=f.domain,m=h(".%L"),g=h(":%S"),y=h("%I:%M"),v=h("%I %p"),x=h("%a %d"),b=h("%b %d"),T=h("%B"),E=h("%Y");function w(k){return(u(k){"use strict";E5();b9();t9();nx();IZ();o(ULe,"date");o(WLe,"number");o(fJ,"calendar");o(C5,"time")});var pJ=I(()=>{"use strict";_Z();MZ();QL();dJ()});function T9(t){for(var e=t.length/6|0,r=new Array(e),n=0;n{"use strict";o(T9,"default")});var w9,gJ=I(()=>{"use strict";mJ();w9=T9("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var yJ=I(()=>{"use strict";gJ()});function Xn(t){return o(function(){return t},"constant")}var A5=I(()=>{"use strict";o(Xn,"default")});function xJ(t){return t>1?0:t<-1?Ng:Math.acos(t)}function S9(t){return t>=1?ux:t<=-1?-ux:Math.asin(t)}var k9,La,Lf,vJ,_5,nc,e0,ha,Ng,ux,Mg,D5=I(()=>{"use strict";k9=Math.abs,La=Math.atan2,Lf=Math.cos,vJ=Math.max,_5=Math.min,nc=Math.sin,e0=Math.sqrt,ha=1e-12,Ng=Math.PI,ux=Ng/2,Mg=2*Ng;o(xJ,"acos");o(S9,"asin")});function R5(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(r==null)e=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);e=n}return t},()=>new Wp(e)}var E9=I(()=>{"use strict";TL();o(R5,"withPath")});function HLe(t){return t.innerRadius}function YLe(t){return t.outerRadius}function jLe(t){return t.startAngle}function XLe(t){return t.endAngle}function KLe(t){return t&&t.padAngle}function QLe(t,e,r,n,i,a,s,l){var u=r-t,h=n-e,f=s-i,d=l-a,p=d*u-f*h;if(!(p*p_*_+N*N&&(D=O,R=L),{cx:D,cy:R,x01:-f,y01:-d,x11:D*(i/w-1),y11:R*(i/w-1)}}function ic(){var t=HLe,e=YLe,r=Xn(0),n=null,i=jLe,a=XLe,s=KLe,l=null,u=R5(h);function h(){var f,d,p=+t.apply(this,arguments),m=+e.apply(this,arguments),g=i.apply(this,arguments)-ux,y=a.apply(this,arguments)-ux,v=k9(y-g),x=y>g;if(l||(l=f=u()),mha))l.moveTo(0,0);else if(v>Mg-ha)l.moveTo(m*Lf(g),m*nc(g)),l.arc(0,0,m,g,y,!x),p>ha&&(l.moveTo(p*Lf(y),p*nc(y)),l.arc(0,0,p,y,g,x));else{var b=g,T=y,E=g,w=y,k=v,C=v,D=s.apply(this,arguments)/2,R=D>ha&&(n?+n.apply(this,arguments):e0(p*p+m*m)),O=_5(k9(m-p)/2,+r.apply(this,arguments)),L=O,S=O,A,_;if(R>ha){var N=S9(R/p*nc(D)),M=S9(R/m*nc(D));(k-=N*2)>ha?(N*=x?1:-1,E+=N,w-=N):(k=0,E=w=(g+y)/2),(C-=M*2)>ha?(M*=x?1:-1,b+=M,T-=M):(C=0,b=T=(g+y)/2)}var P=m*Lf(b),B=m*nc(b),F=p*Lf(w),G=p*nc(w);if(O>ha){var $=m*Lf(T),V=m*nc(T),K=p*Lf(E),ee=p*nc(E),H;if(vha?S>ha?(A=L5(K,ee,P,B,m,S,x),_=L5($,V,F,G,m,S,x),l.moveTo(A.cx+A.x01,A.cy+A.y01),Sha)||!(k>ha)?l.lineTo(F,G):L>ha?(A=L5(F,G,$,V,p,-L,x),_=L5(P,B,K,ee,p,-L,x),l.lineTo(A.cx+A.x01,A.cy+A.y01),L{"use strict";A5();D5();E9();o(HLe,"arcInnerRadius");o(YLe,"arcOuterRadius");o(jLe,"arcStartAngle");o(XLe,"arcEndAngle");o(KLe,"arcPadAngle");o(QLe,"intersect");o(L5,"cornerTangents");o(ic,"default")});function hx(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var tEt,C9=I(()=>{"use strict";tEt=Array.prototype.slice;o(hx,"default")});function TJ(t){this._context=t}function mh(t){return new TJ(t)}var A9=I(()=>{"use strict";o(TJ,"Linear");TJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}},"point")};o(mh,"default")});function wJ(t){return t[0]}function kJ(t){return t[1]}var SJ=I(()=>{"use strict";o(wJ,"x");o(kJ,"y")});function ac(t,e){var r=Xn(!0),n=null,i=mh,a=null,s=R5(l);t=typeof t=="function"?t:t===void 0?wJ:Xn(t),e=typeof e=="function"?e:e===void 0?kJ:Xn(e);function l(u){var h,f=(u=hx(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";C9();A5();A9();E9();SJ();o(ac,"default")});function _9(t,e){return et?1:e>=t?0:NaN}var CJ=I(()=>{"use strict";o(_9,"default")});function D9(t){return t}var AJ=I(()=>{"use strict";o(D9,"default")});function N5(){var t=D9,e=_9,r=null,n=Xn(0),i=Xn(Mg),a=Xn(0);function s(l){var u,h=(l=hx(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(Mg,Math.max(-Mg,i.apply(this,arguments)-y)),x,b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),T=b*(v<0?-1:1),E;for(u=0;u0&&(p+=E);for(e!=null?m.sort(function(w,k){return e(g[w],g[k])}):r!=null&&m.sort(function(w,k){return r(l[w],l[k])}),u=0,d=p?(v-h*T)/p:0;u0?E*d:0)+T,g[f]={data:l[f],index:u,value:E,startAngle:y,endAngle:x,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(t=typeof l=="function"?l:Xn(+l),s):t},s.sortValues=function(l){return arguments.length?(e=l,r=null,s):e},s.sort=function(l){return arguments.length?(r=l,e=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:Xn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:Xn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:Xn(+l),s):a},s}var _J=I(()=>{"use strict";C9();A5();CJ();AJ();D5();o(N5,"default")});function fx(t){return new M5(t,!0)}function dx(t){return new M5(t,!1)}var M5,DJ=I(()=>{"use strict";M5=class{static{o(this,"Bump")}constructor(e,r){this._context=e,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,r){switch(e=+e,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,r,e,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,e,this._y0,e,r);break}}this._x0=e,this._y0=r}};o(fx,"bumpX");o(dx,"bumpY")});function Io(){}var px=I(()=>{"use strict";o(Io,"default")});function Ig(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function mx(t){this._context=t}function cl(t){return new mx(t)}var gx=I(()=>{"use strict";o(Ig,"point");o(mx,"Basis");mx.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:Ig(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Ig(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(cl,"default")});function RJ(t){this._context=t}function I5(t){return new RJ(t)}var LJ=I(()=>{"use strict";px();gx();o(RJ,"BasisClosed");RJ.prototype={areaStart:Io,areaEnd:Io,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:Ig(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(I5,"default")});function NJ(t){this._context=t}function O5(t){return new NJ(t)}var MJ=I(()=>{"use strict";gx();o(NJ,"BasisOpen");NJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:Ig(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(O5,"default")});function IJ(t,e){this._basis=new mx(t),this._beta=e}var R9,OJ=I(()=>{"use strict";gx();o(IJ,"Bundle");IJ.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n=t[0],i=e[0],a=t[r]-n,s=e[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+u*a),this._beta*e[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(t,e){this._x.push(+t),this._y.push(+e)},"point")};R9=o((function t(e){function r(n){return e===1?new mx(n):new IJ(n,e)}return o(r,"bundle"),r.beta=function(n){return t(+n)},r}),"custom")(.85)});function Og(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function P5(t,e){this._context=t,this._k=(1-e)/6}var yx,vx=I(()=>{"use strict";o(Og,"point");o(P5,"Cardinal");P5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Og(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:Og(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};yx=o((function t(e){function r(n){return new P5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r}),"custom")(0)});function B5(t,e){this._context=t,this._k=(1-e)/6}var L9,N9=I(()=>{"use strict";px();vx();o(B5,"CardinalClosed");B5.prototype={areaStart:Io,areaEnd:Io,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Og(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};L9=o((function t(e){function r(n){return new B5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r}),"custom")(0)});function F5(t,e){this._context=t,this._k=(1-e)/6}var M9,I9=I(()=>{"use strict";vx();o(F5,"CardinalOpen");F5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Og(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};M9=o((function t(e){function r(n){return new F5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r}),"custom")(0)});function xx(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>ha){var l=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*l-t._x0*t._l12_2a+t._x2*t._l01_2a)/u,i=(i*l-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>ha){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*h+t._x1*t._l23_2a-e*t._l12_2a)/f,s=(s*h+t._y1*t._l23_2a-r*t._l12_2a)/f}t._context.bezierCurveTo(n,i,a,s,t._x2,t._y2)}function PJ(t,e){this._context=t,this._alpha=e}var bx,$5=I(()=>{"use strict";D5();vx();o(xx,"point");o(PJ,"CatmullRom");PJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:xx(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};bx=o((function t(e){function r(n){return e?new PJ(n,e):new P5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r}),"custom")(.5)});function BJ(t,e){this._context=t,this._alpha=e}var O9,FJ=I(()=>{"use strict";N9();px();$5();o(BJ,"CatmullRomClosed");BJ.prototype={areaStart:Io,areaEnd:Io,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:xx(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};O9=o((function t(e){function r(n){return e?new BJ(n,e):new B5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r}),"custom")(.5)});function $J(t,e){this._context=t,this._alpha=e}var P9,zJ=I(()=>{"use strict";I9();$5();o($J,"CatmullRomOpen");$J.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:xx(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};P9=o((function t(e){function r(n){return e?new $J(n,e):new F5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r}),"custom")(.5)});function GJ(t){this._context=t}function z5(t){return new GJ(t)}var VJ=I(()=>{"use strict";px();o(GJ,"LinearClosed");GJ.prototype={areaStart:Io,areaEnd:Io,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))},"point")};o(z5,"default")});function qJ(t){return t<0?-1:1}function UJ(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),s=(r-t._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(qJ(a)+qJ(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function WJ(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function B9(t,e,r){var n=t._x0,i=t._y0,a=t._x1,s=t._y1,l=(a-n)/3;t._context.bezierCurveTo(n+l,i+l*e,a-l,s-l*r,a,s)}function G5(t){this._context=t}function HJ(t){this._context=new YJ(t)}function YJ(t){this._context=t}function Tx(t){return new G5(t)}function wx(t){return new HJ(t)}var jJ=I(()=>{"use strict";o(qJ,"sign");o(UJ,"slope3");o(WJ,"slope2");o(B9,"point");o(G5,"MonotoneX");G5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:B9(this,this._t0,WJ(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){var r=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,B9(this,WJ(this,r=UJ(this,t,e)),r);break;default:B9(this,this._t0,r=UJ(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}},"point")};o(HJ,"MonotoneY");(HJ.prototype=Object.create(G5.prototype)).point=function(t,e){G5.prototype.point.call(this,e,t)};o(YJ,"ReflectContext");YJ.prototype={moveTo:o(function(t,e){this._context.moveTo(e,t)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(t,e){this._context.lineTo(e,t)},"lineTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._context.bezierCurveTo(e,t,n,r,a,i)},"bezierCurveTo")};o(Tx,"monotoneX");o(wx,"monotoneY")});function KJ(t){this._context=t}function XJ(t){var e,r=t.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(s[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e{"use strict";o(KJ,"Natural");KJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),r===2)this._context.lineTo(t[1],e[1]);else for(var n=XJ(t),i=XJ(e),a=0,s=1;s{"use strict";o(V5,"Step");V5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}break}}this._x=t,this._y=e},"point")};o(Bg,"default");o(kx,"stepBefore");o(Sx,"stepAfter")});var JJ=I(()=>{"use strict";bJ();EJ();_J();LJ();MJ();gx();DJ();OJ();N9();I9();vx();FJ();zJ();$5();VJ();A9();jJ();QJ();ZJ()});var eee=I(()=>{"use strict"});var tee=I(()=>{"use strict"});function Nf(t,e,r){this.k=t,this.x=e,this.y=r}function $9(t){for(;!t.__zoom;)if(!(t=t.parentNode))return F9;return t.__zoom}var F9,z9=I(()=>{"use strict";o(Nf,"Transform");Nf.prototype={constructor:Nf,scale:o(function(t){return t===1?this:new Nf(this.k*t,this.x,this.y)},"scale"),translate:o(function(t,e){return t===0&e===0?this:new Nf(this.k,this.x+this.k*t,this.y+this.k*e)},"translate"),apply:o(function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},"apply"),applyX:o(function(t){return t*this.k+this.x},"applyX"),applyY:o(function(t){return t*this.k+this.y},"applyY"),invert:o(function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},"invert"),invertX:o(function(t){return(t-this.x)/this.k},"invertX"),invertY:o(function(t){return(t-this.y)/this.k},"invertY"),rescaleX:o(function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},"rescaleX"),rescaleY:o(function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};F9=new Nf(1,0,0);$9.prototype=Nf.prototype;o($9,"transform")});var ree=I(()=>{"use strict"});var nee=I(()=>{"use strict";s5();eee();tee();z9();ree()});var iee=I(()=>{"use strict";nee();z9()});var kr=I(()=>{"use strict";Tf();fX();LQ();OQ();bg();PQ();BQ();_D();nK();FQ();gL();$Q();GQ();ML();tZ();EZ();kg();TL();CZ();zQ();AZ();pJ();yJ();Kl();JJ();E5();b9();e5();s5();iee()});var aee=Jt(fa=>{"use strict";Object.defineProperty(fa,"__esModule",{value:!0});fa.BLANK_URL=fa.relativeFirstCharacters=fa.whitespaceEscapeCharsRegex=fa.urlSchemeRegex=fa.ctrlCharactersRegex=fa.htmlCtrlEntityRegex=fa.htmlEntitiesRegex=fa.invalidProtocolRegex=void 0;fa.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;fa.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;fa.htmlCtrlEntityRegex=/&(newline|tab);/gi;fa.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;fa.urlSchemeRegex=/^.+(:|:)/gim;fa.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;fa.relativeFirstCharacters=[".","/"];fa.BLANK_URL="about:blank"});var Fg=Jt(q5=>{"use strict";Object.defineProperty(q5,"__esModule",{value:!0});q5.sanitizeUrl=void 0;var Za=aee();function ZLe(t){return Za.relativeFirstCharacters.indexOf(t[0])>-1}o(ZLe,"isRelativeUrlWithoutProtocol");function JLe(t){var e=t.replace(Za.ctrlCharactersRegex,"");return e.replace(Za.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(JLe,"decodeHtmlCharacters");function e9e(t){return URL.canParse(t)}o(e9e,"isValidUrl");function see(t){try{return decodeURIComponent(t)}catch{return t}}o(see,"decodeURI");function t9e(t){if(!t)return Za.BLANK_URL;var e,r=see(t.trim());do r=JLe(r).replace(Za.htmlCtrlEntityRegex,"").replace(Za.ctrlCharactersRegex,"").replace(Za.whitespaceEscapeCharsRegex,"").trim(),r=see(r),e=r.match(Za.ctrlCharactersRegex)||r.match(Za.htmlEntitiesRegex)||r.match(Za.htmlCtrlEntityRegex)||r.match(Za.whitespaceEscapeCharsRegex);while(e&&e.length>0);var n=r;if(!n)return Za.BLANK_URL;if(ZLe(n))return n;var i=n.trimStart(),a=i.match(Za.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Za.invalidProtocolRegex.test(s))return Za.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!e9e(l))return Za.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(t9e,"sanitizeUrl");q5.sanitizeUrl=t9e});var G9,t0,U5,oee,W5,H5,Na,Ex,Cx=I(()=>{"use strict";G9=Aa(Fg(),1);wr();t0=o((t,e)=>{let r=t.append("rect");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),e.name&&r.attr("name",e.name),e.rx&&r.attr("rx",e.rx),e.ry&&r.attr("ry",e.ry),e.attrs!==void 0)for(let n in e.attrs)r.attr(n,e.attrs[n]);return e.class&&r.attr("class",e.class),r},"drawRect"),U5=o((t,e)=>{let r={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};t0(t,r).lower()},"drawBackgroundRect"),oee=o((t,e)=>{let r=e.text.replace(Lp," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),W5=o((t,e,r,n)=>{let i=t.append("image");i.attr("x",e),i.attr("y",r);let a=(0,G9.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),H5=o((t,e,r,n)=>{let i=t.append("use");i.attr("x",e),i.attr("y",r);let a=(0,G9.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),Na=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),Ex=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var lee,V9,cee,r9e,n9e,i9e,a9e,s9e,o9e,l9e,c9e,u9e,h9e,f9e,d9e,gh,sc,uee=I(()=>{"use strict";wr();Cx();lee=Aa(Fg(),1),V9=o(function(t,e){return t0(t,e)},"drawRect"),cee=o(function(t,e,r,n,i,a){let s=t.append("image");s.attr("width",e),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,lee.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),r9e=o((t,e,r)=>{let n=t.append("g"),i=0;for(let a of e){let s=a.textColor?a.textColor:"#444444",l=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,h=a.offsetY?parseInt(a.offsetY):0,f="";if(i===0){let p=n.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",l),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)"),i=-1}else{let p=n.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)")}let d=r.messageFont();gh(r)(a.label.text,n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+h,a.label.width,a.label.height,{fill:s},d),a.techn&&a.techn.text!==""&&(d=r.messageFont(),gh(r)("["+a.techn.text+"]",n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+r.messageFontSize+5+h,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:s,"font-style":"italic"},d))}},"drawRels"),n9e=o(function(t,e,r){let n=t.append("g"),i=e.bgColor?e.bgColor:"none",a=e.borderColor?e.borderColor:"#444444",s=e.fontColor?e.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(l={"stroke-width":1});let u={x:e.x,y:e.y,fill:i,stroke:a,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};V9(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,gh(r)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},h),e.type&&e.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,gh(r)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},h)),e.descr&&e.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,gh(r)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},h))},"drawBoundary"),i9e=o(function(t,e,r){let n=e.bgColor?e.bgColor:r[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:r[e.typeC4Shape.text+"_border_color"],a=e.fontColor?e.fontColor:"#FFFFFF",s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let l=t.append("g");l.attr("class","person-man");let u=Na();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=e.x,u.y=e.y,u.fill=n,u.width=e.width,u.height=e.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},V9(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2));break}let h=d9e(r,e.typeC4Shape.text);switch(l.append("text").attr("fill",a).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":cee(l,48,48,e.x+e.width/2-24,e.y+e.image.Y,s);break}let f=r[e.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,gh(r)(e.label.text,l,e.x,e.y+e.label.Y,e.width,e.height,{fill:a},f),f=r[e.typeC4Shape.text+"Font"](),f.fontColor=a,e.techn&&e.techn?.text!==""?gh(r)(e.techn.text,l,e.x,e.y+e.techn.Y,e.width,e.height,{fill:a,"font-style":"italic"},f):e.type&&e.type.text!==""&&gh(r)(e.type.text,l,e.x,e.y+e.type.Y,e.width,e.height,{fill:a,"font-style":"italic"},f),e.descr&&e.descr.text!==""&&(f=r.personFont(),f.fontColor=a,gh(r)(e.descr.text,l,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},f)),e.height},"drawC4Shape"),a9e=o(function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),s9e=o(function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),o9e=o(function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),l9e=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),c9e=o(function(t){t.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),u9e=o(function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),h9e=o(function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertDynamicNumber"),f9e=o(function(t){let r=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),r.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),d9e=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"getC4ShapeFont"),gh=(function(){function t(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(i);n(d,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(nt.lineBreakRegex);for(let v=0;v{"use strict";p9e=typeof global=="object"&&global&&global.Object===Object&&global,j5=p9e});var m9e,g9e,Ei,ul=I(()=>{"use strict";q9();m9e=typeof self=="object"&&self&&self.Object===Object&&self,g9e=j5||m9e||Function("return this")(),Ei=g9e});var y9e,da,r0=I(()=>{"use strict";ul();y9e=Ei.Symbol,da=y9e});function b9e(t){var e=v9e.call(t,Ax),r=t[Ax];try{t[Ax]=void 0;var n=!0}catch{}var i=x9e.call(t);return n&&(e?t[Ax]=r:delete t[Ax]),i}var hee,v9e,x9e,Ax,fee,dee=I(()=>{"use strict";r0();hee=Object.prototype,v9e=hee.hasOwnProperty,x9e=hee.toString,Ax=da?da.toStringTag:void 0;o(b9e,"getRawTag");fee=b9e});function k9e(t){return w9e.call(t)}var T9e,w9e,pee,mee=I(()=>{"use strict";T9e=Object.prototype,w9e=T9e.toString;o(k9e,"objectToString");pee=k9e});function C9e(t){return t==null?t===void 0?E9e:S9e:gee&&gee in Object(t)?fee(t):pee(t)}var S9e,E9e,gee,Ma,yh=I(()=>{"use strict";r0();dee();mee();S9e="[object Null]",E9e="[object Undefined]",gee=da?da.toStringTag:void 0;o(C9e,"baseGetTag");Ma=C9e});function A9e(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var In,Oo=I(()=>{"use strict";o(A9e,"isObject");In=A9e});function N9e(t){if(!In(t))return!1;var e=Ma(t);return e==D9e||e==R9e||e==_9e||e==L9e}var _9e,D9e,R9e,L9e,$i,_x=I(()=>{"use strict";yh();Oo();_9e="[object AsyncFunction]",D9e="[object Function]",R9e="[object GeneratorFunction]",L9e="[object Proxy]";o(N9e,"isFunction");$i=N9e});var M9e,X5,yee=I(()=>{"use strict";ul();M9e=Ei["__core-js_shared__"],X5=M9e});function I9e(t){return!!vee&&vee in t}var vee,xee,bee=I(()=>{"use strict";yee();vee=(function(){var t=/[^.]+$/.exec(X5&&X5.keys&&X5.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();o(I9e,"isMasked");xee=I9e});function B9e(t){if(t!=null){try{return P9e.call(t)}catch{}try{return t+""}catch{}}return""}var O9e,P9e,vh,U9=I(()=>{"use strict";O9e=Function.prototype,P9e=O9e.toString;o(B9e,"toSource");vh=B9e});function W9e(t){if(!In(t)||xee(t))return!1;var e=$i(t)?U9e:$9e;return e.test(vh(t))}var F9e,$9e,z9e,G9e,V9e,q9e,U9e,Tee,wee=I(()=>{"use strict";_x();bee();Oo();U9();F9e=/[\\^$.*+?()[\]{}|]/g,$9e=/^\[object .+?Constructor\]$/,z9e=Function.prototype,G9e=Object.prototype,V9e=z9e.toString,q9e=G9e.hasOwnProperty,U9e=RegExp("^"+V9e.call(q9e).replace(F9e,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(W9e,"baseIsNative");Tee=W9e});function H9e(t,e){return t?.[e]}var kee,See=I(()=>{"use strict";o(H9e,"getValue");kee=H9e});function Y9e(t,e){var r=kee(t,e);return Tee(r)?r:void 0}var Zs,Mf=I(()=>{"use strict";wee();See();o(Y9e,"getNative");Zs=Y9e});var j9e,xh,Dx=I(()=>{"use strict";Mf();j9e=Zs(Object,"create"),xh=j9e});function X9e(){this.__data__=xh?xh(null):{},this.size=0}var Eee,Cee=I(()=>{"use strict";Dx();o(X9e,"hashClear");Eee=X9e});function K9e(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var Aee,_ee=I(()=>{"use strict";o(K9e,"hashDelete");Aee=K9e});function eNe(t){var e=this.__data__;if(xh){var r=e[t];return r===Q9e?void 0:r}return J9e.call(e,t)?e[t]:void 0}var Q9e,Z9e,J9e,Dee,Ree=I(()=>{"use strict";Dx();Q9e="__lodash_hash_undefined__",Z9e=Object.prototype,J9e=Z9e.hasOwnProperty;o(eNe,"hashGet");Dee=eNe});function nNe(t){var e=this.__data__;return xh?e[t]!==void 0:rNe.call(e,t)}var tNe,rNe,Lee,Nee=I(()=>{"use strict";Dx();tNe=Object.prototype,rNe=tNe.hasOwnProperty;o(nNe,"hashHas");Lee=nNe});function aNe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=xh&&e===void 0?iNe:e,this}var iNe,Mee,Iee=I(()=>{"use strict";Dx();iNe="__lodash_hash_undefined__";o(aNe,"hashSet");Mee=aNe});function $g(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";Cee();_ee();Ree();Nee();Iee();o($g,"Hash");$g.prototype.clear=Eee;$g.prototype.delete=Aee;$g.prototype.get=Dee;$g.prototype.has=Lee;$g.prototype.set=Mee;W9=$g});function sNe(){this.__data__=[],this.size=0}var Pee,Bee=I(()=>{"use strict";o(sNe,"listCacheClear");Pee=sNe});function oNe(t,e){return t===e||t!==t&&e!==e}var hl,n0=I(()=>{"use strict";o(oNe,"eq");hl=oNe});function lNe(t,e){for(var r=t.length;r--;)if(hl(t[r][0],e))return r;return-1}var If,Rx=I(()=>{"use strict";n0();o(lNe,"assocIndexOf");If=lNe});function hNe(t){var e=this.__data__,r=If(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():uNe.call(e,r,1),--this.size,!0}var cNe,uNe,Fee,$ee=I(()=>{"use strict";Rx();cNe=Array.prototype,uNe=cNe.splice;o(hNe,"listCacheDelete");Fee=hNe});function fNe(t){var e=this.__data__,r=If(e,t);return r<0?void 0:e[r][1]}var zee,Gee=I(()=>{"use strict";Rx();o(fNe,"listCacheGet");zee=fNe});function dNe(t){return If(this.__data__,t)>-1}var Vee,qee=I(()=>{"use strict";Rx();o(dNe,"listCacheHas");Vee=dNe});function pNe(t,e){var r=this.__data__,n=If(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var Uee,Wee=I(()=>{"use strict";Rx();o(pNe,"listCacheSet");Uee=pNe});function zg(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";Bee();$ee();Gee();qee();Wee();o(zg,"ListCache");zg.prototype.clear=Pee;zg.prototype.delete=Fee;zg.prototype.get=zee;zg.prototype.has=Vee;zg.prototype.set=Uee;Of=zg});var mNe,Pf,K5=I(()=>{"use strict";Mf();ul();mNe=Zs(Ei,"Map"),Pf=mNe});function gNe(){this.size=0,this.__data__={hash:new W9,map:new(Pf||Of),string:new W9}}var Hee,Yee=I(()=>{"use strict";Oee();Lx();K5();o(gNe,"mapCacheClear");Hee=gNe});function yNe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var jee,Xee=I(()=>{"use strict";o(yNe,"isKeyable");jee=yNe});function vNe(t,e){var r=t.__data__;return jee(e)?r[typeof e=="string"?"string":"hash"]:r.map}var Bf,Nx=I(()=>{"use strict";Xee();o(vNe,"getMapData");Bf=vNe});function xNe(t){var e=Bf(this,t).delete(t);return this.size-=e?1:0,e}var Kee,Qee=I(()=>{"use strict";Nx();o(xNe,"mapCacheDelete");Kee=xNe});function bNe(t){return Bf(this,t).get(t)}var Zee,Jee=I(()=>{"use strict";Nx();o(bNe,"mapCacheGet");Zee=bNe});function TNe(t){return Bf(this,t).has(t)}var ete,tte=I(()=>{"use strict";Nx();o(TNe,"mapCacheHas");ete=TNe});function wNe(t,e){var r=Bf(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var rte,nte=I(()=>{"use strict";Nx();o(wNe,"mapCacheSet");rte=wNe});function Gg(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";Yee();Qee();Jee();tte();nte();o(Gg,"MapCache");Gg.prototype.clear=Hee;Gg.prototype.delete=Kee;Gg.prototype.get=Zee;Gg.prototype.has=ete;Gg.prototype.set=rte;i0=Gg});function H9(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(kNe);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=t.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(H9.Cache||i0),r}var kNe,Vg,Y9=I(()=>{"use strict";Q5();kNe="Expected a function";o(H9,"memoize");H9.Cache=i0;Vg=H9});function SNe(){this.__data__=new Of,this.size=0}var ite,ate=I(()=>{"use strict";Lx();o(SNe,"stackClear");ite=SNe});function ENe(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var ste,ote=I(()=>{"use strict";o(ENe,"stackDelete");ste=ENe});function CNe(t){return this.__data__.get(t)}var lte,cte=I(()=>{"use strict";o(CNe,"stackGet");lte=CNe});function ANe(t){return this.__data__.has(t)}var ute,hte=I(()=>{"use strict";o(ANe,"stackHas");ute=ANe});function DNe(t,e){var r=this.__data__;if(r instanceof Of){var n=r.__data__;if(!Pf||n.length<_Ne-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new i0(n)}return r.set(t,e),this.size=r.size,this}var _Ne,fte,dte=I(()=>{"use strict";Lx();K5();Q5();_Ne=200;o(DNe,"stackSet");fte=DNe});function qg(t){var e=this.__data__=new Of(t);this.size=e.size}var Qc,Mx=I(()=>{"use strict";Lx();ate();ote();cte();hte();dte();o(qg,"Stack");qg.prototype.clear=ite;qg.prototype.delete=ste;qg.prototype.get=lte;qg.prototype.has=ute;qg.prototype.set=fte;Qc=qg});var RNe,Ug,j9=I(()=>{"use strict";Mf();RNe=(function(){try{var t=Zs(Object,"defineProperty");return t({},"",{}),t}catch{}})(),Ug=RNe});function LNe(t,e,r){e=="__proto__"&&Ug?Ug(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var Zc,Wg=I(()=>{"use strict";j9();o(LNe,"baseAssignValue");Zc=LNe});function NNe(t,e,r){(r!==void 0&&!hl(t[e],r)||r===void 0&&!(e in t))&&Zc(t,e,r)}var Ix,X9=I(()=>{"use strict";Wg();n0();o(NNe,"assignMergeValue");Ix=NNe});function MNe(t){return function(e,r,n){for(var i=-1,a=Object(e),s=n(e),l=s.length;l--;){var u=s[t?l:++i];if(r(a[u],u,a)===!1)break}return e}}var pte,mte=I(()=>{"use strict";o(MNe,"createBaseFor");pte=MNe});var INe,Hg,Z5=I(()=>{"use strict";mte();INe=pte(),Hg=INe});function PNe(t,e){if(e)return t.slice();var r=t.length,n=vte?vte(r):new t.constructor(r);return t.copy(n),n}var xte,gte,ONe,yte,vte,J5,K9=I(()=>{"use strict";ul();xte=typeof exports=="object"&&exports&&!exports.nodeType&&exports,gte=xte&&typeof module=="object"&&module&&!module.nodeType&&module,ONe=gte&>e.exports===xte,yte=ONe?Ei.Buffer:void 0,vte=yte?yte.allocUnsafe:void 0;o(PNe,"cloneBuffer");J5=PNe});var BNe,Yg,Q9=I(()=>{"use strict";ul();BNe=Ei.Uint8Array,Yg=BNe});function FNe(t){var e=new t.constructor(t.byteLength);return new Yg(e).set(new Yg(t)),e}var jg,ek=I(()=>{"use strict";Q9();o(FNe,"cloneArrayBuffer");jg=FNe});function $Ne(t,e){var r=e?jg(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var tk,Z9=I(()=>{"use strict";ek();o($Ne,"cloneTypedArray");tk=$Ne});function zNe(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r{"use strict";o(zNe,"copyArray");rk=zNe});var bte,GNe,Tte,wte=I(()=>{"use strict";Oo();bte=Object.create,GNe=(function(){function t(){}return o(t,"object"),function(e){if(!In(e))return{};if(bte)return bte(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}})(),Tte=GNe});function VNe(t,e){return function(r){return t(e(r))}}var nk,eN=I(()=>{"use strict";o(VNe,"overArg");nk=VNe});var qNe,Xg,ik=I(()=>{"use strict";eN();qNe=nk(Object.getPrototypeOf,Object),Xg=qNe});function WNe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||UNe;return t===r}var UNe,Jc,Kg=I(()=>{"use strict";UNe=Object.prototype;o(WNe,"isPrototype");Jc=WNe});function HNe(t){return typeof t.constructor=="function"&&!Jc(t)?Tte(Xg(t)):{}}var ak,tN=I(()=>{"use strict";wte();ik();Kg();o(HNe,"initCloneObject");ak=HNe});function YNe(t){return t!=null&&typeof t=="object"}var gi,fl=I(()=>{"use strict";o(YNe,"isObjectLike");gi=YNe});function XNe(t){return gi(t)&&Ma(t)==jNe}var jNe,rN,kte=I(()=>{"use strict";yh();fl();jNe="[object Arguments]";o(XNe,"baseIsArguments");rN=XNe});var Ste,KNe,QNe,ZNe,oc,Qg=I(()=>{"use strict";kte();fl();Ste=Object.prototype,KNe=Ste.hasOwnProperty,QNe=Ste.propertyIsEnumerable,ZNe=rN((function(){return arguments})())?rN:function(t){return gi(t)&&KNe.call(t,"callee")&&!QNe.call(t,"callee")},oc=ZNe});var JNe,zt,ni=I(()=>{"use strict";JNe=Array.isArray,zt=JNe});function tMe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=eMe}var eMe,Zg,sk=I(()=>{"use strict";eMe=9007199254740991;o(tMe,"isLength");Zg=tMe});function rMe(t){return t!=null&&Zg(t.length)&&!$i(t)}var Ci,dl=I(()=>{"use strict";_x();sk();o(rMe,"isArrayLike");Ci=rMe});function nMe(t){return gi(t)&&Ci(t)}var a0,ok=I(()=>{"use strict";dl();fl();o(nMe,"isArrayLikeObject");a0=nMe});function iMe(){return!1}var Ete,Cte=I(()=>{"use strict";o(iMe,"stubFalse");Ete=iMe});var Dte,Ate,aMe,_te,sMe,oMe,lc,Jg=I(()=>{"use strict";ul();Cte();Dte=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ate=Dte&&typeof module=="object"&&module&&!module.nodeType&&module,aMe=Ate&&Ate.exports===Dte,_te=aMe?Ei.Buffer:void 0,sMe=_te?_te.isBuffer:void 0,oMe=sMe||Ete,lc=oMe});function dMe(t){if(!gi(t)||Ma(t)!=lMe)return!1;var e=Xg(t);if(e===null)return!0;var r=hMe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&Rte.call(r)==fMe}var lMe,cMe,uMe,Rte,hMe,fMe,Lte,Nte=I(()=>{"use strict";yh();ik();fl();lMe="[object Object]",cMe=Function.prototype,uMe=Object.prototype,Rte=cMe.toString,hMe=uMe.hasOwnProperty,fMe=Rte.call(Object);o(dMe,"isPlainObject");Lte=dMe});function FMe(t){return gi(t)&&Zg(t.length)&&!!Kn[Ma(t)]}var pMe,mMe,gMe,yMe,vMe,xMe,bMe,TMe,wMe,kMe,SMe,EMe,CMe,AMe,_Me,DMe,RMe,LMe,NMe,MMe,IMe,OMe,PMe,BMe,Kn,Mte,Ite=I(()=>{"use strict";yh();sk();fl();pMe="[object Arguments]",mMe="[object Array]",gMe="[object Boolean]",yMe="[object Date]",vMe="[object Error]",xMe="[object Function]",bMe="[object Map]",TMe="[object Number]",wMe="[object Object]",kMe="[object RegExp]",SMe="[object Set]",EMe="[object String]",CMe="[object WeakMap]",AMe="[object ArrayBuffer]",_Me="[object DataView]",DMe="[object Float32Array]",RMe="[object Float64Array]",LMe="[object Int8Array]",NMe="[object Int16Array]",MMe="[object Int32Array]",IMe="[object Uint8Array]",OMe="[object Uint8ClampedArray]",PMe="[object Uint16Array]",BMe="[object Uint32Array]",Kn={};Kn[DMe]=Kn[RMe]=Kn[LMe]=Kn[NMe]=Kn[MMe]=Kn[IMe]=Kn[OMe]=Kn[PMe]=Kn[BMe]=!0;Kn[pMe]=Kn[mMe]=Kn[AMe]=Kn[gMe]=Kn[_Me]=Kn[yMe]=Kn[vMe]=Kn[xMe]=Kn[bMe]=Kn[TMe]=Kn[wMe]=Kn[kMe]=Kn[SMe]=Kn[EMe]=Kn[CMe]=!1;o(FMe,"baseIsTypedArray");Mte=FMe});function $Me(t){return function(e){return t(e)}}var pl,s0=I(()=>{"use strict";o($Me,"baseUnary");pl=$Me});var Ote,Ox,zMe,nN,GMe,ml,Px=I(()=>{"use strict";q9();Ote=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ox=Ote&&typeof module=="object"&&module&&!module.nodeType&&module,zMe=Ox&&Ox.exports===Ote,nN=zMe&&j5.process,GMe=(function(){try{var t=Ox&&Ox.require&&Ox.require("util").types;return t||nN&&nN.binding&&nN.binding("util")}catch{}})(),ml=GMe});var Pte,VMe,Ff,Bx=I(()=>{"use strict";Ite();s0();Px();Pte=ml&&ml.isTypedArray,VMe=Pte?pl(Pte):Mte,Ff=VMe});function qMe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var Fx,iN=I(()=>{"use strict";o(qMe,"safeGet");Fx=qMe});function HMe(t,e,r){var n=t[e];(!(WMe.call(t,e)&&hl(n,r))||r===void 0&&!(e in t))&&Zc(t,e,r)}var UMe,WMe,eu,e1=I(()=>{"use strict";Wg();n0();UMe=Object.prototype,WMe=UMe.hasOwnProperty;o(HMe,"assignValue");eu=HMe});function YMe(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a{"use strict";e1();Wg();o(YMe,"copyObject");gl=YMe});function jMe(t,e){for(var r=-1,n=Array(t);++r{"use strict";o(jMe,"baseTimes");Bte=jMe});function QMe(t,e){var r=typeof t;return e=e??XMe,!!e&&(r=="number"||r!="symbol"&&KMe.test(t))&&t>-1&&t%1==0&&t{"use strict";XMe=9007199254740991,KMe=/^(?:0|[1-9]\d*)$/;o(QMe,"isIndex");$f=QMe});function eIe(t,e){var r=zt(t),n=!r&&oc(t),i=!r&&!n&&lc(t),a=!r&&!n&&!i&&Ff(t),s=r||n||i||a,l=s?Bte(t.length,String):[],u=l.length;for(var h in t)(e||JMe.call(t,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||$f(h,u)))&&l.push(h);return l}var ZMe,JMe,lk,aN=I(()=>{"use strict";Fte();Qg();ni();Jg();$x();Bx();ZMe=Object.prototype,JMe=ZMe.hasOwnProperty;o(eIe,"arrayLikeKeys");lk=eIe});function tIe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var $te,zte=I(()=>{"use strict";o(tIe,"nativeKeysIn");$te=tIe});function iIe(t){if(!In(t))return $te(t);var e=Jc(t),r=[];for(var n in t)n=="constructor"&&(e||!nIe.call(t,n))||r.push(n);return r}var rIe,nIe,Gte,Vte=I(()=>{"use strict";Oo();Kg();zte();rIe=Object.prototype,nIe=rIe.hasOwnProperty;o(iIe,"baseKeysIn");Gte=iIe});function aIe(t){return Ci(t)?lk(t,!0):Gte(t)}var Js,zf=I(()=>{"use strict";aN();Vte();dl();o(aIe,"keysIn");Js=aIe});function sIe(t){return gl(t,Js(t))}var qte,Ute=I(()=>{"use strict";o0();zf();o(sIe,"toPlainObject");qte=sIe});function oIe(t,e,r,n,i,a,s){var l=Fx(t,r),u=Fx(e,r),h=s.get(u);if(h){Ix(t,r,h);return}var f=a?a(l,u,r+"",t,e,s):void 0,d=f===void 0;if(d){var p=zt(u),m=!p&&lc(u),g=!p&&!m&&Ff(u);f=u,p||m||g?zt(l)?f=l:a0(l)?f=rk(l):m?(d=!1,f=J5(u,!0)):g?(d=!1,f=tk(u,!0)):f=[]:Lte(u)||oc(u)?(f=l,oc(l)?f=qte(l):(!In(l)||$i(l))&&(f=ak(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),Ix(t,r,f)}var Wte,Hte=I(()=>{"use strict";X9();K9();Z9();J9();tN();Qg();ni();ok();Jg();_x();Oo();Nte();Bx();iN();Ute();o(oIe,"baseMergeDeep");Wte=oIe});function Yte(t,e,r,n,i){t!==e&&Hg(e,function(a,s){if(i||(i=new Qc),In(a))Wte(t,e,s,r,Yte,n,i);else{var l=n?n(Fx(t,s),a,s+"",t,e,i):void 0;l===void 0&&(l=a),Ix(t,s,l)}},Js)}var jte,Xte=I(()=>{"use strict";Mx();X9();Z5();Hte();Oo();zf();iN();o(Yte,"baseMerge");jte=Yte});function lIe(t){return t}var pa,bh=I(()=>{"use strict";o(lIe,"identity");pa=lIe});function cIe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var Kte,Qte=I(()=>{"use strict";o(cIe,"apply");Kte=cIe});function uIe(t,e,r){return e=Zte(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=Zte(n.length-e,0),s=Array(a);++i{"use strict";Qte();Zte=Math.max;o(uIe,"overRest");ck=uIe});function hIe(t){return function(){return t}}var eo,oN=I(()=>{"use strict";o(hIe,"constant");eo=hIe});var fIe,Jte,ere=I(()=>{"use strict";oN();j9();bh();fIe=Ug?function(t,e){return Ug(t,"toString",{configurable:!0,enumerable:!1,value:eo(e),writable:!0})}:pa,Jte=fIe});function gIe(t){var e=0,r=0;return function(){var n=mIe(),i=pIe-(n-r);if(r=n,i>0){if(++e>=dIe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var dIe,pIe,mIe,tre,rre=I(()=>{"use strict";dIe=800,pIe=16,mIe=Date.now;o(gIe,"shortOut");tre=gIe});var yIe,uk,lN=I(()=>{"use strict";ere();rre();yIe=tre(Jte),uk=yIe});function vIe(t,e){return uk(ck(t,e,pa),t+"")}var tu,t1=I(()=>{"use strict";bh();sN();lN();o(vIe,"baseRest");tu=vIe});function xIe(t,e,r){if(!In(r))return!1;var n=typeof e;return(n=="number"?Ci(r)&&$f(e,r.length):n=="string"&&e in r)?hl(r[e],t):!1}var Po,l0=I(()=>{"use strict";n0();dl();$x();Oo();o(xIe,"isIterateeCall");Po=xIe});function bIe(t){return tu(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,s&&Po(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++n{"use strict";t1();l0();o(bIe,"createAssigner");hk=bIe});var TIe,Gf,uN=I(()=>{"use strict";Xte();cN();TIe=hk(function(t,e,r){jte(t,e,r)}),Gf=TIe});function dN(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return wIe[r]??e}function CIe(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,are.sanitizeUrl)(r):r}function lre(t,e){return!t||!e?0:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function _Ie(t){let e,r=0;t.forEach(i=>{r+=lre(i,e),e=i});let n=r/2;return pN(t,n)}function DIe(t){return t.length===1?t[0]:_Ie(t)}function LIe(t,e,r){let n=structuredClone(r);X.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();let i=25+t,a=pN(n,i),s=10+t*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return e==="start_left"?(u.x=Math.sin(l+Math.PI)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*s+(n[0].y+a.y)/2):e==="end_right"?(u.x=Math.sin(l-Math.PI)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*s+(n[0].y+a.y)/2-5):e==="end_left"?(u.x=Math.sin(l)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2-5):(u.x=Math.sin(l)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2),u}function mN(t){let e="",r="";for(let n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}function NIe(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;iMath.round(parseFloat(a)).toString());return i.includes(r.toString())||i.includes(n.toString())}var are,fN,wIe,kIe,SIe,sre,ore,EIe,AIe,nre,pN,RIe,ire,gN,yN,MIe,IIe,vN,OIe,xN,hN,fk,PIe,BIe,ru,jt,cre,ga,nu,sr=I(()=>{"use strict";are=Aa(Fg(),1);kr();wr();e_();gt();Op();tg();Y9();uN();ww();fN="\u200B",wIe={curveBasis:cl,curveBasisClosed:I5,curveBasisOpen:O5,curveBumpX:fx,curveBumpY:dx,curveBundle:R9,curveCardinalClosed:L9,curveCardinalOpen:M9,curveCardinal:yx,curveCatmullRomClosed:O9,curveCatmullRomOpen:P9,curveCatmullRom:bx,curveLinear:mh,curveLinearClosed:z5,curveMonotoneX:Tx,curveMonotoneY:wx,curveNatural:Pg,curveStep:Bg,curveStepAfter:Sx,curveStepBefore:kx},kIe=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,SIe=o(function(t,e){let r=sre(t,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);ng(s),n=$n(n,[...s])}else n=r.args;if(!n)return;let i=hg(t,e),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),sre=o(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${kIe.source})(?=[}][%]{2}).* +`,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),X.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n,i=[];for(;(n=Ip.exec(t))!==null;)if(n.index===Ip.lastIndex&&Ip.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){let a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return X.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},"detectDirective"),ore=o(function(t){return t.replace(Ip,"")},"removeDirectives"),EIe=o(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");o(dN,"interpolateToCurve");o(CIe,"formatUrl");AIe=o((t,...e)=>{let r=t.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s{let r=Math.pow(10,e);return Math.round(t*r)/r},"roundNumber"),pN=o((t,e)=>{let r,n=e;for(let i of t){if(r){let a=lre(i,r);if(a===0)return r;if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:nre((1-s)*r.x+s*i.x,5),y:nre((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),RIe=o((t,e,r)=>{X.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=pN(e,25),a=t?10:5,s=Math.atan2(e[0].y-i.y,e[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(e[0].x+i.x)/2,l.y=-Math.cos(s)*a+(e[0].y+i.y)/2,l},"calcCardinalityPosition");o(LIe,"calcTerminalLabelPosition");o(mN,"getStylesFromArray");ire=0,gN=o(()=>(ire++,"id-"+Math.random().toString(36).substr(2,12)+"-"+ire),"generateId");o(NIe,"makeRandomHex");yN=o(t=>NIe(t.length),"random"),MIe=o(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),IIe=o(function(t,e){let r=e.text.replace(nt.lineBreakRegex," "),[,n]=ru(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);let a=i.append("tspan");return a.attr("x",e.x+e.textMargin*2),a.attr("fill",e.fill),a.text(r),i},"drawSimpleText"),vN=Vg((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),nt.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=ma(`${s} `,r),h=ma(a,r);if(u>e){let{hyphenatedStrings:p,remainingWord:m}=OIe(s,e,"-",r);i.push(a,...p),a=m}else h+u>=e?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");l+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),OIe=Vg((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...t],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(ma(h,n)>=e){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(dk,"calculateTextHeight");o(ma,"calculateTextWidth");xN=Vg((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,a]=ru(r),s=["sans-serif",n],l=t.split(nt.lineBreakRegex),u=[],h=He("body");if(!h.remove)return{width:0,height:0,lineHeight:0};let f=h.append("svg");for(let p of s){let m=0,g={width:0,height:0,lineHeight:0};for(let y of l){let v=MIe();v.text=y||fN;let x=IIe(f,v).style("font-size",a).style("font-weight",i).style("font-family",p),b=(x._groups||x)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,b.width)),m=Math.round(b.height),g.height+=m,g.lineHeight=Math.round(Math.max(g.lineHeight,m))}u.push(g)}f.remove();let d=isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1;return u[d]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),hN=class{constructor(e=!1,r){this.count=0;this.count=r?r.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},PIe=o(function(t){return fk=fk||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),fk.innerHTML=t,unescape(fk.textContent)},"entityDecode");o(bN,"isDetailedError");BIe=o((t,e,r,n)=>{if(!n)return;let i=t.node()?.getBBox();i&&t.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},"insertTitle"),ru=o(t=>{if(typeof t=="number")return[t,t+"px"];let e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},"parseFontSize");o(Qn,"cleanAndMerge");jt={assignWithDepth:$n,wrapLabel:vN,calculateTextHeight:dk,calculateTextWidth:ma,calculateTextDimensions:xN,cleanAndMerge:Qn,detectInit:SIe,detectDirective:sre,isSubstringInArray:EIe,interpolateToCurve:dN,calcLabelPosition:DIe,calcCardinalityPosition:RIe,calcTerminalLabelPosition:LIe,formatUrl:CIe,getStylesFromArray:mN,generateId:gN,random:yN,runFunc:AIe,entityDecode:PIe,insertTitle:BIe,isLabelCoordinateInPath:FIe,parseFontSize:ru,InitIDGenerator:hN},cre=o(function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),e},"encodeEntities"),ga=o(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),nu=o((t,e,{counter:r=0,prefix:n,suffix:i},a)=>a||`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");o(On,"handleUndefinedAttr");o(FIe,"isLabelCoordinateInPath")});function cc(t,e,r,n,i){if(!e[t].width)if(r)e[t].text=vN(e[t].text,i,n),e[t].textLines=e[t].text.split(nt.lineBreakRegex).length,e[t].width=i,e[t].height=dk(e[t].text,n);else{let a=e[t].text.split(nt.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(let l of a)e[t].width=Math.max(ma(l,n),e[t].width),s=dk(l,n),e[t].height=e[t].height+s}}function pre(t,e,r,n,i){let a=new yk(i);a.data.widthLimit=r.data.widthLimit/Math.min(TN,n.length);for(let[s,l]of n.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);let h=l.wrap&&Xt.wrap,f=pk(Xt);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",cc("label",l,h,f,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&l.type.text!==""){l.type.text="["+l.type.text+"]";let g=pk(Xt);cc("type",l,h,g,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height}if(l.descr&&l.descr.text!==""){let g=pk(Xt);g.fontSize=g.fontSize-2,cc("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%TN===0){let g=r.data.startx+Xt.diagramMarginX,y=r.data.stopy+Xt.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+Xt.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;let d=i.db.getC4ShapeArray(l.alias),p=i.db.getC4ShapeKeys(l.alias);p.length>0&&dre(a,t,d,p),e=l.alias;let m=i.db.getBoundaries(e);m.length>0&&pre(t,e,a,m,i),l.alias!=="global"&&fre(t,l,a),r.data.stopy=Math.max(a.data.stopy+Xt.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+Xt.c4ShapeMargin,r.data.stopx),mk=Math.max(mk,r.data.stopx),gk=Math.max(gk,r.data.stopy)}}var mk,gk,hre,TN,Xt,yk,wN,zx,pk,$Ie,fre,dre,to,ure,zIe,GIe,VIe,kN,mre=I(()=>{"use strict";kr();uee();gt();sD();wr();gD();Qt();tg();sr();Fi();mk=0,gk=0,hre=4,TN=2;E2.yy=L2;Xt={},yk=class{static{o(this,"Bounds")}constructor(e){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,wN(e.db.getConfig())}setData(e,r,n,i){this.nextData.startx=this.data.startx=e,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(e,r,n,i){e[r]===void 0?e[r]=n:e[r]=i(n,e[r])}insert(e){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+e.margin:this.nextData.stopx+e.margin*2,n=r+e.width,i=this.nextData.starty+e.margin*2,a=i+e.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>hre)&&(r=this.nextData.startx+e.margin+Xt.nextLinePaddingX,i=this.nextData.stopy+e.margin*2,this.nextData.stopx=n=r+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+e.height,this.nextData.cnt=1),e.x=r,e.y=i,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",i,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",i,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(e){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},wN(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},wN=o(function(t){$n(Xt,t),t.fontFamily&&(Xt.personFontFamily=Xt.systemFontFamily=Xt.messageFontFamily=t.fontFamily),t.fontSize&&(Xt.personFontSize=Xt.systemFontSize=Xt.messageFontSize=t.fontSize),t.fontWeight&&(Xt.personFontWeight=Xt.systemFontWeight=Xt.messageFontWeight=t.fontWeight)},"setConf"),zx=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"c4ShapeFont"),pk=o(t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),"boundaryFont"),$Ie=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont");o(cc,"calcC4ShapeTextWH");fre=o(function(t,e,r){e.x=r.data.startx,e.y=r.data.starty,e.width=r.data.stopx-r.data.startx,e.height=r.data.stopy-r.data.starty,e.label.y=Xt.c4ShapeMargin-35;let n=e.wrap&&Xt.wrap,i=pk(Xt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=ma(e.label.text,i);cc("label",e,n,i,a),sc.drawBoundary(t,e,Xt)},"drawBoundary"),dre=o(function(t,e,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=zx(Xt,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=ma("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=Xt.c4ShapePadding,i=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height;break}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height);let u=s.wrap&&Xt.wrap,h=Xt.width-Xt.c4ShapePadding*2,f=zx(Xt,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",cc("label",s,u,f,h),s.label.Y=i+8,i=s.label.Y+s.label.height,s.type&&s.type.text!==""){s.type.text="["+s.type.text+"]";let m=zx(Xt,s.typeC4Shape.text);cc("type",s,u,m,h),s.type.Y=i+5,i=s.type.Y+s.type.height}else if(s.techn&&s.techn.text!==""){s.techn.text="["+s.techn.text+"]";let m=zx(Xt,s.techn.text);cc("techn",s,u,m,h),s.techn.Y=i+5,i=s.techn.Y+s.techn.height}let d=i,p=s.label.width;if(s.descr&&s.descr.text!==""){let m=zx(Xt,s.typeC4Shape.text);cc("descr",s,u,m,h),s.descr.Y=i+20,i=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),d=i-s.descr.textLines*5}p=p+Xt.c4ShapePadding,s.width=Math.max(s.width||Xt.width,p,Xt.width),s.height=Math.max(s.height||Xt.height,d,Xt.height),s.margin=s.margin||Xt.c4ShapeMargin,t.insert(s),sc.drawC4Shape(e,s,Xt)}t.bumpLastMargin(Xt.c4ShapeMargin)},"drawC4ShapeArray"),to=class{static{o(this,"Point")}constructor(e,r){this.x=e,this.y=r}},ure=o(function(t,e){let r=t.x,n=t.y,i=e.x,a=e.y,s=r+t.width/2,l=n+t.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=t.height/t.width,p=null;return n==a&&ri?p=new to(r,l):r==i&&na&&(p=new to(s,n)),r>i&&n=f?p=new to(r,l+f*t.width/2):p=new to(s-u/h*t.height/2,n+t.height):r=f?p=new to(r+t.width,l+f*t.width/2):p=new to(s+u/h*t.height/2,n+t.height):ra?d>=f?p=new to(r+t.width,l-f*t.width/2):p=new to(s+t.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new to(r,l-t.width/2*f):p=new to(s-t.height/2*u/h,n)),p},"getIntersectPoint"),zIe=o(function(t,e){let r={x:0,y:0};r.x=e.x+e.width/2,r.y=e.y+e.height/2;let n=ure(t,r);r.x=t.x+t.width/2,r.y=t.y+t.height/2;let i=ure(e,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),GIe=o(function(t,e,r,n){let i=0;for(let a of e){i=i+1;let s=a.wrap&&Xt.wrap,l=$Ie(Xt);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=ma(a.label.text,l);cc("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=ma(a.techn.text,l),cc("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=ma(a.descr.text,l),cc("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=zIe(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}sc.drawRels(t,e,Xt)},"drawRels");o(pre,"drawInsideBoundary");VIe=o(function(t,e,r,n){Xt=xe().c4;let i=xe().securityLevel,a;i==="sandbox"&&(a=He("#i"+e));let s=i==="sandbox"?He(a.nodes()[0].contentDocument.body):He("body"),l=n.db;n.db.setWrap(Xt.wrap),hre=l.getC4ShapeInRow(),TN=l.getC4BoundaryInRow(),X.debug(`C:${JSON.stringify(Xt,null,2)}`);let u=i==="sandbox"?s.select(`[id="${e}"]`):He(`[id="${e}"]`);sc.insertComputerIcon(u),sc.insertDatabaseIcon(u),sc.insertClockIcon(u);let h=new yk(n);h.setData(Xt.diagramMarginX,Xt.diagramMarginX,Xt.diagramMarginY,Xt.diagramMarginY),h.data.widthLimit=screen.availWidth,mk=Xt.diagramMarginX,gk=Xt.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundaries("");pre(u,"",h,d,n),sc.insertArrowHead(u),sc.insertArrowEnd(u),sc.insertArrowCrossHead(u),sc.insertArrowFilledHead(u),GIe(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=mk,h.data.stopy=gk;let p=h.data,g=p.stopy-p.starty+2*Xt.diagramMarginY,v=p.stopx-p.startx+2*Xt.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*Xt.diagramMarginX).attr("y",p.starty+Xt.diagramMarginY),Sn(u,g,v,Xt.useMaxWidth);let x=f?60:0;u.attr("viewBox",p.startx-Xt.diagramMarginX+" -"+(Xt.diagramMarginY+x)+" "+v+" "+(g+x)),X.debug("models:",p)},"draw"),kN={drawPersonOrSystemArray:dre,drawBoundary:fre,setConf:wN,draw:VIe}});var qIe,gre,yre=I(()=>{"use strict";qIe=o(t=>`.person { stroke: ${t.personBorder}; fill: ${t.personBkg}; } -`,"getStyles"),NQ=F_e});var IQ={};dr(IQ,{diagram:()=>$_e});var $_e,OQ=M(()=>{"use strict";RA();GA();RQ();MQ();$_e={parser:sH,db:lv,renderer:XL,styles:NQ,init:o(({c4:t,wrap:e})=>{XL.setConf(t),lv.setWrap(e)},"init")}});function ZQ(t){return typeof t>"u"||t===null}function U_e(t){return typeof t=="object"&&t!==null}function H_e(t){return Array.isArray(t)?t:ZQ(t)?[]:[t]}function q_e(t,e){var r,n,i,a;if(e)for(a=Object.keys(e),r=0,n=a.length;rUIe});var UIe,xre=I(()=>{"use strict";sD();gD();mre();yre();UIe={parser:Uj,db:L2,renderer:kN,styles:gre,init:o(({c4:t,wrap:e})=>{kN.setConf(t),L2.setWrap(e)},"init")}});function Pre(t){return typeof t>"u"||t===null}function jIe(t){return typeof t=="object"&&t!==null}function XIe(t){return Array.isArray(t)?t:Pre(t)?[]:[t]}function KIe(t,e){var r,n,i,a;if(e)for(a=Object.keys(e),r=0,n=a.length;rl&&(a=" ... ",e=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+t.slice(e,r).replace(/\t/g,"\u2192")+s,pos:n-e+a.length}}function KL(t,e){return Pi.repeat(" ",e-t.length)+t}function eDe(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(t.buffer);)i.push(a.index),n.push(a.index+a[0].length),t.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(t.line+e.linesAfter,i.length).toString().length,d=e.maxLength-(e.indent+f+3);for(u=1;u<=e.linesBefore&&!(s-u<0);u++)h=jL(t.buffer,n[s-u],i[s-u],t.position-(n[s]-n[s-u]),d),l=Pi.repeat(" ",e.indent)+KL((t.line-u+1).toString(),f)+" | "+h.str+` -`+l;for(h=jL(t.buffer,n[s],i[s],t.position,d),l+=Pi.repeat(" ",e.indent)+KL((t.line+1).toString(),f)+" | "+h.str+` -`,l+=Pi.repeat("-",e.indent+f+3+h.pos)+`^ -`,u=1;u<=e.linesAfter&&!(s+u>=i.length);u++)h=jL(t.buffer,n[s+u],i[s+u],t.position-(n[s]-n[s+u]),d),l+=Pi.repeat(" ",e.indent)+KL((t.line+u+1).toString(),f)+" | "+h.str+` -`;return l.replace(/\n$/,"")}function iDe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function aDe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(rDe.indexOf(r)===-1)throw new Is('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=iDe(e.styleAliases||null),nDe.indexOf(this.kind)===-1)throw new Is('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}function BQ(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function sDe(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(o(n,"collectType"),e=0,r=arguments.length;e=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}function RDe(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Pi.isNegativeZero(t))return"-0.0";return r=t.toString(10),LDe.test(r)?r.replace("e",".e"):r}function NDe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Pi.isNegativeZero(t))}function ODe(t){return t===null?!1:tZ.exec(t)!==null||rZ.exec(t)!==null}function PDe(t){var e,r,n,i,a,s,l,u=0,h=null,f,d,p;if(e=tZ.exec(t),e===null&&(e=rZ.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(r,n,i));if(a=+e[4],s=+e[5],l=+e[6],e[7]){for(u=e[7].slice(0,3);u.length<3;)u+="0";u=+u}return e[9]&&(f=+e[10],d=+(e[11]||0),h=(f*60+d)*6e4,e[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function BDe(t){return t.toISOString()}function $De(t){return t==="<<"||t===null}function GDe(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=n9;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function VDe(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=n9,s=0,l=[];for(e=0;e>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(e));return r=i%4*6,r===0?(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)):r===18?(l.push(s>>10&255),l.push(s>>2&255)):r===12&&l.push(s>>4&255),new Uint8Array(l)}function UDe(t){var e="",r=0,n,i,a=t.length,s=n9;for(n=0;n>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]),r=(r<<8)+t[n];return i=a%3,i===0?(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]):i===2?(e+=s[r>>10&63],e+=s[r>>4&63],e+=s[r<<2&63],e+=s[64]):i===1&&(e+=s[r>>2&63],e+=s[r<<4&63],e+=s[64],e+=s[64]),e}function HDe(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function XDe(t){if(t===null)return!0;var e=[],r,n,i,a,s,l=t;for(r=0,n=l.length;r>10)+55296,(t-65536&1023)+56320)}function dLe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||nZ,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function uZ(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=tDe(r),new Is(e,r)}function Zt(t,e){throw uZ(t,e)}function BT(t,e){t.onWarning&&t.onWarning.call(null,uZ(t,e))}function Yh(t,e,r,n){var i,a,s,l;if(e1&&(t.result+=Pi.repeat(` -`,e-1))}function pLe(t,e,r){var n,i,a,s,l,u,h,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),Os(m)||bm(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=t.input.charCodeAt(t.position+1),Os(i)||r&&bm(i)))return!1;for(t.kind="scalar",t.result="",a=s=t.position,l=!1;m!==0;){if(m===58){if(i=t.input.charCodeAt(t.position+1),Os(i)||r&&bm(i))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),Os(n))break}else{if(t.position===t.lineStart&&zT(t)||r&&bm(m))break;if(bc(m))if(u=t.line,h=t.lineStart,f=t.lineIndent,Ci(t,!1,-1),t.lineIndent>=e){l=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=s,t.line=u,t.lineStart=h,t.lineIndent=f;break}}l&&(Yh(t,a,s,!1),a9(t,t.line-u),a=s=t.position,l=!1),Yd(m)||(s=t.position+1),m=t.input.charCodeAt(++t.position)}return Yh(t,a,s,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function mLe(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Yh(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else bc(r)?(Yh(t,n,i,!0),a9(t,Ci(t,!1,e)),n=i=t.position):t.position===t.lineStart&&zT(t)?Zt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);Zt(t,"unexpected end of the stream within a single quoted scalar")}function gLe(t,e){var r,n,i,a,s,l;if(l=t.input.charCodeAt(t.position),l!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(l=t.input.charCodeAt(t.position))!==0;){if(l===34)return Yh(t,r,t.position,!0),t.position++,!0;if(l===92){if(Yh(t,r,t.position,!0),l=t.input.charCodeAt(++t.position),bc(l))Ci(t,!1,e);else if(l<256&&lZ[l])t.result+=cZ[l],t.position++;else if((s=uLe(l))>0){for(i=s,a=0;i>0;i--)l=t.input.charCodeAt(++t.position),(s=cLe(l))>=0?a=(a<<4)+s:Zt(t,"expected hexadecimal character");t.result+=fLe(a),t.position++}else Zt(t,"unknown escape sequence");r=n=t.position}else bc(l)?(Yh(t,r,n,!0),a9(t,Ci(t,!1,e)),r=n=t.position):t.position===t.lineStart&&zT(t)?Zt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}Zt(t,"unexpected end of the stream within a double quoted scalar")}function yLe(t,e){var r=!0,n,i,a,s=t.tag,l,u=t.anchor,h,f,d,p,m,g=Object.create(null),y,v,x,b;if(b=t.input.charCodeAt(t.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=l),b=t.input.charCodeAt(++t.position);b!==0;){if(Ci(t,!0,e),b=t.input.charCodeAt(t.position),b===f)return t.position++,t.tag=s,t.anchor=u,t.kind=m?"mapping":"sequence",t.result=l,!0;r?b===44&&Zt(t,"expected the node content, but found ','"):Zt(t,"missed comma between flow collection entries"),v=y=x=null,d=p=!1,b===63&&(h=t.input.charCodeAt(t.position+1),Os(h)&&(d=p=!0,t.position++,Ci(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,wm(t,e,OT,!1,!0),v=t.tag,y=t.result,Ci(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),Ci(t,!0,e),wm(t,e,OT,!1,!0),x=t.result),m?Tm(t,l,g,v,y,x,n,i,a):d?l.push(Tm(t,null,g,v,y,x,n,i,a)):l.push(y),Ci(t,!0,e),b=t.input.charCodeAt(t.position),b===44?(r=!0,b=t.input.charCodeAt(++t.position)):r=!1}Zt(t,"unexpected end of the stream within a flow collection")}function vLe(t,e){var r,n,i=QL,a=!1,s=!1,l=e,u=0,h=!1,f,d;if(d=t.input.charCodeAt(t.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)QL===i?i=d===43?FQ:aLe:Zt(t,"repeat of a chomping mode identifier");else if((f=hLe(d))>=0)f===0?Zt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?Zt(t,"repeat of an indentation width identifier"):(l=e+f-1,s=!0);else break;if(Yd(d)){do d=t.input.charCodeAt(++t.position);while(Yd(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!bc(d)&&d!==0)}for(;d!==0;){for(i9(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!s||t.lineIndentl&&(l=t.lineIndent),bc(d)){u++;continue}if(t.lineIndente)&&u!==0)Zt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(v&&(s=t.line,l=t.lineStart,u=t.position),wm(t,e,PT,!0,i)&&(v?g=t.result:y=t.result),v||(Tm(t,d,p,m,g,y,s,l,u),m=g=y=null),Ci(t,!0,-1),b=t.input.charCodeAt(t.position)),(t.line===a||t.lineIndent>e)&&b!==0)Zt(t,"bad indentation of a mapping entry");else if(t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d"),t.result!==null&&g.kind!==t.kind&&Zt(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Zt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||f}function kLe(t){var e=t.position,r,n,i,a=!1,s;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(s=t.input.charCodeAt(t.position))!==0&&(Ci(t,!0,-1),s=t.input.charCodeAt(t.position),!(t.lineIndent>0||s!==37));){for(a=!0,s=t.input.charCodeAt(++t.position),r=t.position;s!==0&&!Os(s);)s=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),i=[],n.length<1&&Zt(t,"directive name must not be less than one character in length");s!==0;){for(;Yd(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!bc(s));break}if(bc(s))break;for(r=t.position;s!==0&&!Os(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&i9(t),Xh.call(GQ,n)?GQ[n](t,n,i):BT(t,'unknown document directive "'+n+'"')}if(Ci(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,Ci(t,!0,-1)):a&&Zt(t,"directives end mark is expected"),wm(t,t.lineIndent-1,PT,!1,!0),Ci(t,!0,-1),t.checkLineBreaks&&oLe.test(t.input.slice(e,t.position))&&BT(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&zT(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Ci(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=hZ(t,r);if(typeof e!="function")return n;for(var i=0,a=n.length;il&&(a=" ... ",e=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+t.slice(e,r).replace(/\t/g,"\u2192")+s,pos:n-e+a.length}}function EN(t,e){return Qi.repeat(" ",e-t.length)+t}function aOe(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(t.buffer);)i.push(a.index),n.push(a.index+a[0].length),t.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(t.line+e.linesAfter,i.length).toString().length,d=e.maxLength-(e.indent+f+3);for(u=1;u<=e.linesBefore&&!(s-u<0);u++)h=SN(t.buffer,n[s-u],i[s-u],t.position-(n[s]-n[s-u]),d),l=Qi.repeat(" ",e.indent)+EN((t.line-u+1).toString(),f)+" | "+h.str+` +`+l;for(h=SN(t.buffer,n[s],i[s],t.position,d),l+=Qi.repeat(" ",e.indent)+EN((t.line+1).toString(),f)+" | "+h.str+` +`,l+=Qi.repeat("-",e.indent+f+3+h.pos)+`^ +`,u=1;u<=e.linesAfter&&!(s+u>=i.length);u++)h=SN(t.buffer,n[s+u],i[s+u],t.position-(n[s]-n[s+u]),d),l+=Qi.repeat(" ",e.indent)+EN((t.line+u+1).toString(),f)+" | "+h.str+` +`;return l.replace(/\n$/,"")}function cOe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function uOe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(oOe.indexOf(r)===-1)throw new ro('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=cOe(e.styleAliases||null),lOe.indexOf(this.kind)===-1)throw new ro('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}function Tre(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function hOe(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(o(n,"collectType"),e=0,r=arguments.length;e=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}function POe(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Qi.isNegativeZero(t))return"-0.0";return r=t.toString(10),OOe.test(r)?r.replace("e",".e"):r}function BOe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Qi.isNegativeZero(t))}function zOe(t){return t===null?!1:$re.exec(t)!==null||zre.exec(t)!==null}function GOe(t){var e,r,n,i,a,s,l,u=0,h=null,f,d,p;if(e=$re.exec(t),e===null&&(e=zre.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(r,n,i));if(a=+e[4],s=+e[5],l=+e[6],e[7]){for(u=e[7].slice(0,3);u.length<3;)u+="0";u=+u}return e[9]&&(f=+e[10],d=+(e[11]||0),h=(f*60+d)*6e4,e[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function VOe(t){return t.toISOString()}function UOe(t){return t==="<<"||t===null}function HOe(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=NN;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function YOe(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=NN,s=0,l=[];for(e=0;e>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(e));return r=i%4*6,r===0?(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)):r===18?(l.push(s>>10&255),l.push(s>>2&255)):r===12&&l.push(s>>4&255),new Uint8Array(l)}function jOe(t){var e="",r=0,n,i,a=t.length,s=NN;for(n=0;n>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]),r=(r<<8)+t[n];return i=a%3,i===0?(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]):i===2?(e+=s[r>>10&63],e+=s[r>>4&63],e+=s[r<<2&63],e+=s[64]):i===1&&(e+=s[r>>2&63],e+=s[r<<4&63],e+=s[64],e+=s[64]),e}function XOe(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function JOe(t){if(t===null)return!0;var e=[],r,n,i,a,s,l=t;for(r=0,n=l.length;r>10)+55296,(t-65536&1023)+56320)}function vPe(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||Gre,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function jre(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=sOe(r),new ro(e,r)}function rr(t,e){throw jre(t,e)}function bk(t,e){t.onWarning&&t.onWarning.call(null,jre(t,e))}function Vf(t,e,r,n){var i,a,s,l;if(e1&&(t.result+=Qi.repeat(` +`,e-1))}function xPe(t,e,r){var n,i,a,s,l,u,h,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),no(m)||n1(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=t.input.charCodeAt(t.position+1),no(i)||r&&n1(i)))return!1;for(t.kind="scalar",t.result="",a=s=t.position,l=!1;m!==0;){if(m===58){if(i=t.input.charCodeAt(t.position+1),no(i)||r&&n1(i))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),no(n))break}else{if(t.position===t.lineStart&&kk(t)||r&&n1(m))break;if(iu(m))if(u=t.line,h=t.lineStart,f=t.lineIndent,zi(t,!1,-1),t.lineIndent>=e){l=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=s,t.line=u,t.lineStart=h,t.lineIndent=f;break}}l&&(Vf(t,a,s,!1),IN(t,t.line-u),a=s=t.position,l=!1),u0(m)||(s=t.position+1),m=t.input.charCodeAt(++t.position)}return Vf(t,a,s,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function bPe(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Vf(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else iu(r)?(Vf(t,n,i,!0),IN(t,zi(t,!1,e)),n=i=t.position):t.position===t.lineStart&&kk(t)?rr(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);rr(t,"unexpected end of the stream within a single quoted scalar")}function TPe(t,e){var r,n,i,a,s,l;if(l=t.input.charCodeAt(t.position),l!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(l=t.input.charCodeAt(t.position))!==0;){if(l===34)return Vf(t,r,t.position,!0),t.position++,!0;if(l===92){if(Vf(t,r,t.position,!0),l=t.input.charCodeAt(++t.position),iu(l))zi(t,!1,e);else if(l<256&&Hre[l])t.result+=Yre[l],t.position++;else if((s=mPe(l))>0){for(i=s,a=0;i>0;i--)l=t.input.charCodeAt(++t.position),(s=pPe(l))>=0?a=(a<<4)+s:rr(t,"expected hexadecimal character");t.result+=yPe(a),t.position++}else rr(t,"unknown escape sequence");r=n=t.position}else iu(l)?(Vf(t,r,n,!0),IN(t,zi(t,!1,e)),r=n=t.position):t.position===t.lineStart&&kk(t)?rr(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}rr(t,"unexpected end of the stream within a double quoted scalar")}function wPe(t,e){var r=!0,n,i,a,s=t.tag,l,u=t.anchor,h,f,d,p,m,g=Object.create(null),y,v,x,b;if(b=t.input.charCodeAt(t.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=l),b=t.input.charCodeAt(++t.position);b!==0;){if(zi(t,!0,e),b=t.input.charCodeAt(t.position),b===f)return t.position++,t.tag=s,t.anchor=u,t.kind=m?"mapping":"sequence",t.result=l,!0;r?b===44&&rr(t,"expected the node content, but found ','"):rr(t,"missed comma between flow collection entries"),v=y=x=null,d=p=!1,b===63&&(h=t.input.charCodeAt(t.position+1),no(h)&&(d=p=!0,t.position++,zi(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,a1(t,e,vk,!1,!0),v=t.tag,y=t.result,zi(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),zi(t,!0,e),a1(t,e,vk,!1,!0),x=t.result),m?i1(t,l,g,v,y,x,n,i,a):d?l.push(i1(t,null,g,v,y,x,n,i,a)):l.push(y),zi(t,!0,e),b=t.input.charCodeAt(t.position),b===44?(r=!0,b=t.input.charCodeAt(++t.position)):r=!1}rr(t,"unexpected end of the stream within a flow collection")}function kPe(t,e){var r,n,i=CN,a=!1,s=!1,l=e,u=0,h=!1,f,d;if(d=t.input.charCodeAt(t.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)CN===i?i=d===43?wre:uPe:rr(t,"repeat of a chomping mode identifier");else if((f=gPe(d))>=0)f===0?rr(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?rr(t,"repeat of an indentation width identifier"):(l=e+f-1,s=!0);else break;if(u0(d)){do d=t.input.charCodeAt(++t.position);while(u0(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!iu(d)&&d!==0)}for(;d!==0;){for(MN(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!s||t.lineIndentl&&(l=t.lineIndent),iu(d)){u++;continue}if(t.lineIndente)&&u!==0)rr(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(v&&(s=t.line,l=t.lineStart,u=t.position),a1(t,e,xk,!0,i)&&(v?g=t.result:y=t.result),v||(i1(t,d,p,m,g,y,s,l,u),m=g=y=null),zi(t,!0,-1),b=t.input.charCodeAt(t.position)),(t.line===a||t.lineIndent>e)&&b!==0)rr(t,"bad indentation of a mapping entry");else if(t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d"),t.result!==null&&g.kind!==t.kind&&rr(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):rr(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||f}function _Pe(t){var e=t.position,r,n,i,a=!1,s;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(s=t.input.charCodeAt(t.position))!==0&&(zi(t,!0,-1),s=t.input.charCodeAt(t.position),!(t.lineIndent>0||s!==37));){for(a=!0,s=t.input.charCodeAt(++t.position),r=t.position;s!==0&&!no(s);)s=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),i=[],n.length<1&&rr(t,"directive name must not be less than one character in length");s!==0;){for(;u0(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!iu(s));break}if(iu(s))break;for(r=t.position;s!==0&&!no(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&MN(t),qf.call(Ere,n)?Ere[n](t,n,i):bk(t,'unknown document directive "'+n+'"')}if(zi(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,zi(t,!0,-1)):a&&rr(t,"directives end mark is expected"),a1(t,t.lineIndent-1,xk,!1,!0),zi(t,!0,-1),t.checkLineBreaks&&fPe.test(t.input.slice(e,t.position))&&bk(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&kk(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,zi(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=Xre(t,r);if(typeof e!="function")return n;for(var i=0,a=n.length;i=55296&&r<=56319&&e+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function bZ(t){var e=/^\n* /;return e.test(t)}function JLe(t,e,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=QLe(v2(t,0))&&ZLe(v2(t,t.length-1));if(e||s)for(u=0;u=65536?u+=2:u++){if(h=v2(t,u),!w2(h))return xm;y=y&&WQ(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=v2(t,u),h===b2)d=!0,m&&(p=p||u-g-1>n&&t[g+1]!==" ",g=u);else if(!w2(h))return xm;y=y&&WQ(h,f,l),f=h}p=p||m&&u-g-1>n&&t[g+1]!==" "}return!d&&!p?y&&!s&&!i(t)?TZ:a===T2?xm:t9:r>9&&bZ(t)?xm:s?a===T2?xm:t9:p?kZ:wZ}function e9e(t,e,r,n,i){t.dump=(function(){if(e.length===0)return t.quotingType===T2?'""':"''";if(!t.noCompatMode&&(HLe.indexOf(e)!==-1||qLe.test(e)))return t.quotingType===T2?'"'+e+'"':"'"+e+"'";var a=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),l=n||t.flowLevel>-1&&r>=t.flowLevel;function u(h){return KLe(t,h)}switch(o(u,"testAmbiguity"),JLe(e,l,t.indent,s,u,t.quotingType,t.forceQuotes&&!n,i)){case TZ:return e;case t9:return"'"+e.replace(/'/g,"''")+"'";case wZ:return"|"+YQ(e,t.indent)+XQ(HQ(e,a));case kZ:return">"+YQ(e,t.indent)+XQ(HQ(t9e(e,s),a));case xm:return'"'+r9e(e)+'"';default:throw new Is("impossible error: invalid scalar style")}})()}function YQ(t,e){var r=bZ(t)?String(e):"",n=t[t.length-1]===` +`&&(a+=r),a+=s;return a}function DN(t,e){return` +`+Qi.repeat(" ",t.indent*e)}function tBe(t,e){var r,n,i;for(r=0,n=t.implicitTypes.length;r=55296&&r<=56319&&e+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function ine(t){var e=/^\n* /;return e.test(t)}function iBe(t,e,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=rBe(Gx(t,0))&&nBe(Gx(t,t.length-1));if(e||s)for(u=0;u=65536?u+=2:u++){if(h=Gx(t,u),!Wx(h))return r1;y=y&&Rre(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=Gx(t,u),h===qx)d=!0,m&&(p=p||u-g-1>n&&t[g+1]!==" ",g=u);else if(!Wx(h))return r1;y=y&&Rre(h,f,l),f=h}p=p||m&&u-g-1>n&&t[g+1]!==" "}return!d&&!p?y&&!s&&!i(t)?ane:a===Ux?r1:RN:r>9&&ine(t)?r1:s?a===Ux?r1:RN:p?one:sne}function aBe(t,e,r,n,i){t.dump=(function(){if(e.length===0)return t.quotingType===Ux?'""':"''";if(!t.noCompatMode&&(XPe.indexOf(e)!==-1||KPe.test(e)))return t.quotingType===Ux?'"'+e+'"':"'"+e+"'";var a=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),l=n||t.flowLevel>-1&&r>=t.flowLevel;function u(h){return tBe(t,h)}switch(o(u,"testAmbiguity"),iBe(e,l,t.indent,s,u,t.quotingType,t.forceQuotes&&!n,i)){case ane:return e;case RN:return"'"+e.replace(/'/g,"''")+"'";case sne:return"|"+Lre(e,t.indent)+Nre(_re(e,a));case one:return">"+Lre(e,t.indent)+Nre(_re(sBe(e,s),a));case r1:return'"'+oBe(e)+'"';default:throw new ro("impossible error: invalid scalar style")}})()}function Lre(t,e){var r=ine(t)?String(e):"",n=t[t.length-1]===` `,i=n&&(t[t.length-2]===` `||t===` `),a=i?"+":n?"":"-";return r+a+` -`}function XQ(t){return t[t.length-1]===` -`?t.slice(0,-1):t}function t9e(t,e){for(var r=/(\n+)([^\n]*)/g,n=(function(){var h=t.indexOf(` -`);return h=h!==-1?h:t.length,r.lastIndex=h,jQ(t.slice(0,h),e)})(),i=t[0]===` +`}function Nre(t){return t[t.length-1]===` +`?t.slice(0,-1):t}function sBe(t,e){for(var r=/(\n+)([^\n]*)/g,n=(function(){var h=t.indexOf(` +`);return h=h!==-1?h:t.length,r.lastIndex=h,Mre(t.slice(0,h),e)})(),i=t[0]===` `||t[0]===" ",a,s;s=r.exec(t);){var l=s[1],u=s[2];a=u[0]===" ",n+=l+(!i&&!a&&u!==""?` -`:"")+jQ(u,e),i=a}return n}function jQ(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(t);)l=n.index,l-i>e&&(a=s>i?s:l,u+=` +`:"")+Mre(u,e),i=a}return n}function Mre(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(t);)l=n.index,l-i>e&&(a=s>i?s:l,u+=` `+t.slice(i,a),i=a+1),s=l;return u+=` `,t.length-i>e&&s>i?u+=t.slice(i,s)+` -`+t.slice(s+1):u+=t.slice(i),u.slice(1)}function r9e(t){for(var e="",r=0,n,i=0;i=65536?i+=2:i++)r=v2(t,i),n=Oa[r],!n&&w2(r)?(e+=t[i],r>=65536&&(e+=t[i+1])):e+=n||YLe(r);return e}function n9e(t,e,r){var n="",i=t.tag,a,s,l;for(a=0,s=r.length;a"u"&&Nu(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=i,t.dump="["+n+"]"}function KQ(t,e,r,n){var i="",a=t.tag,s,l,u;for(s=0,l=r.length;s"u"&&Nu(t,e+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=e9(t,e)),t.dump&&b2===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=a,t.dump=i||"[]"}function i9e(t,e,r){var n="",i=t.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s1024&&(f+="? "),f+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Nu(t,e,h,!1,!1)&&(f+=t.dump,n+=f));t.tag=i,t.dump="{"+n+"}"}function a9e(t,e,r,n){var i="",a=t.tag,s=Object.keys(r),l,u,h,f,d,p;if(t.sortKeys===!0)s.sort();else if(typeof t.sortKeys=="function")s.sort(t.sortKeys);else if(t.sortKeys)throw new Is("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(t.dump&&b2===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=e9(t,e)),Nu(t,e+1,f,!0,d)&&(t.dump&&b2===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=a,t.dump=i||"{}"}function QQ(t,e,r){var n,i,a,s,l,u;for(i=r?t.explicitTypes:t.implicitTypes,a=0,s=i.length;a tag resolver accepts not "'+u+'" style');t.dump=n}return!0}return!1}function Nu(t,e,r,n,i,a,s){t.tag=null,t.dump=r,QQ(t,r,!1)||QQ(t,r,!0);var l=dZ.call(t.dump),u=n,h;n&&(n=t.flowLevel<0||t.flowLevel>e);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=t.duplicates.indexOf(r),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&e>0)&&(i=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(f&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(t.dump).length!==0?(a9e(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(i9e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!s&&e>0?KQ(t,e-1,t.dump,i):KQ(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(n9e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object String]")t.tag!=="?"&&e9e(t,t.dump,e,a,u);else{if(l==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new Is("unacceptable kind of an object to dump "+l)}t.tag!==null&&t.tag!=="?"&&(h=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",t.dump=h+" "+t.dump)}return!0}function s9e(t,e){var r=[],n=[],i,a;for(r9(t,r,n),i=0,a=n.length;i{"use strict";o(ZQ,"isNothing");o(U_e,"isObject");o(H_e,"toArray");o(q_e,"extend");o(W_e,"repeat");o(Y_e,"isNegativeZero");X_e=ZQ,j_e=U_e,K_e=H_e,Q_e=W_e,Z_e=Y_e,J_e=q_e,Pi={isNothing:X_e,isObject:j_e,toArray:K_e,repeat:Q_e,isNegativeZero:Z_e,extend:J_e};o(JQ,"formatError");o(x2,"YAMLException$1");x2.prototype=Object.create(Error.prototype);x2.prototype.constructor=x2;x2.prototype.toString=o(function(e){return this.name+": "+JQ(this,e)},"toString");Is=x2;o(jL,"getLine");o(KL,"padStart");o(eDe,"makeSnippet");tDe=eDe,rDe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],nDe=["scalar","sequence","mapping"];o(iDe,"compileStyleAliases");o(aDe,"Type$1");Ia=aDe;o(BQ,"compileList");o(sDe,"compileMap");o(ZL,"Schema$1");ZL.prototype.extend=o(function(e){var r=[],n=[];if(e instanceof Ia)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(r=r.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new Is("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Ia))throw new Is("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Is("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new Is("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(a){if(!(a instanceof Ia))throw new Is("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(ZL.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=BQ(i,"implicit"),i.compiledExplicit=BQ(i,"explicit"),i.compiledTypeMap=sDe(i.compiledImplicit,i.compiledExplicit),i},"extend");oDe=ZL,lDe=new Ia("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(t){return t!==null?t:""},"construct")}),cDe=new Ia("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(t){return t!==null?t:[]},"construct")}),uDe=new Ia("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(t){return t!==null?t:{}},"construct")}),hDe=new oDe({explicit:[lDe,cDe,uDe]});o(fDe,"resolveYamlNull");o(dDe,"constructYamlNull");o(pDe,"isNull");mDe=new Ia("tag:yaml.org,2002:null",{kind:"scalar",resolve:fDe,construct:dDe,predicate:pDe,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});o(gDe,"resolveYamlBoolean");o(yDe,"constructYamlBoolean");o(vDe,"isBoolean");xDe=new Ia("tag:yaml.org,2002:bool",{kind:"scalar",resolve:gDe,construct:yDe,predicate:vDe,represent:{lowercase:o(function(t){return t?"true":"false"},"lowercase"),uppercase:o(function(t){return t?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(t){return t?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(bDe,"isHexCode");o(TDe,"isOctCode");o(wDe,"isDecCode");o(kDe,"resolveYamlInteger");o(EDe,"constructYamlInteger");o(SDe,"isInteger");CDe=new Ia("tag:yaml.org,2002:int",{kind:"scalar",resolve:kDe,construct:EDe,predicate:SDe,represent:{binary:o(function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},"binary"),octal:o(function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},"octal"),decimal:o(function(t){return t.toString(10)},"decimal"),hexadecimal:o(function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),ADe=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(_De,"resolveYamlFloat");o(DDe,"constructYamlFloat");LDe=/^[-+]?[0-9]+e/;o(RDe,"representYamlFloat");o(NDe,"isFloat");MDe=new Ia("tag:yaml.org,2002:float",{kind:"scalar",resolve:_De,construct:DDe,predicate:NDe,represent:RDe,defaultStyle:"lowercase"}),eZ=hDe.extend({implicit:[mDe,xDe,CDe,MDe]}),IDe=eZ,tZ=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),rZ=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");o(ODe,"resolveYamlTimestamp");o(PDe,"constructYamlTimestamp");o(BDe,"representYamlTimestamp");FDe=new Ia("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:ODe,construct:PDe,instanceOf:Date,represent:BDe});o($De,"resolveYamlMerge");zDe=new Ia("tag:yaml.org,2002:merge",{kind:"scalar",resolve:$De}),n9=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;o(GDe,"resolveYamlBinary");o(VDe,"constructYamlBinary");o(UDe,"representYamlBinary");o(HDe,"isBinary");qDe=new Ia("tag:yaml.org,2002:binary",{kind:"scalar",resolve:GDe,construct:VDe,predicate:HDe,represent:UDe}),WDe=Object.prototype.hasOwnProperty,YDe=Object.prototype.toString;o(XDe,"resolveYamlOmap");o(jDe,"constructYamlOmap");KDe=new Ia("tag:yaml.org,2002:omap",{kind:"sequence",resolve:XDe,construct:jDe}),QDe=Object.prototype.toString;o(ZDe,"resolveYamlPairs");o(JDe,"constructYamlPairs");eLe=new Ia("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:ZDe,construct:JDe}),tLe=Object.prototype.hasOwnProperty;o(rLe,"resolveYamlSet");o(nLe,"constructYamlSet");iLe=new Ia("tag:yaml.org,2002:set",{kind:"mapping",resolve:rLe,construct:nLe}),nZ=IDe.extend({implicit:[FDe,zDe],explicit:[qDe,KDe,eLe,iLe]}),Xh=Object.prototype.hasOwnProperty,OT=1,iZ=2,aZ=3,PT=4,QL=1,aLe=2,FQ=3,sLe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,oLe=/[\x85\u2028\u2029]/,lLe=/[,\[\]\{\}]/,sZ=/^(?:!|!!|![a-z\-]+!)$/i,oZ=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o($Q,"_class");o(bc,"is_EOL");o(Yd,"is_WHITE_SPACE");o(Os,"is_WS_OR_EOL");o(bm,"is_FLOW_INDICATOR");o(cLe,"fromHexCode");o(uLe,"escapedHexLen");o(hLe,"fromDecimalCode");o(zQ,"simpleEscapeSequence");o(fLe,"charFromCodepoint");lZ=new Array(256),cZ=new Array(256);for(Wd=0;Wd<256;Wd++)lZ[Wd]=zQ(Wd)?1:0,cZ[Wd]=zQ(Wd);o(dLe,"State$1");o(uZ,"generateError");o(Zt,"throwError");o(BT,"throwWarning");GQ={YAML:o(function(e,r,n){var i,a,s;e.version!==null&&Zt(e,"duplication of %YAML directive"),n.length!==1&&Zt(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&Zt(e,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&Zt(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,s!==1&&s!==2&&BT(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(e,r,n){var i,a;n.length!==2&&Zt(e,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],sZ.test(i)||Zt(e,"ill-formed tag handle (first argument) of the TAG directive"),Xh.call(e.tagMap,i)&&Zt(e,'there is a previously declared suffix for "'+i+'" tag handle'),oZ.test(a)||Zt(e,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Zt(e,"tag prefix is malformed: "+a)}e.tagMap[i]=a},"handleTagDirective")};o(Yh,"captureSegment");o(VQ,"mergeMappings");o(Tm,"storeMappingPair");o(i9,"readLineBreak");o(Ci,"skipSeparationSpace");o(zT,"testDocumentSeparator");o(a9,"writeFoldedLines");o(pLe,"readPlainScalar");o(mLe,"readSingleQuotedScalar");o(gLe,"readDoubleQuotedScalar");o(yLe,"readFlowCollection");o(vLe,"readBlockScalar");o(UQ,"readBlockSequence");o(xLe,"readBlockMapping");o(bLe,"readTagProperty");o(TLe,"readAnchorProperty");o(wLe,"readAlias");o(wm,"composeNode");o(kLe,"readDocument");o(hZ,"loadDocuments");o(ELe,"loadAll$1");o(SLe,"load$1");CLe=ELe,ALe=SLe,fZ={loadAll:CLe,load:ALe},dZ=Object.prototype.toString,pZ=Object.prototype.hasOwnProperty,s9=65279,_Le=9,b2=10,DLe=13,LLe=32,RLe=33,NLe=34,JL=35,MLe=37,ILe=38,OLe=39,PLe=42,mZ=44,BLe=45,FT=58,FLe=61,$Le=62,zLe=63,GLe=64,gZ=91,yZ=93,VLe=96,vZ=123,ULe=124,xZ=125,Oa={};Oa[0]="\\0";Oa[7]="\\a";Oa[8]="\\b";Oa[9]="\\t";Oa[10]="\\n";Oa[11]="\\v";Oa[12]="\\f";Oa[13]="\\r";Oa[27]="\\e";Oa[34]='\\"';Oa[92]="\\\\";Oa[133]="\\N";Oa[160]="\\_";Oa[8232]="\\L";Oa[8233]="\\P";HLe=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],qLe=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(WLe,"compileStyleMap");o(YLe,"encodeHex");XLe=1,T2=2;o(jLe,"State");o(HQ,"indentString");o(e9,"generateNextLine");o(KLe,"testImplicitResolving");o($T,"isWhitespace");o(w2,"isPrintable");o(qQ,"isNsCharOrWhitespace");o(WQ,"isPlainSafe");o(QLe,"isPlainSafeFirst");o(ZLe,"isPlainSafeLast");o(v2,"codePointAt");o(bZ,"needIndentIndicator");TZ=1,t9=2,wZ=3,kZ=4,xm=5;o(JLe,"chooseScalarStyle");o(e9e,"writeScalar");o(YQ,"blockHeader");o(XQ,"dropEndingNewline");o(t9e,"foldString");o(jQ,"foldLine");o(r9e,"escapeString");o(n9e,"writeFlowSequence");o(KQ,"writeBlockSequence");o(i9e,"writeFlowMapping");o(a9e,"writeBlockMapping");o(QQ,"detectType");o(Nu,"writeNode");o(s9e,"getDuplicateReferences");o(r9,"inspectNode");o(o9e,"dump$1");l9e=o9e,c9e={dump:l9e};o(o9,"renamed");jh=eZ,Kh=fZ.load,N6t=fZ.loadAll,M6t=c9e.dump,I6t=o9("safeLoad","load"),O6t=o9("safeLoadAll","loadAll"),P6t=o9("safeDump","dump")});function h9(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function DZ(t){jd=t}function on(t,e=""){let r=typeof t=="string"?t:t.source,n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(as.caret,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,e),"getRegex")};return n}function Tc(t,e){if(e){if(as.escapeTest.test(t))return t.replace(as.escapeReplace,SZ)}else if(as.escapeTestNoEncode.test(t))return t.replace(as.escapeReplaceNoEncode,SZ);return t}function CZ(t){try{t=encodeURI(t).replace(as.percentDecode,"%")}catch{return null}return t}function AZ(t,e){let r=t.replace(as.findPipe,(a,s,l)=>{let u=!1,h=s;for(;--h>=0&&l[h]==="\\";)u=!u;return u?"|":" |"}),n=r.split(as.splitPipe),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length0?-2:-1}function _Z(t,e,r,n,i){let a=e.href,s=e.title||null,l=t[1].replace(i.other.outputLinkReplace,"$1");n.state.inLink=!0;let u={type:t[0].charAt(0)==="!"?"image":"link",raw:r,href:a,title:s,text:l,tokens:n.inlineTokens(l)};return n.state.inLink=!1,u}function H9e(t,e,r){let n=t.match(r.other.indentCodeCompensation);if(n===null)return e;let i=n[1];return e.split(` +`+t.slice(s+1):u+=t.slice(i),u.slice(1)}function oBe(t){for(var e="",r=0,n,i=0;i=65536?i+=2:i++)r=Gx(t,i),n=es[r],!n&&Wx(r)?(e+=t[i],r>=65536&&(e+=t[i+1])):e+=n||ZPe(r);return e}function lBe(t,e,r){var n="",i=t.tag,a,s,l;for(a=0,s=r.length;a"u"&&Th(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=i,t.dump="["+n+"]"}function Ire(t,e,r,n){var i="",a=t.tag,s,l,u;for(s=0,l=r.length;s"u"&&Th(t,e+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=DN(t,e)),t.dump&&qx===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=a,t.dump=i||"[]"}function cBe(t,e,r){var n="",i=t.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s1024&&(f+="? "),f+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Th(t,e,h,!1,!1)&&(f+=t.dump,n+=f));t.tag=i,t.dump="{"+n+"}"}function uBe(t,e,r,n){var i="",a=t.tag,s=Object.keys(r),l,u,h,f,d,p;if(t.sortKeys===!0)s.sort();else if(typeof t.sortKeys=="function")s.sort(t.sortKeys);else if(t.sortKeys)throw new ro("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(t.dump&&qx===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=DN(t,e)),Th(t,e+1,f,!0,d)&&(t.dump&&qx===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=a,t.dump=i||"{}"}function Ore(t,e,r){var n,i,a,s,l,u;for(i=r?t.explicitTypes:t.implicitTypes,a=0,s=i.length;a tag resolver accepts not "'+u+'" style');t.dump=n}return!0}return!1}function Th(t,e,r,n,i,a,s){t.tag=null,t.dump=r,Ore(t,r,!1)||Ore(t,r,!0);var l=Qre.call(t.dump),u=n,h;n&&(n=t.flowLevel<0||t.flowLevel>e);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=t.duplicates.indexOf(r),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&e>0)&&(i=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(f&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(t.dump).length!==0?(uBe(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(cBe(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!s&&e>0?Ire(t,e-1,t.dump,i):Ire(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(lBe(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object String]")t.tag!=="?"&&aBe(t,t.dump,e,a,u);else{if(l==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new ro("unacceptable kind of an object to dump "+l)}t.tag!==null&&t.tag!=="?"&&(h=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",t.dump=h+" "+t.dump)}return!0}function hBe(t,e){var r=[],n=[],i,a;for(LN(t,r,n),i=0,a=n.length;i{"use strict";o(Pre,"isNothing");o(jIe,"isObject");o(XIe,"toArray");o(KIe,"extend");o(QIe,"repeat");o(ZIe,"isNegativeZero");JIe=Pre,eOe=jIe,tOe=XIe,rOe=QIe,nOe=ZIe,iOe=KIe,Qi={isNothing:JIe,isObject:eOe,toArray:tOe,repeat:rOe,isNegativeZero:nOe,extend:iOe};o(Bre,"formatError");o(Vx,"YAMLException$1");Vx.prototype=Object.create(Error.prototype);Vx.prototype.constructor=Vx;Vx.prototype.toString=o(function(e){return this.name+": "+Bre(this,e)},"toString");ro=Vx;o(SN,"getLine");o(EN,"padStart");o(aOe,"makeSnippet");sOe=aOe,oOe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],lOe=["scalar","sequence","mapping"];o(cOe,"compileStyleAliases");o(uOe,"Type$1");Ja=uOe;o(Tre,"compileList");o(hOe,"compileMap");o(AN,"Schema$1");AN.prototype.extend=o(function(e){var r=[],n=[];if(e instanceof Ja)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(r=r.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new ro("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Ja))throw new ro("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new ro("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new ro("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(a){if(!(a instanceof Ja))throw new ro("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(AN.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=Tre(i,"implicit"),i.compiledExplicit=Tre(i,"explicit"),i.compiledTypeMap=hOe(i.compiledImplicit,i.compiledExplicit),i},"extend");fOe=AN,dOe=new Ja("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(t){return t!==null?t:""},"construct")}),pOe=new Ja("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(t){return t!==null?t:[]},"construct")}),mOe=new Ja("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(t){return t!==null?t:{}},"construct")}),gOe=new fOe({explicit:[dOe,pOe,mOe]});o(yOe,"resolveYamlNull");o(vOe,"constructYamlNull");o(xOe,"isNull");bOe=new Ja("tag:yaml.org,2002:null",{kind:"scalar",resolve:yOe,construct:vOe,predicate:xOe,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});o(TOe,"resolveYamlBoolean");o(wOe,"constructYamlBoolean");o(kOe,"isBoolean");SOe=new Ja("tag:yaml.org,2002:bool",{kind:"scalar",resolve:TOe,construct:wOe,predicate:kOe,represent:{lowercase:o(function(t){return t?"true":"false"},"lowercase"),uppercase:o(function(t){return t?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(t){return t?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(EOe,"isHexCode");o(COe,"isOctCode");o(AOe,"isDecCode");o(_Oe,"resolveYamlInteger");o(DOe,"constructYamlInteger");o(ROe,"isInteger");LOe=new Ja("tag:yaml.org,2002:int",{kind:"scalar",resolve:_Oe,construct:DOe,predicate:ROe,represent:{binary:o(function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},"binary"),octal:o(function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},"octal"),decimal:o(function(t){return t.toString(10)},"decimal"),hexadecimal:o(function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),NOe=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(MOe,"resolveYamlFloat");o(IOe,"constructYamlFloat");OOe=/^[-+]?[0-9]+e/;o(POe,"representYamlFloat");o(BOe,"isFloat");FOe=new Ja("tag:yaml.org,2002:float",{kind:"scalar",resolve:MOe,construct:IOe,predicate:BOe,represent:POe,defaultStyle:"lowercase"}),Fre=gOe.extend({implicit:[bOe,SOe,LOe,FOe]}),$Oe=Fre,$re=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),zre=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");o(zOe,"resolveYamlTimestamp");o(GOe,"constructYamlTimestamp");o(VOe,"representYamlTimestamp");qOe=new Ja("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:zOe,construct:GOe,instanceOf:Date,represent:VOe});o(UOe,"resolveYamlMerge");WOe=new Ja("tag:yaml.org,2002:merge",{kind:"scalar",resolve:UOe}),NN=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;o(HOe,"resolveYamlBinary");o(YOe,"constructYamlBinary");o(jOe,"representYamlBinary");o(XOe,"isBinary");KOe=new Ja("tag:yaml.org,2002:binary",{kind:"scalar",resolve:HOe,construct:YOe,predicate:XOe,represent:jOe}),QOe=Object.prototype.hasOwnProperty,ZOe=Object.prototype.toString;o(JOe,"resolveYamlOmap");o(ePe,"constructYamlOmap");tPe=new Ja("tag:yaml.org,2002:omap",{kind:"sequence",resolve:JOe,construct:ePe}),rPe=Object.prototype.toString;o(nPe,"resolveYamlPairs");o(iPe,"constructYamlPairs");aPe=new Ja("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:nPe,construct:iPe}),sPe=Object.prototype.hasOwnProperty;o(oPe,"resolveYamlSet");o(lPe,"constructYamlSet");cPe=new Ja("tag:yaml.org,2002:set",{kind:"mapping",resolve:oPe,construct:lPe}),Gre=$Oe.extend({implicit:[qOe,WOe],explicit:[KOe,tPe,aPe,cPe]}),qf=Object.prototype.hasOwnProperty,vk=1,Vre=2,qre=3,xk=4,CN=1,uPe=2,wre=3,hPe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,fPe=/[\x85\u2028\u2029]/,dPe=/[,\[\]\{\}]/,Ure=/^(?:!|!!|![a-z\-]+!)$/i,Wre=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(kre,"_class");o(iu,"is_EOL");o(u0,"is_WHITE_SPACE");o(no,"is_WS_OR_EOL");o(n1,"is_FLOW_INDICATOR");o(pPe,"fromHexCode");o(mPe,"escapedHexLen");o(gPe,"fromDecimalCode");o(Sre,"simpleEscapeSequence");o(yPe,"charFromCodepoint");Hre=new Array(256),Yre=new Array(256);for(c0=0;c0<256;c0++)Hre[c0]=Sre(c0)?1:0,Yre[c0]=Sre(c0);o(vPe,"State$1");o(jre,"generateError");o(rr,"throwError");o(bk,"throwWarning");Ere={YAML:o(function(e,r,n){var i,a,s;e.version!==null&&rr(e,"duplication of %YAML directive"),n.length!==1&&rr(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&rr(e,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&rr(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,s!==1&&s!==2&&bk(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(e,r,n){var i,a;n.length!==2&&rr(e,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],Ure.test(i)||rr(e,"ill-formed tag handle (first argument) of the TAG directive"),qf.call(e.tagMap,i)&&rr(e,'there is a previously declared suffix for "'+i+'" tag handle'),Wre.test(a)||rr(e,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{rr(e,"tag prefix is malformed: "+a)}e.tagMap[i]=a},"handleTagDirective")};o(Vf,"captureSegment");o(Cre,"mergeMappings");o(i1,"storeMappingPair");o(MN,"readLineBreak");o(zi,"skipSeparationSpace");o(kk,"testDocumentSeparator");o(IN,"writeFoldedLines");o(xPe,"readPlainScalar");o(bPe,"readSingleQuotedScalar");o(TPe,"readDoubleQuotedScalar");o(wPe,"readFlowCollection");o(kPe,"readBlockScalar");o(Are,"readBlockSequence");o(SPe,"readBlockMapping");o(EPe,"readTagProperty");o(CPe,"readAnchorProperty");o(APe,"readAlias");o(a1,"composeNode");o(_Pe,"readDocument");o(Xre,"loadDocuments");o(DPe,"loadAll$1");o(RPe,"load$1");LPe=DPe,NPe=RPe,Kre={loadAll:LPe,load:NPe},Qre=Object.prototype.toString,Zre=Object.prototype.hasOwnProperty,ON=65279,MPe=9,qx=10,IPe=13,OPe=32,PPe=33,BPe=34,_N=35,FPe=37,$Pe=38,zPe=39,GPe=42,Jre=44,VPe=45,Tk=58,qPe=61,UPe=62,WPe=63,HPe=64,ene=91,tne=93,YPe=96,rne=123,jPe=124,nne=125,es={};es[0]="\\0";es[7]="\\a";es[8]="\\b";es[9]="\\t";es[10]="\\n";es[11]="\\v";es[12]="\\f";es[13]="\\r";es[27]="\\e";es[34]='\\"';es[92]="\\\\";es[133]="\\N";es[160]="\\_";es[8232]="\\L";es[8233]="\\P";XPe=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],KPe=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(QPe,"compileStyleMap");o(ZPe,"encodeHex");JPe=1,Ux=2;o(eBe,"State");o(_re,"indentString");o(DN,"generateNextLine");o(tBe,"testImplicitResolving");o(wk,"isWhitespace");o(Wx,"isPrintable");o(Dre,"isNsCharOrWhitespace");o(Rre,"isPlainSafe");o(rBe,"isPlainSafeFirst");o(nBe,"isPlainSafeLast");o(Gx,"codePointAt");o(ine,"needIndentIndicator");ane=1,RN=2,sne=3,one=4,r1=5;o(iBe,"chooseScalarStyle");o(aBe,"writeScalar");o(Lre,"blockHeader");o(Nre,"dropEndingNewline");o(sBe,"foldString");o(Mre,"foldLine");o(oBe,"escapeString");o(lBe,"writeFlowSequence");o(Ire,"writeBlockSequence");o(cBe,"writeFlowMapping");o(uBe,"writeBlockMapping");o(Ore,"detectType");o(Th,"writeNode");o(hBe,"getDuplicateReferences");o(LN,"inspectNode");o(fBe,"dump$1");dBe=fBe,pBe={dump:dBe};o(PN,"renamed");Uf=Fre,Wf=Kre.load,RLt=Kre.loadAll,LLt=pBe.dump,NLt=PN("safeLoad","load"),MLt=PN("safeLoadAll","loadAll"),ILt=PN("safeDump","dump")});function zN(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function dne(t){f0=t}function gn(t,e=""){let r=typeof t=="string"?t:t.source,n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(As.caret,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,e),"getRegex")};return n}function au(t,e){if(e){if(As.escapeTest.test(t))return t.replace(As.escapeReplace,cne)}else if(As.escapeTestNoEncode.test(t))return t.replace(As.escapeReplaceNoEncode,cne);return t}function une(t){try{t=encodeURI(t).replace(As.percentDecode,"%")}catch{return null}return t}function hne(t,e){let r=t.replace(As.findPipe,(a,s,l)=>{let u=!1,h=s;for(;--h>=0&&l[h]==="\\";)u=!u;return u?"|":" |"}),n=r.split(As.splitPipe),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length0?-2:-1}function fne(t,e,r,n,i){let a=e.href,s=e.title||null,l=t[1].replace(i.other.outputLinkReplace,"$1");n.state.inLink=!0;let u={type:t[0].charAt(0)==="!"?"image":"link",raw:r,href:a,title:s,text:l,tokens:n.inlineTokens(l)};return n.state.inLink=!1,u}function XBe(t,e,r){let n=t.match(r.other.indentCodeCompensation);if(n===null)return e;let i=n[1];return e.split(` `).map(a=>{let s=a.match(r.other.beginningSpace);if(s===null)return a;let[l]=s;return l.length>=i.length?a.slice(i.length):a}).join(` -`)}function nn(t,e){return Xd.parse(t,e)}var jd,A2,as,u9e,h9e,f9e,_2,d9e,f9,LZ,RZ,p9e,d9,m9e,p9,g9e,y9e,WT,m9,v9e,NZ,x9e,g9,EZ,b9e,T9e,w9e,k9e,MZ,E9e,YT,y9,IZ,S9e,OZ,C9e,A9e,_9e,PZ,D9e,L9e,BZ,R9e,N9e,M9e,I9e,O9e,P9e,B9e,UT,F9e,FZ,$Z,$9e,v9,z9e,l9,G9e,VT,E2,V9e,SZ,HT,Mu,qT,x9,Iu,C2,q9e,Xd,F6t,$6t,z6t,G6t,V6t,U6t,H6t,zZ=M(()=>{"use strict";o(h9,"L");jd=h9();o(DZ,"G");A2={exec:o(()=>null,"exec")};o(on,"h");as={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:o(t=>new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`),"listItemRegex"),nextBulletRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),"nextBulletRegex"),hrRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),"hrRegex"),fencesBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:\`\`\`|~~~)`),"fencesBeginRegex"),headingBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}#`),"headingBeginRegex"),htmlBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}<(?:[a-z].*>|!--)`,"i"),"htmlBeginRegex")},u9e=/^(?:[ \t]*(?:\n|$))+/,h9e=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,f9e=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,_2=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,d9e=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,f9=/(?:[*+-]|\d{1,9}[.)])/,LZ=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,RZ=on(LZ).replace(/bull/g,f9).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),p9e=on(LZ).replace(/bull/g,f9).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),d9=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,m9e=/^[^\n]+/,p9=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,g9e=on(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",p9).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),y9e=on(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,f9).getRegex(),WT="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",m9=/|$))/,v9e=on("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",m9).replace("tag",WT).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),NZ=on(d9).replace("hr",_2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",WT).getRegex(),x9e=on(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",NZ).getRegex(),g9={blockquote:x9e,code:h9e,def:g9e,fences:f9e,heading:d9e,hr:_2,html:v9e,lheading:RZ,list:y9e,newline:u9e,paragraph:NZ,table:A2,text:m9e},EZ=on("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",_2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",WT).getRegex(),b9e={...g9,lheading:p9e,table:EZ,paragraph:on(d9).replace("hr",_2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",EZ).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",WT).getRegex()},T9e={...g9,html:on(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",m9).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:A2,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:on(d9).replace("hr",_2).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",RZ).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},w9e=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,k9e=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,MZ=/^( {2,}|\\)\n(?!\s*$)/,E9e=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,PZ=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,D9e=on(PZ,"u").replace(/punct/g,YT).getRegex(),L9e=on(PZ,"u").replace(/punct/g,OZ).getRegex(),BZ="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",R9e=on(BZ,"gu").replace(/notPunctSpace/g,IZ).replace(/punctSpace/g,y9).replace(/punct/g,YT).getRegex(),N9e=on(BZ,"gu").replace(/notPunctSpace/g,A9e).replace(/punctSpace/g,C9e).replace(/punct/g,OZ).getRegex(),M9e=on("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,IZ).replace(/punctSpace/g,y9).replace(/punct/g,YT).getRegex(),I9e=on(/\\(punct)/,"gu").replace(/punct/g,YT).getRegex(),O9e=on(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),P9e=on(m9).replace("(?:-->|$)","-->").getRegex(),B9e=on("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",P9e).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),UT=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`[^`]*`|[^\[\]\\`])*?/,F9e=on(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",UT).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),FZ=on(/^!?\[(label)\]\[(ref)\]/).replace("label",UT).replace("ref",p9).getRegex(),$Z=on(/^!?\[(ref)\](?:\[\])?/).replace("ref",p9).getRegex(),$9e=on("reflink|nolink(?!\\()","g").replace("reflink",FZ).replace("nolink",$Z).getRegex(),v9={_backpedal:A2,anyPunctuation:I9e,autolink:O9e,blockSkip:_9e,br:MZ,code:k9e,del:A2,emStrongLDelim:D9e,emStrongRDelimAst:R9e,emStrongRDelimUnd:M9e,escape:w9e,link:F9e,nolink:$Z,punctuation:S9e,reflink:FZ,reflinkSearch:$9e,tag:B9e,text:E9e,url:A2},z9e={...v9,link:on(/^!?\[(label)\]\((.*?)\)/).replace("label",UT).getRegex(),reflink:on(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",UT).getRegex()},l9={...v9,emStrongRDelimAst:N9e,emStrongLDelim:L9e,url:on(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},SZ=o(t=>V9e[t],"ke");o(Tc,"w");o(CZ,"J");o(AZ,"V");o(S2,"z");o(U9e,"ge");o(_Z,"fe");o(H9e,"Je");HT=class{static{o(this,"y")}options;rules;lexer;constructor(t){this.options=t||jd}space(t){let e=this.rules.block.newline.exec(t);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(t){let e=this.rules.block.code.exec(t);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:S2(r,` -`)}}}fences(t){let e=this.rules.block.fences.exec(t);if(e){let r=e[0],n=H9e(r,e[3]||"",this.rules);return{type:"code",raw:r,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:n}}}heading(t){let e=this.rules.block.heading.exec(t);if(e){let r=e[2].trim();if(this.rules.other.endingHash.test(r)){let n=S2(r,"#");(this.options.pedantic||!n||this.rules.other.endingSpaceChar.test(n))&&(r=n.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(t){let e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:S2(e[0],` -`)}}blockquote(t){let e=this.rules.block.blockquote.exec(t);if(e){let r=S2(e[0],` +`)}function dn(t,e){return h0.parse(t,e)}var f0,Kx,As,mBe,gBe,yBe,Qx,vBe,GN,pne,mne,xBe,VN,bBe,qN,TBe,wBe,Dk,UN,kBe,gne,SBe,WN,lne,EBe,CBe,ABe,_Be,yne,DBe,Rk,HN,vne,RBe,xne,LBe,NBe,MBe,bne,IBe,OBe,Tne,PBe,BBe,FBe,$Be,zBe,GBe,VBe,Ck,qBe,wne,kne,UBe,YN,WBe,BN,HBe,Ek,Yx,YBe,cne,Ak,wh,_k,jN,kh,Xx,KBe,h0,PLt,BLt,FLt,$Lt,zLt,GLt,VLt,Sne=I(()=>{"use strict";o(zN,"L");f0=zN();o(dne,"G");Kx={exec:o(()=>null,"exec")};o(gn,"h");As={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:o(t=>new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`),"listItemRegex"),nextBulletRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),"nextBulletRegex"),hrRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),"hrRegex"),fencesBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:\`\`\`|~~~)`),"fencesBeginRegex"),headingBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}#`),"headingBeginRegex"),htmlBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}<(?:[a-z].*>|!--)`,"i"),"htmlBeginRegex")},mBe=/^(?:[ \t]*(?:\n|$))+/,gBe=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,yBe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Qx=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,vBe=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,GN=/(?:[*+-]|\d{1,9}[.)])/,pne=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,mne=gn(pne).replace(/bull/g,GN).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),xBe=gn(pne).replace(/bull/g,GN).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),VN=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,bBe=/^[^\n]+/,qN=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,TBe=gn(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",qN).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),wBe=gn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,GN).getRegex(),Dk="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",UN=/|$))/,kBe=gn("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",UN).replace("tag",Dk).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),gne=gn(VN).replace("hr",Qx).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Dk).getRegex(),SBe=gn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",gne).getRegex(),WN={blockquote:SBe,code:gBe,def:TBe,fences:yBe,heading:vBe,hr:Qx,html:kBe,lheading:mne,list:wBe,newline:mBe,paragraph:gne,table:Kx,text:bBe},lne=gn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Qx).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Dk).getRegex(),EBe={...WN,lheading:xBe,table:lne,paragraph:gn(VN).replace("hr",Qx).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",lne).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Dk).getRegex()},CBe={...WN,html:gn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",UN).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kx,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:gn(VN).replace("hr",Qx).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",mne).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ABe=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,_Be=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,yne=/^( {2,}|\\)\n(?!\s*$)/,DBe=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,bne=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,IBe=gn(bne,"u").replace(/punct/g,Rk).getRegex(),OBe=gn(bne,"u").replace(/punct/g,xne).getRegex(),Tne="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",PBe=gn(Tne,"gu").replace(/notPunctSpace/g,vne).replace(/punctSpace/g,HN).replace(/punct/g,Rk).getRegex(),BBe=gn(Tne,"gu").replace(/notPunctSpace/g,NBe).replace(/punctSpace/g,LBe).replace(/punct/g,xne).getRegex(),FBe=gn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,vne).replace(/punctSpace/g,HN).replace(/punct/g,Rk).getRegex(),$Be=gn(/\\(punct)/,"gu").replace(/punct/g,Rk).getRegex(),zBe=gn(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),GBe=gn(UN).replace("(?:-->|$)","-->").getRegex(),VBe=gn("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",GBe).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Ck=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`[^`]*`|[^\[\]\\`])*?/,qBe=gn(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Ck).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),wne=gn(/^!?\[(label)\]\[(ref)\]/).replace("label",Ck).replace("ref",qN).getRegex(),kne=gn(/^!?\[(ref)\](?:\[\])?/).replace("ref",qN).getRegex(),UBe=gn("reflink|nolink(?!\\()","g").replace("reflink",wne).replace("nolink",kne).getRegex(),YN={_backpedal:Kx,anyPunctuation:$Be,autolink:zBe,blockSkip:MBe,br:yne,code:_Be,del:Kx,emStrongLDelim:IBe,emStrongRDelimAst:PBe,emStrongRDelimUnd:FBe,escape:ABe,link:qBe,nolink:kne,punctuation:RBe,reflink:wne,reflinkSearch:UBe,tag:VBe,text:DBe,url:Kx},WBe={...YN,link:gn(/^!?\[(label)\]\((.*?)\)/).replace("label",Ck).getRegex(),reflink:gn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Ck).getRegex()},BN={...YN,emStrongRDelimAst:BBe,emStrongLDelim:OBe,url:gn(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},cne=o(t=>YBe[t],"ke");o(au,"w");o(une,"J");o(hne,"V");o(jx,"z");o(jBe,"ge");o(fne,"fe");o(XBe,"Je");Ak=class{static{o(this,"y")}options;rules;lexer;constructor(t){this.options=t||f0}space(t){let e=this.rules.block.newline.exec(t);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(t){let e=this.rules.block.code.exec(t);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:jx(r,` +`)}}}fences(t){let e=this.rules.block.fences.exec(t);if(e){let r=e[0],n=XBe(r,e[3]||"",this.rules);return{type:"code",raw:r,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:n}}}heading(t){let e=this.rules.block.heading.exec(t);if(e){let r=e[2].trim();if(this.rules.other.endingHash.test(r)){let n=jx(r,"#");(this.options.pedantic||!n||this.rules.other.endingSpaceChar.test(n))&&(r=n.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(t){let e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:jx(e[0],` +`)}}blockquote(t){let e=this.rules.block.blockquote.exec(t);if(e){let r=jx(e[0],` `).split(` `),n="",i="",a=[];for(;r.length>0;){let s=!1,l=[],u;for(u=0;u1,i={type:"list",raw:"",ordered:n,start:n?+r.slice(0,-1):"",loose:!1,items:[]};r=n?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=n?r:"[*+-]");let a=this.rules.other.listItemRegex(r),s=!1;for(;t;){let u=!1,h="",f="";if(!(e=a.exec(t))||this.rules.block.hr.test(t))break;h=e[0],t=t.substring(h.length);let d=e[2].split(` `,1)[0].replace(this.rules.other.listReplaceTabs,x=>" ".repeat(3*x.length)),p=t.split(` `,1)[0],m=!d.trim(),g=0;if(this.options.pedantic?(g=2,f=d.trimStart()):m?g=e[1].length+1:(g=e[2].search(this.rules.other.nonSpaceChar),g=g>4?1:g,f=d.slice(g),g+=e[1].length),m&&this.rules.other.blankLine.test(p)&&(h+=p+` -`,t=t.substring(p.length+1),u=!0),!u){let x=this.rules.other.nextBulletRegex(g),b=this.rules.other.hrRegex(g),T=this.rules.other.fencesBeginRegex(g),S=this.rules.other.headingBeginRegex(g),w=this.rules.other.htmlBeginRegex(g);for(;t;){let k=t.split(` -`,1)[0],C;if(p=k,this.options.pedantic?(p=p.replace(this.rules.other.listReplaceNesting," "),C=p):C=p.replace(this.rules.other.tabCharGlobal," "),T.test(p)||S.test(p)||w.test(p)||x.test(p)||b.test(p))break;if(C.search(this.rules.other.nonSpaceChar)>=g||!p.trim())f+=` -`+C.slice(g);else{if(m||d.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||T.test(d)||S.test(d)||b.test(d))break;f+=` +`,t=t.substring(p.length+1),u=!0),!u){let x=this.rules.other.nextBulletRegex(g),b=this.rules.other.hrRegex(g),T=this.rules.other.fencesBeginRegex(g),E=this.rules.other.headingBeginRegex(g),w=this.rules.other.htmlBeginRegex(g);for(;t;){let k=t.split(` +`,1)[0],C;if(p=k,this.options.pedantic?(p=p.replace(this.rules.other.listReplaceNesting," "),C=p):C=p.replace(this.rules.other.tabCharGlobal," "),T.test(p)||E.test(p)||w.test(p)||x.test(p)||b.test(p))break;if(C.search(this.rules.other.nonSpaceChar)>=g||!p.trim())f+=` +`+C.slice(g);else{if(m||d.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||T.test(d)||E.test(d)||b.test(d))break;f+=` `+p}!m&&!p.trim()&&(m=!0),h+=k+` -`,t=t.substring(k.length+1),d=C.slice(g)}}i.loose||(s?i.loose=!0:this.rules.other.doubleBlankLine.test(h)&&(s=!0));let y=null,v;this.options.gfm&&(y=this.rules.other.listIsTask.exec(f),y&&(v=y[0]!=="[ ] ",f=f.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:h,task:!!y,checked:v,loose:!1,text:f,tokens:[]}),i.raw+=h}let l=i.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let u=0;ud.type==="space"),f=h.length>0&&h.some(d=>this.rules.other.anyLine.test(d.raw));i.loose=f}if(i.loose)for(let u=0;u({text:l,tokens:this.lexer.inline(l),header:!1,align:a.align[u]})));return a}}lheading(t){let e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(t){let e=this.rules.block.paragraph.exec(t);if(e){let r=e[1].charAt(e[1].length-1)===` -`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:r,tokens:this.lexer.inline(r)}}}text(t){let e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(t){let e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(t){let e=this.rules.inline.tag.exec(t);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(t){let e=this.rules.inline.link.exec(t);if(e){let r=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(r)){if(!this.rules.other.endAngleBracket.test(r))return;let a=S2(r.slice(0,-1),"\\");if((r.length-a.length)%2===0)return}else{let a=U9e(e[2],"()");if(a===-2)return;if(a>-1){let s=(e[0].indexOf("!")===0?5:4)+e[1].length+a;e[2]=e[2].substring(0,a),e[0]=e[0].substring(0,s).trim(),e[3]=""}}let n=e[2],i="";if(this.options.pedantic){let a=this.rules.other.pedanticHrefTitle.exec(n);a&&(n=a[1],i=a[3])}else i=e[3]?e[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(r)?n=n.slice(1):n=n.slice(1,-1)),_Z(e,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(t,e){let r;if((r=this.rules.inline.reflink.exec(t))||(r=this.rules.inline.nolink.exec(t))){let n=(r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[n.toLowerCase()];if(!i){let a=r[0].charAt(0);return{type:"text",raw:a,text:a}}return _Z(r,i,r[0],this.lexer,this.rules)}}emStrong(t,e,r=""){let n=this.rules.inline.emStrongLDelim.exec(t);if(!(!n||n[3]&&r.match(this.rules.other.unicodeAlphaNumeric))&&(!(n[1]||n[2])||!r||this.rules.inline.punctuation.exec(r))){let i=[...n[0]].length-1,a,s,l=i,u=0,h=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(h.lastIndex=0,e=e.slice(-1*t.length+i);(n=h.exec(e))!=null;){if(a=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!a)continue;if(s=[...a].length,n[3]||n[4]){l+=s;continue}else if((n[5]||n[6])&&i%3&&!((i+s)%3)){u+=s;continue}if(l-=s,l>0)continue;s=Math.min(s,s+l+u);let f=[...n[0]][0].length,d=t.slice(0,i+n.index+f+s);if(Math.min(i,s)%2){let m=d.slice(1,-1);return{type:"em",raw:d,text:m,tokens:this.lexer.inlineTokens(m)}}let p=d.slice(2,-2);return{type:"strong",raw:d,text:p,tokens:this.lexer.inlineTokens(p)}}}}codespan(t){let e=this.rules.inline.code.exec(t);if(e){let r=e[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(r),i=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return n&&i&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:e[0],text:r}}}br(t){let e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){let e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t){let e=this.rules.inline.autolink.exec(t);if(e){let r,n;return e[2]==="@"?(r=e[1],n="mailto:"+r):(r=e[1],n=r),{type:"link",raw:e[0],text:r,href:n,tokens:[{type:"text",raw:r,text:r}]}}}url(t){let e;if(e=this.rules.inline.url.exec(t)){let r,n;if(e[2]==="@")r=e[0],n="mailto:"+r;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);r=e[0],e[1]==="www."?n="http://"+e[0]:n=e[0]}return{type:"link",raw:e[0],text:r,href:n,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(t){let e=this.rules.inline.text.exec(t);if(e){let r=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:r}}}},Mu=class c9{static{o(this,"l")}tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||jd,this.options.tokenizer=this.options.tokenizer||new HT,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:as,block:VT.normal,inline:E2.normal};this.options.pedantic?(r.block=VT.pedantic,r.inline=E2.pedantic):this.options.gfm&&(r.block=VT.gfm,this.options.breaks?r.inline=E2.breaks:r.inline=E2.gfm),this.tokenizer.rules=r}static get rules(){return{block:VT,inline:E2}}static lex(e,r){return new c9(r).lex(e)}static lexInline(e,r){return new c9(r).inlineTokens(e)}lex(e){e=e.replace(as.carriageReturn,` -`),this.blockTokens(e,this.tokens);for(let r=0;r(i=s.call({lexer:this},e,r))?(e=e.substring(i.raw.length),r.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let s=r.at(-1);i.raw.length===1&&s!==void 0?s.raw+=` +`,t=t.substring(k.length+1),d=C.slice(g)}}i.loose||(s?i.loose=!0:this.rules.other.doubleBlankLine.test(h)&&(s=!0));let y=null,v;this.options.gfm&&(y=this.rules.other.listIsTask.exec(f),y&&(v=y[0]!=="[ ] ",f=f.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:h,task:!!y,checked:v,loose:!1,text:f,tokens:[]}),i.raw+=h}let l=i.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let u=0;ud.type==="space"),f=h.length>0&&h.some(d=>this.rules.other.anyLine.test(d.raw));i.loose=f}if(i.loose)for(let u=0;u({text:l,tokens:this.lexer.inline(l),header:!1,align:a.align[u]})));return a}}lheading(t){let e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(t){let e=this.rules.block.paragraph.exec(t);if(e){let r=e[1].charAt(e[1].length-1)===` +`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:r,tokens:this.lexer.inline(r)}}}text(t){let e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(t){let e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(t){let e=this.rules.inline.tag.exec(t);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(t){let e=this.rules.inline.link.exec(t);if(e){let r=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(r)){if(!this.rules.other.endAngleBracket.test(r))return;let a=jx(r.slice(0,-1),"\\");if((r.length-a.length)%2===0)return}else{let a=jBe(e[2],"()");if(a===-2)return;if(a>-1){let s=(e[0].indexOf("!")===0?5:4)+e[1].length+a;e[2]=e[2].substring(0,a),e[0]=e[0].substring(0,s).trim(),e[3]=""}}let n=e[2],i="";if(this.options.pedantic){let a=this.rules.other.pedanticHrefTitle.exec(n);a&&(n=a[1],i=a[3])}else i=e[3]?e[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(r)?n=n.slice(1):n=n.slice(1,-1)),fne(e,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(t,e){let r;if((r=this.rules.inline.reflink.exec(t))||(r=this.rules.inline.nolink.exec(t))){let n=(r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[n.toLowerCase()];if(!i){let a=r[0].charAt(0);return{type:"text",raw:a,text:a}}return fne(r,i,r[0],this.lexer,this.rules)}}emStrong(t,e,r=""){let n=this.rules.inline.emStrongLDelim.exec(t);if(!(!n||n[3]&&r.match(this.rules.other.unicodeAlphaNumeric))&&(!(n[1]||n[2])||!r||this.rules.inline.punctuation.exec(r))){let i=[...n[0]].length-1,a,s,l=i,u=0,h=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(h.lastIndex=0,e=e.slice(-1*t.length+i);(n=h.exec(e))!=null;){if(a=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!a)continue;if(s=[...a].length,n[3]||n[4]){l+=s;continue}else if((n[5]||n[6])&&i%3&&!((i+s)%3)){u+=s;continue}if(l-=s,l>0)continue;s=Math.min(s,s+l+u);let f=[...n[0]][0].length,d=t.slice(0,i+n.index+f+s);if(Math.min(i,s)%2){let m=d.slice(1,-1);return{type:"em",raw:d,text:m,tokens:this.lexer.inlineTokens(m)}}let p=d.slice(2,-2);return{type:"strong",raw:d,text:p,tokens:this.lexer.inlineTokens(p)}}}}codespan(t){let e=this.rules.inline.code.exec(t);if(e){let r=e[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(r),i=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return n&&i&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:e[0],text:r}}}br(t){let e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){let e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t){let e=this.rules.inline.autolink.exec(t);if(e){let r,n;return e[2]==="@"?(r=e[1],n="mailto:"+r):(r=e[1],n=r),{type:"link",raw:e[0],text:r,href:n,tokens:[{type:"text",raw:r,text:r}]}}}url(t){let e;if(e=this.rules.inline.url.exec(t)){let r,n;if(e[2]==="@")r=e[0],n="mailto:"+r;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);r=e[0],e[1]==="www."?n="http://"+e[0]:n=e[0]}return{type:"link",raw:e[0],text:r,href:n,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(t){let e=this.rules.inline.text.exec(t);if(e){let r=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:r}}}},wh=class FN{static{o(this,"l")}tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||f0,this.options.tokenizer=this.options.tokenizer||new Ak,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:As,block:Ek.normal,inline:Yx.normal};this.options.pedantic?(r.block=Ek.pedantic,r.inline=Yx.pedantic):this.options.gfm&&(r.block=Ek.gfm,this.options.breaks?r.inline=Yx.breaks:r.inline=Yx.gfm),this.tokenizer.rules=r}static get rules(){return{block:Ek,inline:Yx}}static lex(e,r){return new FN(r).lex(e)}static lexInline(e,r){return new FN(r).inlineTokens(e)}lex(e){e=e.replace(As.carriageReturn,` +`),this.blockTokens(e,this.tokens);for(let r=0;r(i=s.call({lexer:this},e,r))?(e=e.substring(i.raw.length),r.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let s=r.at(-1);i.raw.length===1&&s!==void 0?s.raw+=` `:r.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="paragraph"||s?.type==="text"?(s.raw+=(s.raw.endsWith(` `)?"":` `)+i.raw,s.text+=` @@ -422,16 +422,16 @@ ${f}`:f;let d=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTo `+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i),n=a.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="text"?(s.raw+=(s.raw.endsWith(` `)?"":` `)+i.raw,s.text+=` -`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i);continue}if(e){let s="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,r}inline(e,r=[]){return this.inlineQueue.push({src:e,tokens:r}),r}inlineTokens(e,r=[]){let n=e,i=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)l.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,i.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(i=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let a=!1,s="";for(;e;){a||(s=""),a=!1;let l;if(this.options.extensions?.inline?.some(h=>(l=h.call({lexer:this},e,r))?(e=e.substring(l.raw.length),r.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let h=r.at(-1);l.type==="text"&&h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(l=this.tokenizer.emStrong(e,n,s)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.del(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),r.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),r.push(l);continue}let u=e;if(this.options.extensions?.startInline){let h=1/0,f=e.slice(1),d;this.options.extensions.startInline.forEach(p=>{d=p.call({lexer:this},f),typeof d=="number"&&d>=0&&(h=Math.min(h,d))}),h<1/0&&h>=0&&(u=e.substring(0,h+1))}if(l=this.tokenizer.inlineText(u)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(s=l.raw.slice(-1)),a=!0;let h=r.at(-1);h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(e){let h="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(h);break}else throw new Error(h)}}return r}},qT=class{static{o(this,"P")}options;parser;constructor(t){this.options=t||jd}space(t){return""}code({text:t,lang:e,escaped:r}){let n=(e||"").match(as.notSpaceStart)?.[0],i=t.replace(as.endingNewline,"")+` -`;return n?'
'+(r?i:Tc(i,!0))+`
-`:"
"+(r?i:Tc(i,!0))+`
+`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i);continue}if(e){let s="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,r}inline(e,r=[]){return this.inlineQueue.push({src:e,tokens:r}),r}inlineTokens(e,r=[]){let n=e,i=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)l.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,i.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(i=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let a=!1,s="";for(;e;){a||(s=""),a=!1;let l;if(this.options.extensions?.inline?.some(h=>(l=h.call({lexer:this},e,r))?(e=e.substring(l.raw.length),r.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let h=r.at(-1);l.type==="text"&&h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(l=this.tokenizer.emStrong(e,n,s)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.del(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),r.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),r.push(l);continue}let u=e;if(this.options.extensions?.startInline){let h=1/0,f=e.slice(1),d;this.options.extensions.startInline.forEach(p=>{d=p.call({lexer:this},f),typeof d=="number"&&d>=0&&(h=Math.min(h,d))}),h<1/0&&h>=0&&(u=e.substring(0,h+1))}if(l=this.tokenizer.inlineText(u)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(s=l.raw.slice(-1)),a=!0;let h=r.at(-1);h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(e){let h="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(h);break}else throw new Error(h)}}return r}},_k=class{static{o(this,"P")}options;parser;constructor(t){this.options=t||f0}space(t){return""}code({text:t,lang:e,escaped:r}){let n=(e||"").match(As.notSpaceStart)?.[0],i=t.replace(As.endingNewline,"")+` +`;return n?'
'+(r?i:au(i,!0))+`
+`:"
"+(r?i:au(i,!0))+`
`}blockquote({tokens:t}){return`
${this.parser.parse(t)}
`}html({text:t}){return t}def(t){return""}heading({tokens:t,depth:e}){return`${this.parser.parseInline(t)} `}hr(t){return`
`}list(t){let e=t.ordered,r=t.start,n="";for(let s=0;s `+n+" -`}listitem(t){let e="";if(t.task){let r=this.checkbox({checked:!!t.checked});t.loose?t.tokens[0]?.type==="paragraph"?(t.tokens[0].text=r+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&t.tokens[0].tokens[0].type==="text"&&(t.tokens[0].tokens[0].text=r+" "+Tc(t.tokens[0].tokens[0].text),t.tokens[0].tokens[0].escaped=!0)):t.tokens.unshift({type:"text",raw:r+" ",text:r+" ",escaped:!0}):e+=r+" "}return e+=this.parser.parse(t.tokens,!!t.loose),`
  • ${e}
  • +`}listitem(t){let e="";if(t.task){let r=this.checkbox({checked:!!t.checked});t.loose?t.tokens[0]?.type==="paragraph"?(t.tokens[0].text=r+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&t.tokens[0].tokens[0].type==="text"&&(t.tokens[0].tokens[0].text=r+" "+au(t.tokens[0].tokens[0].text),t.tokens[0].tokens[0].escaped=!0)):t.tokens.unshift({type:"text",raw:r+" ",text:r+" ",escaped:!0}):e+=r+" "}return e+=this.parser.parse(t.tokens,!!t.loose),`
  • ${e}
  • `}checkbox({checked:t}){return"'}paragraph({tokens:t}){return`

    ${this.parser.parseInline(t)}

    `}table(t){let e="",r="";for(let i=0;i${n}`),` @@ -440,24 +440,24 @@ ${this.parser.parse(t)} `}tablerow({text:t}){return` ${t} `}tablecell(t){let e=this.parser.parseInline(t.tokens),r=t.header?"th":"td";return(t.align?`<${r} align="${t.align}">`:`<${r}>`)+e+` -`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${Tc(t,!0)}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:e,tokens:r}){let n=this.parser.parseInline(r),i=CZ(t);if(i===null)return n;t=i;let a='",a}image({href:t,title:e,text:r,tokens:n}){n&&(r=this.parser.parseInline(n,this.parser.textRenderer));let i=CZ(t);if(i===null)return Tc(r);t=i;let a=`${r}{let s=i[a].flat(1/0);r=r.concat(this.walkTokens(s,e))}):i.tokens&&(r=r.concat(this.walkTokens(i.tokens,e)))}}return r}use(...t){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(r=>{let n={...r};if(n.async=this.defaults.async||n.async||!1,r.extensions&&(r.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let a=e.renderers[i.name];a?e.renderers[i.name]=function(...s){let l=i.renderer.apply(this,s);return l===!1&&(l=a.apply(this,s)),l}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let a=e[i.level];a?a.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),n.extensions=e),r.renderer){let i=this.defaults.renderer||new qT(this.defaults);for(let a in r.renderer){if(!(a in i))throw new Error(`renderer '${a}' does not exist`);if(["options","parser"].includes(a))continue;let s=a,l=r.renderer[s],u=i[s];i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f||""}}n.renderer=i}if(r.tokenizer){let i=this.defaults.tokenizer||new HT(this.defaults);for(let a in r.tokenizer){if(!(a in i))throw new Error(`tokenizer '${a}' does not exist`);if(["options","rules","lexer"].includes(a))continue;let s=a,l=r.tokenizer[s],u=i[s];i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f}}n.tokenizer=i}if(r.hooks){let i=this.defaults.hooks||new C2;for(let a in r.hooks){if(!(a in i))throw new Error(`hook '${a}' does not exist`);if(["options","block"].includes(a))continue;let s=a,l=r.hooks[s],u=i[s];C2.passThroughHooks.has(a)?i[s]=h=>{if(this.defaults.async&&C2.passThroughHooksRespectAsync.has(a))return Promise.resolve(l.call(i,h)).then(d=>u.call(i,d));let f=l.call(i,h);return u.call(i,f)}:i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f}}n.hooks=i}if(r.walkTokens){let i=this.defaults.walkTokens,a=r.walkTokens;n.walkTokens=function(s){let l=[];return l.push(a.call(this,s)),i&&(l=l.concat(i.call(this,s))),l}}this.defaults={...this.defaults,...n}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return Mu.lex(t,e??this.defaults)}parser(t,e){return Iu.parse(t,e??this.defaults)}parseMarkdown(t){return(e,r)=>{let n={...r},i={...this.defaults,...n},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&n.async===!1)return a(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));i.hooks&&(i.hooks.options=i,i.hooks.block=t);let s=i.hooks?i.hooks.provideLexer():t?Mu.lex:Mu.lexInline,l=i.hooks?i.hooks.provideParser():t?Iu.parse:Iu.parseInline;if(i.async)return Promise.resolve(i.hooks?i.hooks.preprocess(e):e).then(u=>s(u,i)).then(u=>i.hooks?i.hooks.processAllTokens(u):u).then(u=>i.walkTokens?Promise.all(this.walkTokens(u,i.walkTokens)).then(()=>u):u).then(u=>l(u,i)).then(u=>i.hooks?i.hooks.postprocess(u):u).catch(a);try{i.hooks&&(e=i.hooks.preprocess(e));let u=s(e,i);i.hooks&&(u=i.hooks.processAllTokens(u)),i.walkTokens&&this.walkTokens(u,i.walkTokens);let h=l(u,i);return i.hooks&&(h=i.hooks.postprocess(h)),h}catch(u){return a(u)}}}onError(t,e){return r=>{if(r.message+=` -Please report this to https://github.com/markedjs/marked.`,t){let n="

    An error occurred:

    "+Tc(r.message+"",!0)+"
    ";return e?Promise.resolve(n):n}if(e)return Promise.reject(r);throw r}}},Xd=new q9e;o(nn,"d");nn.options=nn.setOptions=function(t){return Xd.setOptions(t),nn.defaults=Xd.defaults,DZ(nn.defaults),nn};nn.getDefaults=h9;nn.defaults=jd;nn.use=function(...t){return Xd.use(...t),nn.defaults=Xd.defaults,DZ(nn.defaults),nn};nn.walkTokens=function(t,e){return Xd.walkTokens(t,e)};nn.parseInline=Xd.parseInline;nn.Parser=Iu;nn.parser=Iu.parse;nn.Renderer=qT;nn.TextRenderer=x9;nn.Lexer=Mu;nn.lexer=Mu.lex;nn.Tokenizer=HT;nn.Hooks=C2;nn.parse=nn;F6t=nn.options,$6t=nn.setOptions,z6t=nn.use,G6t=nn.walkTokens,V6t=nn.parseInline,U6t=Iu.parse,H6t=Mu.lex});function W9e(t,{markdownAutoWrap:e}){let n=t.replace(//g,` +`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${au(t,!0)}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:e,tokens:r}){let n=this.parser.parseInline(r),i=une(t);if(i===null)return n;t=i;let a='
    ",a}image({href:t,title:e,text:r,tokens:n}){n&&(r=this.parser.parseInline(n,this.parser.textRenderer));let i=une(t);if(i===null)return au(r);t=i;let a=`${r}{let s=i[a].flat(1/0);r=r.concat(this.walkTokens(s,e))}):i.tokens&&(r=r.concat(this.walkTokens(i.tokens,e)))}}return r}use(...t){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(r=>{let n={...r};if(n.async=this.defaults.async||n.async||!1,r.extensions&&(r.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let a=e.renderers[i.name];a?e.renderers[i.name]=function(...s){let l=i.renderer.apply(this,s);return l===!1&&(l=a.apply(this,s)),l}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let a=e[i.level];a?a.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),n.extensions=e),r.renderer){let i=this.defaults.renderer||new _k(this.defaults);for(let a in r.renderer){if(!(a in i))throw new Error(`renderer '${a}' does not exist`);if(["options","parser"].includes(a))continue;let s=a,l=r.renderer[s],u=i[s];i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f||""}}n.renderer=i}if(r.tokenizer){let i=this.defaults.tokenizer||new Ak(this.defaults);for(let a in r.tokenizer){if(!(a in i))throw new Error(`tokenizer '${a}' does not exist`);if(["options","rules","lexer"].includes(a))continue;let s=a,l=r.tokenizer[s],u=i[s];i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f}}n.tokenizer=i}if(r.hooks){let i=this.defaults.hooks||new Xx;for(let a in r.hooks){if(!(a in i))throw new Error(`hook '${a}' does not exist`);if(["options","block"].includes(a))continue;let s=a,l=r.hooks[s],u=i[s];Xx.passThroughHooks.has(a)?i[s]=h=>{if(this.defaults.async&&Xx.passThroughHooksRespectAsync.has(a))return Promise.resolve(l.call(i,h)).then(d=>u.call(i,d));let f=l.call(i,h);return u.call(i,f)}:i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f}}n.hooks=i}if(r.walkTokens){let i=this.defaults.walkTokens,a=r.walkTokens;n.walkTokens=function(s){let l=[];return l.push(a.call(this,s)),i&&(l=l.concat(i.call(this,s))),l}}this.defaults={...this.defaults,...n}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return wh.lex(t,e??this.defaults)}parser(t,e){return kh.parse(t,e??this.defaults)}parseMarkdown(t){return(e,r)=>{let n={...r},i={...this.defaults,...n},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&n.async===!1)return a(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));i.hooks&&(i.hooks.options=i,i.hooks.block=t);let s=i.hooks?i.hooks.provideLexer():t?wh.lex:wh.lexInline,l=i.hooks?i.hooks.provideParser():t?kh.parse:kh.parseInline;if(i.async)return Promise.resolve(i.hooks?i.hooks.preprocess(e):e).then(u=>s(u,i)).then(u=>i.hooks?i.hooks.processAllTokens(u):u).then(u=>i.walkTokens?Promise.all(this.walkTokens(u,i.walkTokens)).then(()=>u):u).then(u=>l(u,i)).then(u=>i.hooks?i.hooks.postprocess(u):u).catch(a);try{i.hooks&&(e=i.hooks.preprocess(e));let u=s(e,i);i.hooks&&(u=i.hooks.processAllTokens(u)),i.walkTokens&&this.walkTokens(u,i.walkTokens);let h=l(u,i);return i.hooks&&(h=i.hooks.postprocess(h)),h}catch(u){return a(u)}}}onError(t,e){return r=>{if(r.message+=` +Please report this to https://github.com/markedjs/marked.`,t){let n="

    An error occurred:

    "+au(r.message+"",!0)+"
    ";return e?Promise.resolve(n):n}if(e)return Promise.reject(r);throw r}}},h0=new KBe;o(dn,"d");dn.options=dn.setOptions=function(t){return h0.setOptions(t),dn.defaults=h0.defaults,dne(dn.defaults),dn};dn.getDefaults=zN;dn.defaults=f0;dn.use=function(...t){return h0.use(...t),dn.defaults=h0.defaults,dne(dn.defaults),dn};dn.walkTokens=function(t,e){return h0.walkTokens(t,e)};dn.parseInline=h0.parseInline;dn.Parser=kh;dn.parser=kh.parse;dn.Renderer=_k;dn.TextRenderer=jN;dn.Lexer=wh;dn.lexer=wh.lex;dn.Tokenizer=Ak;dn.Hooks=Xx;dn.parse=dn;PLt=dn.options,BLt=dn.setOptions,FLt=dn.use,$Lt=dn.walkTokens,zLt=dn.parseInline,GLt=kh.parse,VLt=wh.lex});function QBe(t,{markdownAutoWrap:e}){let n=t.replace(//g,` `).replace(/\n{2,}/g,` -`),i=B3(n);return e===!1?i.replace(/ /g," "):i}function GZ(t,e={}){let r=W9e(t,e),n=nn.lexer(r),i=[[]],a=0;function s(l,u="normal"){l.type==="text"?l.text.split(` -`).forEach((f,d)=>{d!==0&&(a++,i.push([])),f.split(" ").forEach(p=>{p=p.replace(/'/g,"'"),p&&i[a].push({content:p,type:u})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(h=>{s(h,l.type)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}return o(s,"processNode"),n.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(u=>{s(u)}):l.type==="html"?i[a].push({content:l.text,type:"normal"}):i[a].push({content:l.raw,type:"normal"})}),i}function VZ(t,{markdownAutoWrap:e}={}){let r=nn.lexer(t);function n(i){return i.type==="text"?e===!1?i.text.replace(/\n */g,"
    ").replace(/ /g," "):i.text.replace(/\n */g,"
    "):i.type==="strong"?`${i.tokens?.map(n).join("")}`:i.type==="em"?`${i.tokens?.map(n).join("")}`:i.type==="paragraph"?`

    ${i.tokens?.map(n).join("")}

    `:i.type==="space"?"":i.type==="html"?`${i.text}`:i.type==="escape"?i.text:(X.warn(`Unsupported markdown: ${i.type}`),i.raw)}return o(n,"output"),r.map(n).join("")}var UZ=M(()=>{"use strict";zZ();_A();pt();o(W9e,"preprocessMarkdown");o(GZ,"markdownToLines");o(VZ,"markdownToHTML")});function Y9e(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function X9e(t,e){let r=Y9e(e.content);return HZ(t,[],r,e.type)}function HZ(t,e,r,n){if(r.length===0)return[{content:e.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...e,i];return t([{content:s.join(""),type:n}])?HZ(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function qZ(t,e){if(t.some(({content:r})=>r.includes(` -`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return b9(t,e)}function b9(t,e,r=[],n=[]){if(t.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";t[0].content===" "&&(i=" ",t.shift());let a=t.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),e(s))return b9(t,e,r,s);if(n.length>0)r.push(n),t.unshift(a);else if(a.content){let[l,u]=X9e(e,a);r.push([l]),u.content&&t.unshift(u)}return b9(t,e,r)}var WZ=M(()=>{"use strict";o(Y9e,"splitTextToChars");o(X9e,"splitWordToFitWidth");o(HZ,"splitWordToFitWidthRecursion");o(qZ,"splitLineToFitWidth");o(b9,"splitLineToFitWidthRecursion")});function YZ(t,e){e&&t.attr("style",e)}async function j9e(t,e,r,n,i=!1,a=Qt()){let s=t.append("foreignObject");s.attr("width",`${10*r}px`),s.attr("height",`${10*r}px`);let l=s.append("xhtml:div"),u=kn(e.label)?await kh(e.label.replace(tt.lineBreakRegex,` -`),a):sr(e.label,a),h=e.isNode?"nodeLabel":"edgeLabel",f=l.append("span");f.html(u),YZ(f,e.labelStyle),f.attr("class",`${h} ${n}`),YZ(l,e.labelStyle),l.style("display","table-cell"),l.style("white-space","nowrap"),l.style("line-height","1.5"),l.style("max-width",r+"px"),l.style("text-align","center"),l.attr("xmlns","http://www.w3.org/1999/xhtml"),i&&l.attr("class","labelBkg");let d=l.node().getBoundingClientRect();return d.width===r&&(l.style("display","table"),l.style("white-space","break-spaces"),l.style("width",r+"px"),d=l.node().getBoundingClientRect()),s.node()}function T9(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function K9e(t,e,r){let n=t.append("text"),i=T9(n,1,e);w9(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function XZ(t,e,r){let n=t.append("text"),i=T9(n,1,e);w9(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function Q9e(t,e,r,n=!1){let a=e.append("g"),s=a.insert("rect").attr("class","background").attr("style","stroke: none"),l=a.append("text").attr("y","-10.1"),u=0;for(let h of r){let f=o(p=>K9e(a,1.1,p)<=t,"checkWidth"),d=f(h)?[h]:qZ(h,f);for(let p of d){let m=T9(l,u,1.1);w9(m,p),u++}}if(n){let h=l.node().getBBox(),f=2;return s.attr("x",h.x-f).attr("y",h.y-f).attr("width",h.width+2*f).attr("height",h.height+2*f),a.node()}else return l.node()}function w9(t,e){t.text(""),e.forEach((r,n)=>{let i=t.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}async function k9(t,e={}){let r=[];t.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(i,a,s)=>(r.push((async()=>{let l=`${a}:${s}`;return await nH(l)?await _s(l,void 0,{class:"label-icon"}):``})()),i));let n=await Promise.all(r);return t.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>n.shift()??"")}var di,zo=M(()=>{"use strict";yr();gr();pt();UZ();tr();nc();WZ();qn();o(YZ,"applyStyle");o(j9e,"addHtmlSpan");o(T9,"createTspan");o(K9e,"computeWidthOfText");o(XZ,"computeDimensionOfText");o(Q9e,"createFormattedText");o(w9,"updateTextContentAndStyles");o(k9,"replaceIconSubstring");di=o(async(t,e="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(X.debug("XYZ createText",e,r,n,i,a,s,"addSvgBackground: ",u),a){let f=VZ(e,h),d=await k9(Ji(f),h),p=e.replace(/\\\\/g,"\\"),m={isNode:s,label:kn(e)?p:d,labelStyle:r.replace("fill:","color:")};return await j9e(t,m,l,i,u,h)}else{let f=e.replace(//g,"
    "),d=GZ(f.replace("
    ","
    "),h),p=Q9e(l,t,d,e?u:!1);if(s){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");qe(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");qe(p).select("rect").attr("style",m.replace(/background:/g,"fill:"));let g=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");qe(p).select("text").attr("style",g)}return p}},"createText")});function Vt(t){let e=t.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return e.push("Z"),e.join(" ")}function Go(t,e,r,n,i,a){let s=[],u=r-t,h=n-e,f=u/a,d=2*Math.PI/f,p=e+h/2;for(let m=0;m<=50;m++){let g=m/50,y=t+g*u,v=p+i*Math.sin(d*(y-t));s.push({x:y,y:v})}return s}function Kd(t,e,r,n,i,a){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";zo();Xt();yr();Ra();gr();tr();ut=o(async(t,e,r)=>{let n,i=e.useHtmlLabels||vr(ge()?.htmlLabels);r?n=r:n="node default";let a=t.insert("g").attr("class",n).attr("id",e.domId||e.id),s=a.insert("g").attr("class","label").attr("style",Cn(e.labelStyle)),l;e.label===void 0?l="":l=typeof e.label=="string"?e.label:e.label[0];let u=await di(s,sr(Ji(l),ge()),{useHtmlLabels:i,width:e.width||ge().flowchart?.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle,addSvgBackground:!!e.icon||!!e.img}),h=u.getBBox(),f=(e?.padding??0)/2;if(i){let d=u.children[0],p=qe(u),m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=ge().fontSize?ge().fontSize:window.getComputedStyle(document.body).fontSize,T=5,[S=ur.fontSize]=vc(b),w=S*T+"px";y.style.minWidth=w,y.style.maxWidth=w}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return i?s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):s.attr("transform","translate(0, "+-h.height/2+")"),e.centerLabel&&s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),s.insert("rect",":first-child"),{shapeSvg:a,bbox:h,halfPadding:f,label:s}},"labelHelper"),XT=o(async(t,e,r)=>{let n=r.useHtmlLabels||vr(ge()?.flowchart?.htmlLabels),i=t.insert("g").attr("class","label").attr("style",r.labelStyle||""),a=await di(i,sr(Ji(e),ge()),{useHtmlLabels:n,width:r.width||ge()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),s=a.getBBox(),l=r.padding/2;if(vr(ge()?.flowchart?.htmlLabels)){let u=a.children[0],h=qe(a);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}return n?i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"):i.attr("transform","translate(0, "+-s.height/2+")"),r.centerLabel&&i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),i.insert("rect",":first-child"),{shapeSvg:t,bbox:s,halfPadding:l,label:i}},"insertLabel"),Qe=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds"),st=o((t,e)=>(t.look==="handDrawn"?"rough-node":"node")+" "+t.cssClasses+" "+(e||""),"getNodeClasses");o(Vt,"createPathFromPoints");o(Go,"generateFullSineWavePoints");o(Kd,"generateCirclePoints")});function Z9e(t,e){return t.intersect(e)}var jZ,KZ=M(()=>{"use strict";o(Z9e,"intersectNode");jZ=Z9e});function J9e(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(J9e,"intersectEllipse");jT=J9e});function eRe(t,e,r){return jT(t,e,e,r)}var QZ,ZZ=M(()=>{"use strict";E9();o(eRe,"intersectCircle");QZ=eRe});function tRe(t,e,r,n){{let i=e.y-t.y,a=t.x-e.x,s=e.x*t.y-t.x*e.y,l=i*r.x+a*r.y+s,u=i*n.x+a*n.y+s,h=1e-6;if(l!==0&&u!==0&&JZ(l,u))return;let f=n.y-r.y,d=r.x-n.x,p=n.x*r.y-r.x*n.y,m=f*t.x+d*t.y+p,g=f*e.x+d*e.y+p;if(Math.abs(m)0}var eJ,tJ=M(()=>{"use strict";o(tRe,"intersectLine");o(JZ,"sameSign");eJ=tRe});function rRe(t,e,r){let n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));let u=n-t.width/2-s,h=i-t.height/2-l;for(let f=0;f1&&a.sort(function(f,d){let p=f.x-r.x,m=f.y-r.y,g=Math.sqrt(p*p+m*m),y=d.x-r.x,v=d.y-r.y,x=Math.sqrt(y*y+v*v);return g{"use strict";tJ();o(rRe,"intersectPolygon");rJ=rRe});var nRe,Qh,S9=M(()=>{"use strict";nRe=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),Qh=nRe});var Xe,Ut=M(()=>{"use strict";KZ();ZZ();E9();nJ();S9();Xe={node:jZ,circle:QZ,ellipse:jT,polygon:rJ,rect:Qh}});var iJ,wc,iRe,D2,je,Je,aRe,$t=M(()=>{"use strict";Xt();iJ=o(t=>{let{handDrawnSeed:e}=ge();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),wc=o(t=>{let e=iRe([...t.cssCompiledStyles||[],...t.cssStyles||[],...t.labelStyle||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),iRe=o(t=>{let e=new Map;return t.forEach(r=>{let[n,i]=r.split(":");e.set(n.trim(),i?.trim())}),e},"styles2Map"),D2=o(t=>t==="color"||t==="font-size"||t==="font-family"||t==="font-weight"||t==="font-style"||t==="text-decoration"||t==="text-align"||t==="text-transform"||t==="line-height"||t==="letter-spacing"||t==="word-spacing"||t==="text-shadow"||t==="text-overflow"||t==="white-space"||t==="word-wrap"||t==="word-break"||t==="overflow-wrap"||t==="hyphens","isLabelStyle"),je=o(t=>{let{stylesArray:e}=wc(t),r=[],n=[],i=[],a=[];return e.forEach(s=>{let l=s[0];D2(l)?r.push(s.join(":")+" !important"):(n.push(s.join(":")+" !important"),l.includes("stroke")&&i.push(s.join(":")+" !important"),l==="fill"&&a.push(s.join(":")+" !important"))}),{labelStyles:r.join(";"),nodeStyles:n.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:a}},"styles2String"),Je=o((t,e)=>{let{themeVariables:r,handDrawnSeed:n}=ge(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=wc(t);return Object.assign({roughness:.7,fill:s.get("fill")||a,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||i,seed:n,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:aRe(s.get("stroke-dasharray"))},e)},"userNodeOverrides"),aRe=o(t=>{if(!t)return[0,0];let e=t.trim().split(/\s+/).map(Number);if(e.length===1){let i=isNaN(e[0])?0:e[0];return[i,i]}let r=isNaN(e[0])?0:e[0],n=isNaN(e[1])?0:e[1];return[r,n]},"getStrokeDashArray")});function C9(t,e,r){if(t&&t.length){let[n,i]=e,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of t){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function sRe(t,e){return t[0]===e[0]&&t[1]===e[1]}function oRe(t,e,r,n=1){let i=r,a=Math.max(e,.1),s=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,l=[0,0];if(i)for(let h of s)C9(h,l,i);let u=(function(h,f,d){let p=[];for(let b of h){let T=[...b];sRe(T[0],T[T.length-1])||T.push([T[0][0],T[0][1]]),T.length>2&&p.push(T)}let m=[];f=Math.max(f,.1);let g=[];for(let b of p)for(let T=0;Tb.yminT.ymin?1:b.xT.x?1:b.ymax===T.ymax?0:(b.ymax-T.ymax)/Math.abs(b.ymax-T.ymax))),!g.length)return m;let y=[],v=g[0].ymin,x=0;for(;y.length||g.length;){if(g.length){let b=-1;for(let T=0;Tv);T++)b=T;g.splice(0,b+1).forEach((T=>{y.push({s:v,edge:T})}))}if(y=y.filter((b=>!(b.edge.ymax<=v))),y.sort(((b,T)=>b.edge.x===T.edge.x?0:(b.edge.x-T.edge.x)/Math.abs(b.edge.x-T.edge.x))),(d!==1||x%f==0)&&y.length>1)for(let b=0;b=y.length)break;let S=y[b].edge,w=y[T].edge;m.push([[Math.round(S.x),v],[Math.round(w.x),v]])}v+=d,y.forEach((b=>{b.edge.x=b.edge.x+d*b.edge.islope})),x++}return m})(s,a,n);if(i){for(let h of s)C9(h,l,-i);(function(h,f,d){let p=[];h.forEach((m=>p.push(...m))),C9(p,f,d)})(u,l,-i)}return u}function M2(t,e){var r;let n=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return e.roughness>=1&&(((r=e.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),oRe(t,i,n,a||1)}function iw(t){let e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}function _9(t,e){return t.type===e}function V9(t){let e=[],r=(function(s){let l=new Array;for(;s!=="";)if(s.match(/^([ \t\r\n,]+)/))s=s.substr(RegExp.$1.length);else if(s.match(/^([aAcChHlLmMqQsStTvVzZ])/))l[l.length]={type:lRe,text:RegExp.$1},s=s.substr(RegExp.$1.length);else{if(!s.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];l[l.length]={type:A9,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:aJ,text:""},l})(t),n="BOD",i=0,a=r[i];for(;!_9(a,aJ);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return V9("M0,0"+t);i++,s=KT[a.text],n=a.text}else _9(a,A9)?s=KT[n]:(i++,s=KT[a.text],n=a.text);if(!(i+sf%2?h+r:h+e));a.push({key:"C",data:u}),e=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),e=l[2],r=l[3];break;case"q":{let u=l.map(((h,f)=>f%2?h+r:h+e));a.push({key:"Q",data:u}),e=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),e=l[5],r=l[6];break;case"a":e+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],e,r]});break;case"H":a.push({key:"H",data:[...l]}),e=l[0];break;case"h":e+=l[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...l]}),r=l[0];break;case"v":r+=l[0],a.push({key:"V",data:[r]});break;case"S":a.push({key:"S",data:[...l]}),e=l[2],r=l[3];break;case"s":{let u=l.map(((h,f)=>f%2?h+r:h+e));a.push({key:"S",data:u}),e=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),e=l[0],r=l[1];break;case"t":e+=l[0],r+=l[1],a.push({key:"T",data:[e,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=n,r=i}return a}function pJ(t){let e=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of t){switch(h){case"M":e.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":e.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":e.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],e.push({key:"L",data:[n,i]});break;case"V":i=f[0],e.push({key:"L",data:[n,i]});break;case"S":{let d=0,p=0;r==="C"||r==="S"?(d=n+(n-l),p=i+(i-u)):(d=n,p=i),e.push({key:"C",data:[d,p,...f]}),l=f[0],u=f[1],n=f[2],i=f[3];break}case"T":{let[d,p]=f,m=0,g=0;r==="Q"||r==="T"?(m=n+(n-l),g=i+(i-u)):(m=n,g=i);let y=n+2*(m-n)/3,v=i+2*(g-i)/3,x=d+2*(m-d)/3,b=p+2*(g-p)/3;e.push({key:"C",data:[y,v,x,b,d,p]}),l=m,u=g,n=d,i=p;break}case"Q":{let[d,p,m,g]=f,y=n+2*(d-n)/3,v=i+2*(p-i)/3,x=m+2*(d-m)/3,b=g+2*(p-g)/3;e.push({key:"C",data:[y,v,x,b,m,g]}),l=d,u=p,n=m,i=g;break}case"A":{let d=Math.abs(f[0]),p=Math.abs(f[1]),m=f[2],g=f[3],y=f[4],v=f[5],x=f[6];d===0||p===0?(e.push({key:"C",data:[n,i,v,x,v,x]}),n=v,i=x):(n!==v||i!==x)&&(mJ(n,i,v,x,d,p,m,g,y).forEach((function(b){e.push({key:"C",data:b})})),n=v,i=x);break}case"Z":e.push({key:"Z",data:[]}),n=a,i=s}r=h}return e}function L2(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function mJ(t,e,r,n,i,a,s,l,u,h){let f=(d=s,Math.PI*d/180);var d;let p=[],m=0,g=0,y=0,v=0;if(h)[m,g,y,v]=h;else{[t,e]=L2(t,e,-f),[r,n]=L2(r,n,-f);let _=(t-r)/2,D=(e-n)/2,O=_*_/(i*i)+D*D/(a*a);O>1&&(O=Math.sqrt(O),i*=O,a*=O);let N=i*i,P=a*a,B=N*P-N*D*D-P*_*_,F=N*D*D+P*_*_,V=(l===u?-1:1)*Math.sqrt(Math.abs(B/F));y=V*i*D/a+(t+r)/2,v=V*-a*_/i+(e+n)/2,m=Math.asin(parseFloat(((e-v)/a).toFixed(9))),g=Math.asin(parseFloat(((n-v)/a).toFixed(9))),tg&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let x=g-m;if(Math.abs(x)>120*Math.PI/180){let _=g,D=r,O=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=mJ(r=y+i*Math.cos(g),n=v+a*Math.sin(g),D,O,i,a,s,0,u,[g,_,y,v])}x=g-m;let b=Math.cos(m),T=Math.sin(m),S=Math.cos(g),w=Math.sin(g),k=Math.tan(x/4),C=4/3*i*k,A=4/3*a*k,L=[t,e],I=[t+C*T,e-A*b],R=[r+C*w,n-A*S],E=[r,n];if(I[0]=2*L[0]-I[0],I[1]=2*L[1]-I[1],h)return[I,R,E].concat(p);{p=[I,R,E].concat(p);let _=[];for(let D=0;D2){let i=[];for(let a=0;a2*Math.PI&&(m=0,g=2*Math.PI);let y=2*Math.PI/u.curveStepCount,v=Math.min(y/2,(g-m)/2),x=hJ(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=hJ(v,h,f,d,p,m,g,1.5,u);x.push(...b)}return s&&(l?x.push(...Zh(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Zh(h,f,h+d*Math.cos(g),f+p*Math.sin(g),u)):x.push({op:"lineTo",data:[h,f]},{op:"lineTo",data:[h+d*Math.cos(m),f+p*Math.sin(m)]})),{type:"path",ops:x}}function lJ(t,e){let r=pJ(dJ(V9(t))),n=[],i=[0,0],a=[0,0];for(let{key:s,data:l}of r)switch(s){case"M":a=[l[0],l[1]],i=[l[0],l[1]];break;case"L":n.push(...Zh(a[0],a[1],l[0],l[1],e)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...hRe(u,h,f,d,p,m,a,e)),a=[p,m];break}case"Z":n.push(...Zh(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]]}return{type:"path",ops:n}}function D9(t,e){let r=[];for(let n of t)if(n.length){let i=e.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+or(i,e),n[0][1]+or(i,e)]});for(let s=1;s500?.4:-.0016668*u+1.233334;let f=i.maxRandomnessOffset||0;f*f*100>l&&(f=u/10);let d=f/2,p=.2+.2*vJ(i),m=i.bowing*i.maxRandomnessOffset*(n-e)/200,g=i.bowing*i.maxRandomnessOffset*(t-r)/200;m=or(m,i,h),g=or(g,i,h);let y=[],v=o(()=>or(d,i,h),"M"),x=o(()=>or(f,i,h),"k"),b=i.preserveVertices;return a&&(s?y.push({op:"move",data:[t+(b?0:v()),e+(b?0:v())]}):y.push({op:"move",data:[t+(b?0:or(f,i,h)),e+(b?0:or(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+t+(r-t)*p+v(),g+e+(n-e)*p+v(),m+t+2*(r-t)*p+v(),g+e+2*(n-e)*p+v(),r+(b?0:v()),n+(b?0:v())]}):y.push({op:"bcurveTo",data:[m+t+(r-t)*p+x(),g+e+(n-e)*p+x(),m+t+2*(r-t)*p+x(),g+e+2*(n-e)*p+x(),r+(b?0:x()),n+(b?0:x())]}),y}function QT(t,e,r){if(!t.length)return[];let n=[];n.push([t[0][0]+or(e,r),t[0][1]+or(e,r)]),n.push([t[0][0]+or(e,r),t[0][1]+or(e,r)]);for(let i=1;i3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let l=1;l+21&&i.push(l)):i.push(l),i.push(t[e+3])}else{let u=t[e+0],h=t[e+1],f=t[e+2],d=t[e+3],p=Qd(u,h,.5),m=Qd(h,f,.5),g=Qd(f,d,.5),y=Qd(p,m,.5),v=Qd(m,g,.5),x=Qd(y,v,.5);$9([u,p,y,x],0,r,i),$9([x,v,g,d],0,r,i)}var a,s;return i}function dRe(t,e){return nw(t,0,t.length,e)}function nw(t,e,r,n,i){let a=i||[],s=t[e],l=t[r-1],u=0,h=1;for(let f=e+1;fu&&(u=d,h=f)}return Math.sqrt(u)>n?(nw(t,e,h+1,n,a),nw(t,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function L9(t,e=.15,r){let n=[],i=(t.length-1)/3;for(let a=0;a0?nw(n,0,n.length,r):n}var N2,R9,N9,M9,I9,O9,Ps,P9,lRe,A9,aJ,KT,cRe,co,Em,z9,ZT,G9,Ze,Ht=M(()=>{"use strict";o(C9,"t");o(sRe,"e");o(oRe,"s");o(M2,"n");N2=class{static{o(this,"o")}constructor(e){this.helper=e}fillPolygons(e,r){return this._fillPolygons(e,r)}_fillPolygons(e,r){let n=M2(e,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(e,r){let n=[];for(let i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(iw,"a");R9=class extends N2{static{o(this,"h")}fillPolygons(e,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=M2(e,Object.assign({},r,{hachureGap:n})),a=Math.PI/180*r.hachureAngle,s=[],l=.5*n*Math.cos(a),u=.5*n*Math.sin(a);for(let[h,f]of i)iw([h,f])&&s.push([[h[0]-l,h[1]+u],[...f]],[[h[0]+l,h[1]-u],[...f]]);return{type:"fillSketch",ops:this.renderLines(s,r)}}},N9=class extends N2{static{o(this,"r")}fillPolygons(e,r){let n=this._fillPolygons(e,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(e,i);return n.ops=n.ops.concat(a.ops),n}},M9=class{static{o(this,"i")}constructor(e){this.helper=e}fillPolygons(e,r){let n=M2(e,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(e,r){let n=[],i=r.hachureGap;i<0&&(i=4*r.strokeWidth),i=Math.max(i,.1);let a=r.fillWeight;a<0&&(a=r.strokeWidth/2);let s=i/4;for(let l of e){let u=iw(l),h=u/i,f=Math.ceil(h)-1,d=u-f*i,p=(l[0][0]+l[1][0])/2-i/4,m=Math.min(l[0][1],l[1][1]);for(let g=0;g{let l=iw(s),u=Math.floor(l/(n+i)),h=(l+i-u*(n+i))/2,f=s[0],d=s[1];f[0]>d[0]&&(f=s[1],d=s[0]);let p=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let m=0;m{let s=iw(a),l=Math.round(s/(2*r)),u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);let f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d2*Math.PI&&(C=0,A=2*Math.PI);let L=(A-C)/b.curveStepCount,I=[];for(let R=C;R<=A;R+=L)I.push([T+w*Math.cos(R),S+k*Math.sin(R)]);return I.push([T+w*Math.cos(A),S+k*Math.sin(A)]),I.push([T,S]),km([I],b)})(e,r,n,i,a,s,h));return h.stroke!==co&&f.push(d),this._d("arc",f,h)}curve(e,r){let n=this._o(r),i=[],a=sJ(e,n);if(n.fill&&n.fill!==co)if(n.fillStyle==="solid"){let s=sJ(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else{let s=[],l=e;if(l.length){let u=typeof l[0][0]=="number"?[l]:l;for(let h of u)h.length<3?s.push(...h):h.length===3?s.push(...L9(fJ([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...L9(fJ(h),10,(1+n.roughness)/2))}s.length&&i.push(km([s],n))}return n.stroke!==co&&i.push(a),this._d("curve",i,n)}polygon(e,r){let n=this._o(r),i=[],a=JT(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(D9([e],n)):i.push(km([e],n))),n.stroke!==co&&i.push(a),this._d("polygon",i,n)}path(e,r){let n=this._o(r),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==co,s=n.stroke!==co,l=!!(n.simplification&&n.simplification<1),u=(function(f,d,p){let m=pJ(dJ(V9(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(...L9(x,d)),x=[]},"i"),T=o(()=>{b(),y.length&&(g.push(y),y=[])},"c");for(let{key:w,data:k}of m)switch(w){case"M":T(),v=[k[0],k[1]],y.push(v);break;case"L":b(),y.push([k[0],k[1]]);break;case"C":if(!x.length){let C=y.length?y[y.length-1]:v;x.push([C[0],C[1]])}x.push([k[0],k[1]]),x.push([k[2],k[3]]),x.push([k[4],k[5]]);break;case"Z":b(),y.push([v[0],v[1]])}if(T(),!p)return g;let S=[];for(let w of g){let k=dRe(w,p);k.length&&S.push(k)}return S})(e,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=lJ(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=lJ(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(D9(u,n));else i.push(km(u,n));return s&&(l?u.forEach((f=>{i.push(JT(f,!1,n))})):i.push(h)),this._d("path",i,n)}opsToPath(e,r){let n="";for(let i of e.ops){let a=typeof r=="number"&&r>=0?i.data.map((s=>+s.toFixed(r))):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `}}return n.trim()}toPaths(e){let r=e.sets||[],n=e.options||this.defaultOptions,i=[];for(let a of r){let s=null;switch(a.type){case"path":s={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:co};break;case"fillPath":s={d:this.opsToPath(a),stroke:co,strokeWidth:0,fill:n.fill||co};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(e,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(e),stroke:r.fill||co,strokeWidth:n,fill:co}}_mergedShape(e){return e.filter(((r,n)=>n===0||r.op!=="move"))}},z9=class{static{o(this,"st")}constructor(e,r){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new Em(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.ctx,a=e.options.fixedDecimalPlaceDigits;for(let s of r)switch(s.type){case"path":i.save(),i.strokeStyle=n.stroke==="none"?"transparent":n.stroke,i.lineWidth=n.strokeWidth,n.strokeLineDash&&i.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(i.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(i,s,a),i.restore();break;case"fillPath":{i.save(),i.fillStyle=n.fill||"";let l=e.shape==="curve"||e.shape==="polygon"||e.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),e.save(),n.fillLineDash&&e.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(e.lineDashOffset=n.fillLineDashOffset),e.strokeStyle=n.fill||"",e.lineWidth=i,this._drawToContext(e,r,n.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,r,n,i="nonzero"){e.beginPath();for(let a of r.ops){let s=typeof n=="number"&&n>=0?a.data.map((l=>+l.toFixed(n))):a.data;switch(a.op){case"move":e.moveTo(s[0],s[1]);break;case"bcurveTo":e.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":e.lineTo(s[0],s[1])}}r.type==="fillPath"?e.fill(i):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s),s}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s),s}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s),s}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a),a}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n),n}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n),n}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h),h}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n),n}path(e,r){let n=this.gen.path(e,r);return this.draw(n),n}},ZT="http://www.w3.org/2000/svg",G9=class{static{o(this,"ot")}constructor(e,r){this.svg=e,this.gen=new Em(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(ZT,"g"),s=e.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(ZT,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke",n.stroke),u.setAttribute("stroke-width",n.strokeWidth+""),u.setAttribute("fill","none"),n.strokeLineDash&&u.setAttribute("stroke-dasharray",n.strokeLineDash.join(" ").trim()),n.strokeLineDashOffset&&u.setAttribute("stroke-dashoffset",`${n.strokeLineDashOffset}`);break;case"fillPath":u=i.createElementNS(ZT,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),e.shape!=="curve"&&e.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=e.createElementNS(ZT,"path");return a.setAttribute("d",this.opsToPath(r,n.fixedDecimalPlaceDigits)),a.setAttribute("stroke",n.fill||""),a.setAttribute("stroke-width",i+""),a.setAttribute("fill","none"),n.fillLineDash&&a.setAttribute("stroke-dasharray",n.fillLineDash.join(" ").trim()),n.fillLineDashOffset&&a.setAttribute("stroke-dashoffset",`${n.fillLineDashOffset}`),a}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,r){return this.gen.opsToPath(e,r)}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s)}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s)}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s)}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a)}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n)}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n)}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h)}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n)}path(e,r){let n=this.gen.path(e,r);return this.draw(n)}},Ze={canvas:o((t,e)=>new z9(t,e),"canvas"),svg:o((t,e)=>new G9(t,e),"svg"),generator:o(t=>new Em(t),"generator"),newSeed:o(()=>Em.newSeed(),"newSeed")}});function xJ(t,e){let{labelStyles:r}=je(e);e.labelStyle=r;let n=st(e),i=n;n||(i="anchor");let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=1,{cssStyles:l}=e,u=Ze.svg(a),h=Je(e,{fill:"black",stroke:"none",fillStyle:"solid"});e.look!=="handDrawn"&&(h.roughness=0);let f=u.circle(0,0,s*2,h),d=a.insert(()=>f,":first-child");return d.attr("class","anchor").attr("style",Cn(l)),Qe(e,d),e.intersect=function(p){return X.info("Circle intersect",e,s,p),Xe.circle(e,s,p)},a}var bJ=M(()=>{"use strict";pt();It();Ut();$t();Ht();tr();o(xJ,"anchor")});function TJ(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),T=Math.atan2((e-b)/a,(t-x)/i),w=Math.atan2((n-b)/a,(r-x)/i)-T;s&&w<0&&(w+=2*Math.PI),!s&&w>0&&(w-=2*Math.PI);let k=[];for(let C=0;C<20;C++){let A=C/19,L=T+A*w,I=x+i*Math.cos(L),R=b+a*Math.sin(L);k.push({x:I,y:R})}return k}async function wJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=a.width+e.padding+20,l=a.height+e.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=e,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...TJ(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...TJ(s/2,l/2,s/2,-l/2,h,u,!0)],p=Ze.svg(i),m=Je(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Vt(d),y=p.path(g,m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(${h/2}, 0)`),Qe(e,v),e.intersect=function(x){return Xe.polygon(e,d,x)},i}var kJ=M(()=>{"use strict";It();Ut();$t();Ht();o(TJ,"generateArcPoints");o(wJ,"bowTieRect")});function Bs(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Jh=M(()=>{"use strict";o(Bs,"insertPolygonShape")});async function EJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=a.height+e.padding,l=12,u=a.width+e.padding+l,h=0,f=u,d=-s,p=0,m=[{x:h+l,y:d},{x:f,y:d},{x:f,y:p},{x:h,y:p},{x:h,y:d+l},{x:h+l,y:d}],g,{cssStyles:y}=e;if(e.look==="handDrawn"){let v=Ze.svg(i),x=Je(e,{}),b=Vt(m),T=v.path(b,x);g=i.insert(()=>T,":first-child").attr("transform",`translate(${-u/2}, ${s/2})`),y&&g.attr("style",y)}else g=Bs(i,u,s,m);return n&&g.attr("style",n),Qe(e,g),e.intersect=function(v){return Xe.polygon(e,m,v)},i}var SJ=M(()=>{"use strict";It();Ut();$t();Ht();Jh();It();o(EJ,"card")});function CJ(t,e){let{nodeStyles:r}=je(e);e.label="";let n=t.insert("g").attr("class",st(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,a=Math.max(28,e.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=Ze.svg(n),u=Je(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=Vt(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",r),e.width=28,e.height=28,e.intersect=function(p){return Xe.polygon(e,s,p)},n}var AJ=M(()=>{"use strict";Ut();Ht();$t();It();o(CJ,"choice")});async function aw(t,e,r){let{labelStyles:n,nodeStyles:i}=je(e);e.labelStyle=n;let{shapeSvg:a,bbox:s,halfPadding:l}=await ut(t,e,st(e)),u=r?.padding??l,h=s.width/2+u,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Ze.svg(a),m=Je(e,{}),g=p.circle(0,0,h*2,m);f=a.insert(()=>g,":first-child"),f.attr("class","basic label-container").attr("style",Cn(d))}else f=a.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",h).attr("cx",0).attr("cy",0);return Qe(e,f),e.calcIntersect=function(p,m){let g=p.width/2;return Xe.circle(p,g,m)},e.intersect=function(p){return X.info("Circle intersect",e,h,p),Xe.circle(e,h,p)},a}var U9=M(()=>{"use strict";Ht();pt();tr();Ut();$t();It();o(aw,"circle")});function pRe(t){let e=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=t*2,i={x:n/2*e,y:n/2*r},a={x:-(n/2)*e,y:n/2*r},s={x:-(n/2)*e,y:-(n/2)*r},l={x:n/2*e,y:-(n/2)*r};return`M ${a.x},${a.y} L ${l.x},${l.y} - M ${i.x},${i.y} L ${s.x},${s.y}`}function _J(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r,e.label="";let i=t.insert("g").attr("class",st(e)).attr("id",e.domId??e.id),a=Math.max(30,e?.width??0),{cssStyles:s}=e,l=Ze.svg(i),u=Je(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=pRe(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",n),Qe(e,p),e.intersect=function(m){return X.info("crossedCircle intersect",e,{radius:a,point:m}),Xe.circle(e,a,m)},i}var DJ=M(()=>{"use strict";pt();It();$t();Ht();Ut();o(pRe,"createLine");o(_J,"crossedCircle")});function ef(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dT,":first-child").attr("stroke-opacity",0),S.insert(()=>x,":first-child"),S.attr("class","text"),f&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,S),e.intersect=function(w){return Xe.polygon(e,p,w)},i}var RJ=M(()=>{"use strict";It();Ut();$t();Ht();o(ef,"generateCirclePoints");o(LJ,"curlyBraceLeft")});function tf(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dT,":first-child").attr("stroke-opacity",0),S.insert(()=>x,":first-child"),S.attr("class","text"),f&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,S),e.intersect=function(w){return Xe.polygon(e,p,w)},i}var MJ=M(()=>{"use strict";It();Ut();$t();Ht();o(tf,"generateCirclePoints");o(NJ,"curlyBraceRight")});function Pa(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dC,":first-child").attr("stroke-opacity",0),A.insert(()=>b,":first-child"),A.insert(()=>w,":first-child"),A.attr("class","text"),f&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,A),e.intersect=function(L){return Xe.polygon(e,m,L)},i}var OJ=M(()=>{"use strict";It();Ut();$t();Ht();o(Pa,"generateCirclePoints");o(IJ,"curlyBraces")});async function PJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=80,l=20,u=Math.max(s,(a.width+(e.padding??0)*2)*1.25,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Ze.svg(i),m=Je(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=u,y=h,v=g-f,x=y/4,b=[{x:v,y:0},{x,y:0},{x:0,y:y/2},{x,y},{x:v,y},...Kd(-v,-y/2,f,50,270,90)],T=Vt(b),S=p.path(T,m),w=i.insert(()=>S,":first-child");return w.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&w.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&w.selectChildren("path").attr("style",n),w.attr("transform",`translate(${-u/2}, ${-h/2})`),Qe(e,w),e.intersect=function(k){return Xe.polygon(e,b,k)},i}var BJ=M(()=>{"use strict";It();Ut();$t();Ht();o(PJ,"curvedTrapezoid")});async function FJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+e.padding,e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+e.padding,e.height??0),d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Ze.svg(i),g=gRe(0,0,l,f,u,h),y=yRe(0,h,l,f,u,h),v=m.path(g,Je(e,{})),x=m.path(y,Je(e,{fill:"none"}));d=i.insert(()=>x,":first-child"),d=i.insert(()=>v,":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{let m=mRe(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",Cn(p)).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qe(e,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(e.padding??0)/1.5-(a.y-(a.top??0))})`),e.intersect=function(m){let g=Xe.rect(e,m),y=g.x-(e.x??0);if(u!=0&&(Math.abs(y)<(e.width??0)/2||Math.abs(y)==(e.width??0)/2&&Math.abs(g.y-(e.y??0))>(e.height??0)/2-h)){let v=h*h*(1-y*y/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,m.y-(e.y??0)>0&&(v=-v),g.y+=v}return g},i}var mRe,gRe,yRe,$J=M(()=>{"use strict";It();Ut();$t();Ht();tr();mRe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createCylinderPathD"),gRe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),yRe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(FJ,"cylinder")});async function zJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=a.width+e.padding,u=a.height+e.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d+h},{x:-f,y:d+h},{x:-f,y:-d},{x:f,y:-d},{x:f,y:d},{x:-f,y:d},{x:-f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(e.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,x),e.intersect=function(b){return Xe.rect(e,b)},i}var GJ=M(()=>{"use strict";It();Ut();$t();Ht();o(zJ,"dividedRectangle")});async function VJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await ut(t,e,st(e)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Ze.svg(i),m=Je(e,{roughness:.2,strokeWidth:2.5}),g=Je(e,{roughness:.2,strokeWidth:1.5}),y=p.circle(0,0,u*2,m),v=p.circle(0,0,h*2,g);f=i.insert("g",":first-child"),f.attr("class",Cn(e.cssClasses)).attr("style",Cn(d)),f.node()?.appendChild(y),f.node()?.appendChild(v)}else{f=i.insert("g",":first-child");let p=f.insert("circle",":first-child"),m=f.insert("circle");f.attr("class","basic label-container").attr("style",n),p.attr("class","outer-circle").attr("style",n).attr("r",u).attr("cx",0).attr("cy",0),m.attr("class","inner-circle").attr("style",n).attr("r",h).attr("cx",0).attr("cy",0)}return Qe(e,f),e.intersect=function(p){return X.info("DoubleCircle intersect",e,u,p),Xe.circle(e,u,p)},i}var UJ=M(()=>{"use strict";pt();It();Ut();$t();Ht();tr();o(VJ,"doublecircle")});function HJ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=je(e);e.label="",e.labelStyle=n;let a=t.insert("g").attr("class",st(e)).attr("id",e.domId??e.id),s=7,{cssStyles:l}=e,u=Ze.svg(a),{nodeBorder:h}=r,f=Je(e,{fillStyle:"solid"});e.look!=="handDrawn"&&(f.roughness=0);let d=u.circle(0,0,s*2,f),p=a.insert(()=>d,":first-child");return p.selectAll("path").attr("style",`fill: ${h} !important;`),l&&l.length>0&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",i),Qe(e,p),e.intersect=function(m){return X.info("filledCircle intersect",e,{radius:s,point:m}),Xe.circle(e,s,m)},a}var qJ=M(()=>{"use strict";Ht();pt();Ut();$t();It();o(HJ,"filledCircle")});async function WJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=a.width+(e.padding??0),u=l+a.height,h=l+a.height,f=[{x:0,y:-u},{x:h,y:-u},{x:h/2,y:0}],{cssStyles:d}=e,p=Ze.svg(i),m=Je(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Vt(f),y=p.path(g,m),v=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),e.width=l,e.height=u,Qe(e,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(e.padding??0)/2+(a.y-(a.top??0))})`),e.intersect=function(x){return X.info("Triangle intersect",e,f,x),Xe.polygon(e,f,x)},i}var YJ=M(()=>{"use strict";pt();It();Ut();$t();Ht();It();o(WJ,"flippedTriangle")});function XJ(t,e,{dir:r,config:{state:n,themeVariables:i}}){let{nodeStyles:a}=je(e);e.label="";let s=t.insert("g").attr("class",st(e)).attr("id",e.domId??e.id),{cssStyles:l}=e,u=Math.max(70,e?.width??0),h=Math.max(10,e?.height??0);r==="LR"&&(u=Math.max(10,e?.width??0),h=Math.max(70,e?.height??0));let f=-1*u/2,d=-1*h/2,p=Ze.svg(s),m=Je(e,{stroke:i.lineColor,fill:i.lineColor});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",a),Qe(e,y);let v=n?.padding??0;return e.width&&e.height&&(e.width+=v/2||0,e.height+=v/2||0),e.intersect=function(x){return Xe.rect(e,x)},s}var jJ=M(()=>{"use strict";Ht();Ut();$t();It();o(XJ,"forkJoin")});async function KJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await ut(t,e,st(e)),u=Math.max(i,l.width+(e.padding??0)*2,e?.width??0),h=Math.max(a,l.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Ze.svg(s),m=Je(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...Kd(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=Vt(g),v=p.path(y,m),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),Qe(e,x),e.intersect=function(b){return X.info("Pill intersect",e,{radius:f,point:b}),Xe.polygon(e,g,b)},s}var QJ=M(()=>{"use strict";pt();It();Ut();$t();Ht();o(KJ,"halfRoundedRectangle")});async function ZJ(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=a.height+(e.padding??0),l=a.width+(e.padding??0)*2.5,{cssStyles:u}=e,h=Ze.svg(i),f=Je(e,{});e.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let d=l/2,p=d/6;d=d+p;let m=s/2,g=m/2,y=d-g,v=[{x:-y,y:-m},{x:0,y:-m},{x:y,y:-m},{x:d,y:0},{x:y,y:m},{x:0,y:m},{x:-y,y:m},{x:-d,y:0}],x=Vt(v),b=h.path(x,f),T=i.insert(()=>b,":first-child");return T.attr("class","basic label-container"),u&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",u),n&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),e.width=l,e.height=s,Qe(e,T),e.intersect=function(S){return Xe.polygon(e,v,S)},i}var JJ=M(()=>{"use strict";It();Ut();$t();Ht();o(ZJ,"hexagon")});async function eee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.label="",e.labelStyle=r;let{shapeSvg:i}=await ut(t,e,st(e)),a=Math.max(30,e?.width??0),s=Math.max(30,e?.height??0),{cssStyles:l}=e,u=Ze.svg(i),h=Je(e,{});e.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let f=[{x:0,y:0},{x:a,y:0},{x:0,y:s},{x:a,y:s}],d=Vt(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),Qe(e,m),e.intersect=function(g){return X.info("Pill intersect",e,{points:f}),Xe.polygon(e,f,g)},i}var tee=M(()=>{"use strict";pt();It();Ut();$t();Ht();o(eee,"hourglass")});async function ree(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=je(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await ut(t,e,"icon-shape default"),p=e.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=wc(e),x=-g/2,b=-m/2,T=e.label?8:0,S=Ze.svg(h),w=Je(e,{stroke:"none",fill:"none"});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let k=S.rectangle(x,b,g,m,w),C=Math.max(g,f.width),A=m+f.height+T,L=S.rectangle(-C/2,-A/2,C,A,{...w,fill:"transparent",stroke:"none"}),I=h.insert(()=>k,":first-child"),R=h.insert(()=>L);if(e.icon){let E=h.append("g");E.html(`${await _s(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let _=E.node().getBBox(),D=_.width,O=_.height,N=_.x,P=_.y;E.attr("transform",`translate(${-D/2-N},${p?f.height/2+T/2-O/2-P:-f.height/2-T/2-O/2-P})`),E.attr("style",`color: ${v.get("stroke")??y};`)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-A/2:A/2-f.height})`),I.attr("transform",`translate(0,${p?f.height/2+T/2:-f.height/2-T/2})`),Qe(e,R),e.intersect=function(E){if(X.info("iconSquare intersect",e,E),!e.label)return Xe.rect(e,E);let _=e.x??0,D=e.y??0,O=e.height??0,N=[];return p?N=[{x:_-f.width/2,y:D-O/2},{x:_+f.width/2,y:D-O/2},{x:_+f.width/2,y:D-O/2+f.height+T},{x:_+g/2,y:D-O/2+f.height+T},{x:_+g/2,y:D+O/2},{x:_-g/2,y:D+O/2},{x:_-g/2,y:D-O/2+f.height+T},{x:_-f.width/2,y:D-O/2+f.height+T}]:N=[{x:_-g/2,y:D-O/2},{x:_+g/2,y:D-O/2},{x:_+g/2,y:D-O/2+m},{x:_+f.width/2,y:D-O/2+m},{x:_+f.width/2/2,y:D+O/2},{x:_-f.width/2,y:D+O/2},{x:_-f.width/2,y:D-O/2+m},{x:_-g/2,y:D-O/2+m}],Xe.polygon(e,N,E)},h}var nee=M(()=>{"use strict";Ht();pt();nc();Ut();$t();It();o(ree,"icon")});async function iee(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=je(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await ut(t,e,"icon-shape default"),p=20,m=e.label?8:0,g=e.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=wc(e),b=Ze.svg(h),T=Je(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let S=x.get("fill");T.stroke=S??v;let w=h.append("g");e.icon&&w.html(`${await _s(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let k=w.node().getBBox(),C=k.width,A=k.height,L=k.x,I=k.y,R=Math.max(C,A)*Math.SQRT2+p*2,E=b.circle(0,0,R,T),_=Math.max(R,f.width),D=R+f.height+m,O=b.rectangle(-_/2,-D/2,_,D,{...T,fill:"transparent",stroke:"none"}),N=h.insert(()=>E,":first-child"),P=h.insert(()=>O);return w.attr("transform",`translate(${-C/2-L},${g?f.height/2+m/2-A/2-I:-f.height/2-m/2-A/2-I})`),w.attr("style",`color: ${x.get("stroke")??y};`),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-D/2:D/2-f.height})`),N.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),Qe(e,P),e.intersect=function(B){return X.info("iconSquare intersect",e,B),Xe.rect(e,B)},h}var aee=M(()=>{"use strict";Ht();pt();nc();Ut();$t();It();o(iee,"iconCircle")});var Fs,Zd=M(()=>{"use strict";Fs=o((t,e,r,n,i)=>["M",t+i,e,"H",t+r-i,"A",i,i,0,0,1,t+r,e+i,"V",e+n-i,"A",i,i,0,0,1,t+r-i,e+n,"H",t+i,"A",i,i,0,0,1,t,e+n-i,"V",e+i,"A",i,i,0,0,1,t+i,e,"Z"].join(" "),"createRoundedRectPathD")});async function see(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=je(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await ut(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=wc(e),T=-y/2,S=-g/2,w=e.label?8:0,k=Ze.svg(h),C=Je(e,{});e.look!=="handDrawn"&&(C.roughness=0,C.fillStyle="solid");let A=b.get("fill");C.stroke=A??x;let L=k.path(Fs(T,S,y,g,5),C),I=Math.max(y,f.width),R=g+f.height+w,E=k.rectangle(-I/2,-R/2,I,R,{...C,fill:"transparent",stroke:"none"}),_=h.insert(()=>L,":first-child").attr("class","icon-shape2"),D=h.insert(()=>E);if(e.icon){let O=h.append("g");O.html(`${await _s(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let N=O.node().getBBox(),P=N.width,B=N.height,F=N.x,V=N.y;O.attr("transform",`translate(${-P/2-F},${m?f.height/2+w/2-B/2-V:-f.height/2-w/2-B/2-V})`),O.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-R/2:R/2-f.height})`),_.attr("transform",`translate(0,${m?f.height/2+w/2:-f.height/2-w/2})`),Qe(e,D),e.intersect=function(O){if(X.info("iconSquare intersect",e,O),!e.label)return Xe.rect(e,O);let N=e.x??0,P=e.y??0,B=e.height??0,F=[];return m?F=[{x:N-f.width/2,y:P-B/2},{x:N+f.width/2,y:P-B/2},{x:N+f.width/2,y:P-B/2+f.height+w},{x:N+y/2,y:P-B/2+f.height+w},{x:N+y/2,y:P+B/2},{x:N-y/2,y:P+B/2},{x:N-y/2,y:P-B/2+f.height+w},{x:N-f.width/2,y:P-B/2+f.height+w}]:F=[{x:N-y/2,y:P-B/2},{x:N+y/2,y:P-B/2},{x:N+y/2,y:P-B/2+g},{x:N+f.width/2,y:P-B/2+g},{x:N+f.width/2/2,y:P+B/2},{x:N-f.width/2,y:P+B/2},{x:N-f.width/2,y:P-B/2+g},{x:N-y/2,y:P-B/2+g}],Xe.polygon(e,F,O)},h}var oee=M(()=>{"use strict";Ht();pt();nc();Ut();$t();Zd();It();o(see,"iconRounded")});async function lee(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=je(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await ut(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=wc(e),T=-y/2,S=-g/2,w=e.label?8:0,k=Ze.svg(h),C=Je(e,{});e.look!=="handDrawn"&&(C.roughness=0,C.fillStyle="solid");let A=b.get("fill");C.stroke=A??x;let L=k.path(Fs(T,S,y,g,.1),C),I=Math.max(y,f.width),R=g+f.height+w,E=k.rectangle(-I/2,-R/2,I,R,{...C,fill:"transparent",stroke:"none"}),_=h.insert(()=>L,":first-child"),D=h.insert(()=>E);if(e.icon){let O=h.append("g");O.html(`${await _s(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let N=O.node().getBBox(),P=N.width,B=N.height,F=N.x,V=N.y;O.attr("transform",`translate(${-P/2-F},${m?f.height/2+w/2-B/2-V:-f.height/2-w/2-B/2-V})`),O.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-R/2:R/2-f.height})`),_.attr("transform",`translate(0,${m?f.height/2+w/2:-f.height/2-w/2})`),Qe(e,D),e.intersect=function(O){if(X.info("iconSquare intersect",e,O),!e.label)return Xe.rect(e,O);let N=e.x??0,P=e.y??0,B=e.height??0,F=[];return m?F=[{x:N-f.width/2,y:P-B/2},{x:N+f.width/2,y:P-B/2},{x:N+f.width/2,y:P-B/2+f.height+w},{x:N+y/2,y:P-B/2+f.height+w},{x:N+y/2,y:P+B/2},{x:N-y/2,y:P+B/2},{x:N-y/2,y:P-B/2+f.height+w},{x:N-f.width/2,y:P-B/2+f.height+w}]:F=[{x:N-y/2,y:P-B/2},{x:N+y/2,y:P-B/2},{x:N+y/2,y:P-B/2+g},{x:N+f.width/2,y:P-B/2+g},{x:N+f.width/2/2,y:P+B/2},{x:N-f.width/2,y:P+B/2},{x:N-f.width/2,y:P-B/2+g},{x:N-y/2,y:P-B/2+g}],Xe.polygon(e,F,O)},h}var cee=M(()=>{"use strict";Ht();pt();nc();Ut();Zd();$t();It();o(lee,"iconSquare")});async function uee(t,e,{config:{flowchart:r}}){let n=new Image;n.src=e?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/a;let{labelStyles:s}=je(e);e.labelStyle=s;let l=r?.wrappingWidth;e.defaultWidth=r?.wrappingWidth;let u=Math.max(e.label?l??0:0,e?.assetWidth??i),h=e.constraint==="on"&&e?.assetHeight?e.assetHeight*e.imageAspectRatio:u,f=e.constraint==="on"?h/e.imageAspectRatio:e?.assetHeight??a;e.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await ut(t,e,"image-shape default"),g=e.pos==="t",y=-h/2,v=-f/2,x=e.label?8:0,b=Ze.svg(d),T=Je(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let S=b.rectangle(y,v,h,f,T),w=Math.max(h,p.width),k=f+p.height+x,C=b.rectangle(-w/2,-k/2,w,k,{...T,fill:"none",stroke:"none"}),A=d.insert(()=>S,":first-child"),L=d.insert(()=>C);if(e.img){let I=d.append("image");I.attr("href",e.img),I.attr("width",h),I.attr("height",f),I.attr("preserveAspectRatio","none"),I.attr("transform",`translate(${-h/2},${g?k/2-f:-k/2})`)}return m.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-f/2-p.height/2-x/2:f/2-p.height/2+x/2})`),A.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),Qe(e,L),e.intersect=function(I){if(X.info("iconSquare intersect",e,I),!e.label)return Xe.rect(e,I);let R=e.x??0,E=e.y??0,_=e.height??0,D=[];return g?D=[{x:R-p.width/2,y:E-_/2},{x:R+p.width/2,y:E-_/2},{x:R+p.width/2,y:E-_/2+p.height+x},{x:R+h/2,y:E-_/2+p.height+x},{x:R+h/2,y:E+_/2},{x:R-h/2,y:E+_/2},{x:R-h/2,y:E-_/2+p.height+x},{x:R-p.width/2,y:E-_/2+p.height+x}]:D=[{x:R-h/2,y:E-_/2},{x:R+h/2,y:E-_/2},{x:R+h/2,y:E-_/2+f},{x:R+p.width/2,y:E-_/2+f},{x:R+p.width/2/2,y:E+_/2},{x:R-p.width/2,y:E+_/2},{x:R-p.width/2,y:E-_/2+f},{x:R-h/2,y:E-_/2+f}],Xe.polygon(e,D,I)},d}var hee=M(()=>{"use strict";Ht();pt();Ut();$t();It();o(uee,"imageSquare")});async function fee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ze.svg(i),p=Je(e,{}),m=Vt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Bs(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return Xe.polygon(e,u,d)},i}var dee=M(()=>{"use strict";It();Ut();$t();Ht();Jh();o(fee,"inv_trapezoid")});async function Jd(t,e,r){let{labelStyles:n,nodeStyles:i}=je(e);e.labelStyle=n;let{shapeSvg:a,bbox:s}=await ut(t,e,st(e)),l=Math.max(s.width+r.labelPaddingX*2,e?.width||0),u=Math.max(s.height+r.labelPaddingY*2,e?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=e,{cssStyles:g}=e;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),e.look==="handDrawn"){let y=Ze.svg(a),v=Je(e,{}),x=p||m?y.path(Fs(h,f,l,u,p||0),v):y.rectangle(h,f,l,u,v);d=a.insert(()=>x,":first-child"),d.attr("class","basic label-container").attr("style",Cn(g))}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",Cn(p)).attr("ry",Cn(m)).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return Qe(e,d),e.calcIntersect=function(y,v){return Xe.rect(y,v)},e.intersect=function(y){return Xe.rect(e,y)},a}var I2=M(()=>{"use strict";It();Ut();Zd();$t();Ht();tr();o(Jd,"drawRect")});async function pee(t,e){let{shapeSvg:r,bbox:n,label:i}=await ut(t,e,"label"),a=r.insert("rect",":first-child");return a.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Qe(e,a),e.intersect=function(u){return Xe.rect(e,u)},r}var mee=M(()=>{"use strict";I2();It();Ut();o(pee,"labelRect")});async function gee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:0,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:-(3*l)/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ze.svg(i),p=Je(e,{}),m=Vt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Bs(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return Xe.polygon(e,u,d)},i}var yee=M(()=>{"use strict";It();Ut();$t();Ht();Jh();o(gee,"lean_left")});async function vee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:-3*l/6,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ze.svg(i),p=Je(e,{}),m=Vt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Bs(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return Xe.polygon(e,u,d)},i}var xee=M(()=>{"use strict";It();Ut();$t();Ht();Jh();o(vee,"lean_right")});function bee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.label="",e.labelStyle=r;let i=t.insert("g").attr("class",st(e)).attr("id",e.domId??e.id),{cssStyles:a}=e,s=Math.max(35,e?.width??0),l=Math.max(35,e?.height??0),u=7,h=[{x:s,y:0},{x:0,y:l+u/2},{x:s-2*u,y:l+u/2},{x:0,y:2*l},{x:s,y:l-u/2},{x:2*u,y:l-u/2}],f=Ze.svg(i),d=Je(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=Vt(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),Qe(e,g),e.intersect=function(y){return X.info("lightningBolt intersect",e,y),Xe.polygon(e,h,y)},i}var Tee=M(()=>{"use strict";pt();It();$t();Ht();Ut();It();o(bee,"lightningBolt")});async function wee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0),e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(e.padding??0),e.height??0),d=f*.1,p,{cssStyles:m}=e;if(e.look==="handDrawn"){let g=Ze.svg(i),y=xRe(0,0,l,f,u,h,d),v=bRe(0,h,l,f,u,h),x=Je(e,{}),b=g.path(y,x),T=g.path(v,x);i.insert(()=>T,":first-child").attr("class","line"),p=i.insert(()=>b,":first-child"),p.attr("class","basic label-container"),m&&p.attr("style",m)}else{let g=vRe(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",Cn(m)).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qe(e,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),e.intersect=function(g){let y=Xe.rect(e,g),v=y.x-(e.x??0);if(u!=0&&(Math.abs(v)<(e.width??0)/2||Math.abs(v)==(e.width??0)/2&&Math.abs(y.y-(e.y??0))>(e.height??0)/2-h)){let x=h*h*(1-v*v/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,g.y-(e.y??0)>0&&(x=-x),y.y+=x}return y},i}var vRe,xRe,bRe,kee=M(()=>{"use strict";It();Ut();$t();Ht();tr();vRe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),xRe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),bRe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(wee,"linedCylinder")});async function Eee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,{cssStyles:d}=e,p=Ze.svg(i),m=Je(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-l/2-l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:f/2},...Go(-l/2-l/2*.1,f/2,l/2+l/2*.1,f/2,h,.8),{x:l/2+l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:-f/2},{x:-l/2,y:-f/2},{x:-l/2,y:f/2*1.1},{x:-l/2,y:-f/2}],y=p.polygon(g.map(x=>[x.x,x.y]),m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Qe(e,v),e.intersect=function(x){return Xe.polygon(e,g,x)},i}var See=M(()=>{"use strict";It();Ut();Ht();$t();o(Eee,"linedWaveEdgedRect")});async function Cee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{}),y=[{x:f-h,y:d+h},{x:f-h,y:d+u+h},{x:f+l-h,y:d+u+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d+u-h},{x:f+l+h,y:d+u-h},{x:f+l+h,y:d-h},{x:f+h,y:d-h},{x:f+h,y:d},{x:f,y:d},{x:f,y:d+h}],v=[{x:f,y:d+h},{x:f+l-h,y:d+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d},{x:f,y:d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Vt(y),b=m.path(x,g),T=Vt(v),S=m.path(T,{...g,fill:"none"}),w=i.insert(()=>S,":first-child");return w.insert(()=>b,":first-child"),w.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)-h-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),Qe(e,w),e.intersect=function(k){return Xe.polygon(e,y,k)},i}var Aee=M(()=>{"use strict";It();$t();Ht();Ut();o(Cee,"multiRect")});async function _ee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=e,y=Go(d-m,p+f+m,d+l-m,p+f+m,h,.8),v=y?.[y.length-1],x=[{x:d-m,y:p+m},{x:d-m,y:p+f+m},...y,{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:v.y-2*m},{x:d+l+m,y:v.y-2*m},{x:d+l+m,y:p-m},{x:d+m,y:p-m},{x:d+m,y:p},{x:d,y:p},{x:d,y:p+m}],b=[{x:d,y:p+m},{x:d+l-m,y:p+m},{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:p},{x:d,y:p}],T=Ze.svg(i),S=Je(e,{});e.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let w=Vt(x),k=T.path(w,S),C=Vt(b),A=T.path(C,S),L=i.insert(()=>k,":first-child");return L.insert(()=>A),L.attr("class","basic label-container"),g&&e.look!=="handDrawn"&&L.selectAll("path").attr("style",g),n&&e.look!=="handDrawn"&&L.selectAll("path").attr("style",n),L.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-(a.width/2)-m-(a.x-(a.left??0))}, ${-(a.height/2)+m-h/2-(a.y-(a.top??0))})`),Qe(e,L),e.intersect=function(I){return Xe.polygon(e,x,I)},i}var Dee=M(()=>{"use strict";It();Ut();Ht();$t();o(_ee,"multiWaveEdgedRectangle")});async function Lee(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=je(e);e.labelStyle=n,e.useHtmlLabels||Qt().flowchart?.htmlLabels!==!1||(e.centerLabel=!0);let{shapeSvg:s,bbox:l,label:u}=await ut(t,e,st(e)),h=Math.max(l.width+(e.padding??0)*2,e?.width??0),f=Math.max(l.height+(e.padding??0)*2,e?.height??0),d=-h/2,p=-f/2,{cssStyles:m}=e,g=Ze.svg(s),y=Je(e,{fill:r.noteBkgColor,stroke:r.noteBorderColor});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=g.rectangle(d,p,h,f,y),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",m),i&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",i),u.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),Qe(e,x),e.intersect=function(b){return Xe.rect(e,b)},s}var Ree=M(()=>{"use strict";Ht();Ut();$t();It();qn();o(Lee,"note")});async function Nee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=a.width+e.padding,l=a.height+e.padding,u=s+l,h=.5,f=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Ze.svg(i),g=Je(e,{}),y=TRe(0,0,u),v=m.path(y,g);d=i.insert(()=>v,":first-child").attr("transform",`translate(${-u/2+h}, ${u/2})`),p&&d.attr("style",p)}else d=Bs(i,u,u,f),d.attr("transform",`translate(${-u/2+h}, ${u/2})`);return n&&d.attr("style",n),Qe(e,d),e.calcIntersect=function(m,g){let y=m.width,v=[{x:y/2,y:0},{x:y,y:-y/2},{x:y/2,y:-y},{x:0,y:-y/2}],x=Xe.polygon(m,v,g);return{x:x.x-.5,y:x.y-.5}},e.intersect=function(m){return this.calcIntersect(e,m)},i}var TRe,Mee=M(()=>{"use strict";It();Ut();$t();Ht();Jh();TRe=o((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" "),"createDecisionBoxPathD");o(Nee,"question")});async function Iee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0),e?.width??0),u=Math.max(a.height+(e.padding??0),e?.height??0),h=-l/2,f=-u/2,d=f/2,p=[{x:h+d,y:f},{x:h,y:0},{x:h+d,y:-f},{x:-h,y:-f},{x:-h,y:f}],{cssStyles:m}=e,g=Ze.svg(i),y=Je(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=Vt(p),x=g.path(v,y),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),b.attr("transform",`translate(${-d/2},0)`),s.attr("transform",`translate(${-d/2-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Qe(e,b),e.intersect=function(T){return Xe.polygon(e,p,T)},i}var Oee=M(()=>{"use strict";It();Ut();$t();Ht();o(Iee,"rect_left_inv_arrow")});function wRe(t,e){e&&t.attr("style",e)}async function kRe(t){let e=qe(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=ge(),i=t.label;t.label&&kn(t.label)&&(i=await kh(t.label.replace(tt.lineBreakRegex,` -`),n));let s='"+i+"";return r.html(sr(s,n)),wRe(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}var ERe,kc,sw=M(()=>{"use strict";yr();Xt();gr();pt();tr();o(wRe,"applyStyle");o(kRe,"addHtmlLabel");ERe=o(async(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),vr(ge().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),X.info("vertexText"+i);let a={isNode:n,label:Ji(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:e&&e.replace("fill:","color:")};return await kRe(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),kc=ERe});async function Pee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let i;e.cssClasses?i="node "+e.cssClasses:i="node default";let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=e.description,h=e.label,f=l.node().appendChild(await kc(h,e.labelStyle,!0,!0)),d={width:0,height:0};if(vr(ge()?.flowchart?.htmlLabels)){let A=f.children[0],L=qe(f);d=A.getBoundingClientRect(),L.attr("width",d.width),L.attr("height",d.height)}X.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await kc(p.join?p.join("
    "):p,e.labelStyle,!0,!0)),y=g.children[0],v=qe(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(e.padding||0)/2;qe(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),qe(f).attr("transform","translate( "+(d.width(X.debug("Rough node insert CXC",I),R),":first-child"),k=a.insert(()=>(X.debug("Rough node insert CXC",I),I),":first-child")}else k=s.insert("rect",":first-child"),C=s.insert("line"),k.attr("class","outer title-state").attr("style",n).attr("x",-d.width/2-x).attr("y",-d.height/2-x).attr("width",d.width+(e.padding||0)).attr("height",d.height+(e.padding||0)),C.attr("class","divider").attr("x1",-d.width/2-x).attr("x2",d.width/2+x).attr("y1",-d.height/2-x+m.height+x).attr("y2",-d.height/2-x+m.height+x);return Qe(e,k),e.intersect=function(A){return Xe.rect(e,A)},a}var Bee=M(()=>{"use strict";yr();gr();It();sw();Ut();$t();Ht();Xt();Zd();pt();o(Pee,"rectWithTitle")});function ow(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),T=Math.atan2((e-b)/a,(t-x)/i),w=Math.atan2((n-b)/a,(r-x)/i)-T;s&&w<0&&(w+=2*Math.PI),!s&&w>0&&(w-=2*Math.PI);let k=[];for(let C=0;C<20;C++){let A=C/19,L=T+A*w,I=x+i*Math.cos(L),R=b+a*Math.sin(L);k.push({x:I,y:R})}return k}async function Fee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=e?.padding??0,l=e?.padding??0,u=(e?.width?e?.width:a.width)+s*2,h=(e?.height?e?.height:a.height)+l*2,f=e.radius||5,d=e.taper||5,{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{});e.stroke&&(g.stroke=e.stroke),e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:-u/2+d,y:-h/2},{x:u/2-d,y:-h/2},...ow(u/2-d,-h/2,u/2,-h/2+d,f,f,!0),{x:u/2,y:-h/2+d},{x:u/2,y:h/2-d},...ow(u/2,h/2-d,u/2-d,h/2,f,f,!0),{x:u/2-d,y:h/2},{x:-u/2+d,y:h/2},...ow(-u/2+d,h/2,-u/2,h/2-d,f,f,!0),{x:-u/2,y:h/2-d},{x:-u/2,y:-h/2+d},...ow(-u/2,-h/2+d,-u/2+d,-h/2,f,f,!0)],v=Vt(y),x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container outer-path"),p&&e.look!=="handDrawn"&&b.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectChildren("path").attr("style",n),Qe(e,b),e.intersect=function(T){return Xe.polygon(e,y,T)},i}var $ee=M(()=>{"use strict";It();Ut();$t();Ht();o(ow,"generateArcPoints");o(Fee,"roundedRect")});async function zee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=e?.padding??0,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d},{x:f+u+8,y:d},{x:f+u+8,y:d+h},{x:f-8,y:d+h},{x:f-8,y:d},{x:f,y:d},{x:f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container").attr("style",Cn(p)),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(e.padding??0)-(a.x-(a.left??0))},${-h/2+(e.padding??0)-(a.y-(a.top??0))})`),Qe(e,x),e.intersect=function(b){return Xe.rect(e,b)},i}var Gee=M(()=>{"use strict";It();Ut();$t();Ht();tr();o(zee,"shadedProcess")});async function Vee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=e,p=Ze.svg(i),m=Je(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:h,y:f},{x:h,y:f+u},{x:h+l,y:f+u},{x:h+l,y:f-u/2}],y=Vt(g),v=p.path(y,m),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),x.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))}, ${-u/4+(e.padding??0)-(a.y-(a.top??0))})`),Qe(e,x),e.intersect=function(b){return Xe.polygon(e,g,b)},i}var Uee=M(()=>{"use strict";It();Ut();$t();Ht();o(Vee,"slopedRect")});async function Hee(t,e){let r={rx:0,ry:0,classes:"",labelPaddingX:e.labelPaddingX??(e?.padding||0)*2,labelPaddingY:(e?.padding||0)*1};return Jd(t,e,r)}var qee=M(()=>{"use strict";I2();o(Hee,"squareRect")});async function Wee(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=a.height+e.padding,l=a.width+s/4+e.padding,u=s/2,{cssStyles:h}=e,f=Ze.svg(i),d=Je(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=[{x:-l/2+u,y:-s/2},{x:l/2-u,y:-s/2},...Kd(-l/2+u,0,u,50,90,270),{x:l/2-u,y:s/2},...Kd(l/2-u,0,u,50,270,450)],m=Vt(p),g=f.path(m,d),y=i.insert(()=>g,":first-child");return y.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn"&&y.selectChildren("path").attr("style",h),n&&e.look!=="handDrawn"&&y.selectChildren("path").attr("style",n),Qe(e,y),e.intersect=function(v){return Xe.polygon(e,p,v)},i}var Yee=M(()=>{"use strict";It();Ut();$t();Ht();o(Wee,"stadium")});async function Xee(t,e){return Jd(t,e,{rx:5,ry:5,classes:"flowchart-node"})}var jee=M(()=>{"use strict";I2();o(Xee,"state")});function Kee(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=je(e);e.labelStyle=n;let{cssStyles:a}=e,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),f=Ze.svg(h),d=Je(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=f.circle(0,0,14,{...d,stroke:s,strokeWidth:2}),m=l??u,g=f.circle(0,0,5,{...d,fill:m,stroke:m,strokeWidth:2,fillStyle:"solid"}),y=h.insert(()=>p,":first-child");return y.insert(()=>g),a&&y.selectAll("path").attr("style",a),i&&y.selectAll("path").attr("style",i),Qe(e,y),e.intersect=function(v){return Xe.circle(e,7,v)},h}var Qee=M(()=>{"use strict";Ht();Ut();$t();It();o(Kee,"stateEnd")});function Zee(t,e,{config:{themeVariables:r}}){let{lineColor:n}=r,i=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let l=Ze.svg(i).circle(0,0,14,iJ(n));a=i.insert(()=>l),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14)}else a=i.insert("circle",":first-child"),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14);return Qe(e,a),e.intersect=function(s){return Xe.circle(e,7,s)},i}var Jee=M(()=>{"use strict";Ht();Ut();$t();It();o(Zee,"stateStart")});async function ete(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=(e?.padding||0)/2,l=a.width+e.padding,u=a.height+e.padding,h=-a.width/2-s,f=-a.height/2-s,d=[{x:0,y:0},{x:l,y:0},{x:l,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-u},{x:-8,y:-u},{x:-8,y:0}];if(e.look==="handDrawn"){let p=Ze.svg(i),m=Je(e,{}),g=p.rectangle(h-8,f,l+16,u,m),y=p.line(h,f,h,f+u,m),v=p.line(h+l,f,h+l,f+u,m);i.insert(()=>y,":first-child"),i.insert(()=>v,":first-child");let x=i.insert(()=>g,":first-child"),{cssStyles:b}=e;x.attr("class","basic label-container").attr("style",Cn(b)),Qe(e,x)}else{let p=Bs(i,l,u,d);n&&p.attr("style",n),Qe(e,p)}return e.intersect=function(p){return Xe.polygon(e,d,p)},i}var tte=M(()=>{"use strict";It();Ut();$t();Ht();Jh();tr();o(ete,"subroutine")});async function rte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{}),y=[{x:u-f/2,y:h},{x:u+s+f/2,y:h},{x:u+s+f/2,y:h+l},{x:u-f/2,y:h+l}],v=[{x:u+s-f/2,y:h+l},{x:u+s+f/2,y:h+l},{x:u+s+f/2,y:h+l-d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Vt(y),b=m.path(x,g),T=Vt(v),S=m.path(T,{...g,fillStyle:"solid"}),w=i.insert(()=>S,":first-child");return w.insert(()=>b,":first-child"),w.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),Qe(e,w),e.intersect=function(k){return Xe.polygon(e,y,k)},i}var nte=M(()=>{"use strict";It();$t();Ht();Ut();o(rte,"taggedRect")});async function ite(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=e,g=Ze.svg(i),y=Je(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...Go(-l/2-l/2*.1,p/2,l/2+l/2*.1,p/2,h,.8),{x:l/2+l/2*.1,y:-p/2},{x:-l/2-l/2*.1,y:-p/2}],x=-l/2+l/2*.1,b=-p/2-d*.4,T=[{x:x+l-f,y:(b+u)*1.4},{x:x+l,y:b+u-d},{x:x+l,y:(b+u)*.9},...Go(x+l,(b+u)*1.3,x+l-f,(b+u)*1.5,-u*.03,.5)],S=Vt(v),w=g.path(S,y),k=Vt(T),C=g.path(k,{...y,fillStyle:"solid"}),A=i.insert(()=>C,":first-child");return A.insert(()=>w,":first-child"),A.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Qe(e,A),e.intersect=function(L){return Xe.polygon(e,v,L)},i}var ate=M(()=>{"use strict";It();Ut();Ht();$t();o(ite,"taggedWaveEdgedRectangle")});async function ste(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=Math.max(a.width+e.padding,e?.width||0),l=Math.max(a.height+e.padding,e?.height||0),u=-s/2,h=-l/2,f=i.insert("rect",":first-child");return f.attr("class","text").attr("style",n).attr("rx",0).attr("ry",0).attr("x",u).attr("y",h).attr("width",s).attr("height",l),Qe(e,f),e.intersect=function(d){return Xe.rect(e,d)},i}var ote=M(()=>{"use strict";It();Ut();$t();o(ste,"text")});async function lte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await ut(t,e,st(e)),u=e.look==="neo"?l*2:l,h=a.height+u,f=h/2,d=f/(2.5+h/50),p=a.width+d+u,{cssStyles:m}=e,g;if(e.look==="handDrawn"){let y=Ze.svg(i),v=CRe(0,0,p,h,d,f),x=ARe(0,0,p,h,d,f),b=y.path(v,Je(e,{})),T=y.path(x,Je(e,{fill:"none"}));g=i.insert(()=>T,":first-child"),g=i.insert(()=>b,":first-child"),g.attr("class","basic label-container"),m&&g.attr("style",m)}else{let y=SRe(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",Cn(m)).attr("style",n),g.attr("class","basic label-container"),m&&g.selectAll("path").attr("style",m),n&&g.selectAll("path").attr("style",n)}return g.attr("label-offset-x",d),g.attr("transform",`translate(${-p/2}, ${h/2} )`),s.attr("transform",`translate(${-(a.width/2)-d-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Qe(e,g),e.intersect=function(y){let v=Xe.rect(e,y),x=v.y-(e.y??0);if(f!=0&&(Math.abs(x)<(e.height??0)/2||Math.abs(x)==(e.height??0)/2&&Math.abs(v.x-(e.x??0))>(e.width??0)/2-d)){let b=d*d*(1-x*x/(f*f));b!=0&&(b=Math.sqrt(Math.abs(b))),b=d-b,y.x-(e.x??0)>0&&(b=-b),v.x+=b}return v},i}var SRe,CRe,ARe,cte=M(()=>{"use strict";It();$t();Ht();Ut();tr();SRe=o((t,e,r,n,i,a)=>`M${t},${e} +`),i=bw(n);return e===!1?i.replace(/ /g," "):i}function Ene(t,e={}){let r=QBe(t,e),n=dn.lexer(r),i=[[]],a=0;function s(l,u="normal"){l.type==="text"?l.text.split(` +`).forEach((f,d)=>{d!==0&&(a++,i.push([])),f.split(" ").forEach(p=>{p=p.replace(/'/g,"'"),p&&i[a].push({content:p,type:u})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(h=>{s(h,l.type)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}return o(s,"processNode"),n.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(u=>{s(u)}):l.type==="html"?i[a].push({content:l.text,type:"normal"}):i[a].push({content:l.raw,type:"normal"})}),i}function Cne(t,{markdownAutoWrap:e}={}){let r=dn.lexer(t);function n(i){return i.type==="text"?e===!1?i.text.replace(/\n */g,"
    ").replace(/ /g," "):i.text.replace(/\n */g,"
    "):i.type==="strong"?`${i.tokens?.map(n).join("")}`:i.type==="em"?`${i.tokens?.map(n).join("")}`:i.type==="paragraph"?`

    ${i.tokens?.map(n).join("")}

    `:i.type==="space"?"":i.type==="html"?`${i.text}`:i.type==="escape"?i.text:(X.warn(`Unsupported markdown: ${i.type}`),i.raw)}return o(n,"output"),r.map(n).join("")}var Ane=I(()=>{"use strict";Sne();nD();gt();o(QBe,"preprocessMarkdown");o(Ene,"markdownToLines");o(Cne,"markdownToHTML")});function ZBe(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function JBe(t,e){let r=ZBe(e.content);return _ne(t,[],r,e.type)}function _ne(t,e,r,n){if(r.length===0)return[{content:e.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...e,i];return t([{content:s.join(""),type:n}])?_ne(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function Dne(t,e){if(t.some(({content:r})=>r.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return XN(t,e)}function XN(t,e,r=[],n=[]){if(t.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";t[0].content===" "&&(i=" ",t.shift());let a=t.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),e(s))return XN(t,e,r,s);if(n.length>0)r.push(n),t.unshift(a);else if(a.content){let[l,u]=JBe(e,a);r.push([l]),u.content&&t.unshift(u)}return XN(t,e,r)}var Rne=I(()=>{"use strict";o(ZBe,"splitTextToChars");o(JBe,"splitWordToFitWidth");o(_ne,"splitWordToFitWidthRecursion");o(Dne,"splitLineToFitWidth");o(XN,"splitLineToFitWidthRecursion")});function Lne(t,e){e&&t.attr("style",e)}async function eFe(t,e,r,n,i=!1,a=tr()){let s=t.append("foreignObject");s.attr("width",`${10*r}px`),s.attr("height",`${10*r}px`);let l=s.append("xhtml:div"),u=Nn(e.label)?await vf(e.label.replace(nt.lineBreakRegex,` +`),a):fr(e.label,a),h=e.isNode?"nodeLabel":"edgeLabel",f=l.append("span");f.html(u),Lne(f,e.labelStyle),f.attr("class",`${h} ${n}`),Lne(l,e.labelStyle),l.style("display","table-cell"),l.style("white-space","nowrap"),l.style("line-height","1.5"),l.style("max-width",r+"px"),l.style("text-align","center"),l.attr("xmlns","http://www.w3.org/1999/xhtml"),i&&l.attr("class","labelBkg");let d=l.node().getBoundingClientRect();return d.width===r&&(l.style("display","table"),l.style("white-space","break-spaces"),l.style("width",r+"px"),d=l.node().getBoundingClientRect()),s.node()}function KN(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function tFe(t,e,r){let n=t.append("text"),i=KN(n,1,e);QN(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function Nne(t,e,r){let n=t.append("text"),i=KN(n,1,e);QN(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function rFe(t,e,r,n=!1){let a=e.append("g"),s=a.insert("rect").attr("class","background").attr("style","stroke: none"),l=a.append("text").attr("y","-10.1"),u=0;for(let h of r){let f=o(p=>tFe(a,1.1,p)<=t,"checkWidth"),d=f(h)?[h]:Dne(h,f);for(let p of d){let m=KN(l,u,1.1);QN(m,p),u++}}if(n){let h=l.node().getBBox(),f=2;return s.attr("x",h.x-f).attr("y",h.y-f).attr("width",h.width+2*f).attr("height",h.height+2*f),a.node()}else return l.node()}function QN(t,e){t.text(""),e.forEach((r,n)=>{let i=t.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}async function ZN(t,e={}){let r=[];t.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(i,a,s)=>(r.push((async()=>{let l=`${a}:${s}`;return await Gj(l)?await Ks(l,void 0,{class:"label-icon"}):``})()),i));let n=await Promise.all(r);return t.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>n.shift()??"")}var Ai,yl=I(()=>{"use strict";kr();wr();gt();Ane();sr();Gc();Rne();ti();o(Lne,"applyStyle");o(eFe,"addHtmlSpan");o(KN,"createTspan");o(tFe,"computeWidthOfText");o(Nne,"computeDimensionOfText");o(rFe,"createFormattedText");o(QN,"updateTextContentAndStyles");o(ZN,"replaceIconSubstring");Ai=o(async(t,e="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(X.debug("XYZ createText",e,r,n,i,a,s,"addSvgBackground: ",u),a){let f=Cne(e,h),d=await ZN(ga(f),h),p=e.replace(/\\\\/g,"\\"),m={isNode:s,label:Nn(e)?p:d,labelStyle:r.replace("fill:","color:")};return await eFe(t,m,l,i,u,h)}else{let f=e.replace(//g,"
    "),d=Ene(f.replace("
    ","
    "),h),p=rFe(l,t,d,e?u:!1);if(s){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");He(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");He(p).select("rect").attr("style",m.replace(/background:/g,"fill:"));let g=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");He(p).select("text").attr("style",g)}return p}},"createText")});function Wt(t){let e=t.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return e.push("Z"),e.join(" ")}function vl(t,e,r,n,i,a){let s=[],u=r-t,h=n-e,f=u/a,d=2*Math.PI/f,p=e+h/2;for(let m=0;m<=50;m++){let g=m/50,y=t+g*u,v=p+i*Math.sin(d*(y-t));s.push({x:y,y:v})}return s}function d0(t,e,r,n,i,a){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";yl();Qt();kr();Ka();wr();sr();ft=o(async(t,e,r)=>{let n,i=e.useHtmlLabels||Sr(xe()?.htmlLabels);r?n=r:n="node default";let a=t.insert("g").attr("class",n).attr("id",e.domId||e.id),s=a.insert("g").attr("class","label").attr("style",On(e.labelStyle)),l;e.label===void 0?l="":l=typeof e.label=="string"?e.label:e.label[0];let u=await Ai(s,fr(ga(l),xe()),{useHtmlLabels:i,width:e.width||xe().flowchart?.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle,addSvgBackground:!!e.icon||!!e.img}),h=u.getBBox(),f=(e?.padding??0)/2;if(i){let d=u.children[0],p=He(u),m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=xe().fontSize?xe().fontSize:window.getComputedStyle(document.body).fontSize,T=5,[E=gr.fontSize]=ru(b),w=E*T+"px";y.style.minWidth=w,y.style.maxWidth=w}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return i?s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):s.attr("transform","translate(0, "+-h.height/2+")"),e.centerLabel&&s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),s.insert("rect",":first-child"),{shapeSvg:a,bbox:h,halfPadding:f,label:s}},"labelHelper"),Lk=o(async(t,e,r)=>{let n=r.useHtmlLabels||Sr(xe()?.flowchart?.htmlLabels),i=t.insert("g").attr("class","label").attr("style",r.labelStyle||""),a=await Ai(i,fr(ga(e),xe()),{useHtmlLabels:n,width:r.width||xe()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),s=a.getBBox(),l=r.padding/2;if(Sr(xe()?.flowchart?.htmlLabels)){let u=a.children[0],h=He(a);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}return n?i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"):i.attr("transform","translate(0, "+-s.height/2+")"),r.centerLabel&&i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),i.insert("rect",":first-child"),{shapeSvg:t,bbox:s,halfPadding:l,label:i}},"insertLabel"),Ze=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds"),lt=o((t,e)=>(t.look==="handDrawn"?"rough-node":"node")+" "+t.cssClasses+" "+(e||""),"getNodeClasses");o(Wt,"createPathFromPoints");o(vl,"generateFullSineWavePoints");o(d0,"generateCirclePoints")});function nFe(t,e){return t.intersect(e)}var Mne,Ine=I(()=>{"use strict";o(nFe,"intersectNode");Mne=nFe});function iFe(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(iFe,"intersectEllipse");Nk=iFe});function aFe(t,e,r){return Nk(t,e,e,r)}var One,Pne=I(()=>{"use strict";JN();o(aFe,"intersectCircle");One=aFe});function sFe(t,e,r,n){{let i=e.y-t.y,a=t.x-e.x,s=e.x*t.y-t.x*e.y,l=i*r.x+a*r.y+s,u=i*n.x+a*n.y+s,h=1e-6;if(l!==0&&u!==0&&Bne(l,u))return;let f=n.y-r.y,d=r.x-n.x,p=n.x*r.y-r.x*n.y,m=f*t.x+d*t.y+p,g=f*e.x+d*e.y+p;if(Math.abs(m)0}var Fne,$ne=I(()=>{"use strict";o(sFe,"intersectLine");o(Bne,"sameSign");Fne=sFe});function oFe(t,e,r){let n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));let u=n-t.width/2-s,h=i-t.height/2-l;for(let f=0;f1&&a.sort(function(f,d){let p=f.x-r.x,m=f.y-r.y,g=Math.sqrt(p*p+m*m),y=d.x-r.x,v=d.y-r.y,x=Math.sqrt(y*y+v*v);return g{"use strict";$ne();o(oFe,"intersectPolygon");zne=oFe});var lFe,Hf,eM=I(()=>{"use strict";lFe=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),Hf=lFe});var Ke,Ht=I(()=>{"use strict";Ine();Pne();JN();Gne();eM();Ke={node:Mne,circle:One,ellipse:Nk,polygon:zne,rect:Hf}});var Vne,su,cFe,Zx,Qe,tt,uFe,Vt=I(()=>{"use strict";Qt();Vne=o(t=>{let{handDrawnSeed:e}=xe();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),su=o(t=>{let e=cFe([...t.cssCompiledStyles||[],...t.cssStyles||[],...t.labelStyle||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),cFe=o(t=>{let e=new Map;return t.forEach(r=>{let[n,i]=r.split(":");e.set(n.trim(),i?.trim())}),e},"styles2Map"),Zx=o(t=>t==="color"||t==="font-size"||t==="font-family"||t==="font-weight"||t==="font-style"||t==="text-decoration"||t==="text-align"||t==="text-transform"||t==="line-height"||t==="letter-spacing"||t==="word-spacing"||t==="text-shadow"||t==="text-overflow"||t==="white-space"||t==="word-wrap"||t==="word-break"||t==="overflow-wrap"||t==="hyphens","isLabelStyle"),Qe=o(t=>{let{stylesArray:e}=su(t),r=[],n=[],i=[],a=[];return e.forEach(s=>{let l=s[0];Zx(l)?r.push(s.join(":")+" !important"):(n.push(s.join(":")+" !important"),l.includes("stroke")&&i.push(s.join(":")+" !important"),l==="fill"&&a.push(s.join(":")+" !important"))}),{labelStyles:r.join(";"),nodeStyles:n.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:a}},"styles2String"),tt=o((t,e)=>{let{themeVariables:r,handDrawnSeed:n}=xe(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=su(t);return Object.assign({roughness:.7,fill:s.get("fill")||a,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||i,seed:n,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:uFe(s.get("stroke-dasharray"))},e)},"userNodeOverrides"),uFe=o(t=>{if(!t)return[0,0];let e=t.trim().split(/\s+/).map(Number);if(e.length===1){let i=isNaN(e[0])?0:e[0];return[i,i]}let r=isNaN(e[0])?0:e[0],n=isNaN(e[1])?0:e[1];return[r,n]},"getStrokeDashArray")});function tM(t,e,r){if(t&&t.length){let[n,i]=e,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of t){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function hFe(t,e){return t[0]===e[0]&&t[1]===e[1]}function fFe(t,e,r,n=1){let i=r,a=Math.max(e,.1),s=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,l=[0,0];if(i)for(let h of s)tM(h,l,i);let u=(function(h,f,d){let p=[];for(let b of h){let T=[...b];hFe(T[0],T[T.length-1])||T.push([T[0][0],T[0][1]]),T.length>2&&p.push(T)}let m=[];f=Math.max(f,.1);let g=[];for(let b of p)for(let T=0;Tb.yminT.ymin?1:b.xT.x?1:b.ymax===T.ymax?0:(b.ymax-T.ymax)/Math.abs(b.ymax-T.ymax))),!g.length)return m;let y=[],v=g[0].ymin,x=0;for(;y.length||g.length;){if(g.length){let b=-1;for(let T=0;Tv);T++)b=T;g.splice(0,b+1).forEach((T=>{y.push({s:v,edge:T})}))}if(y=y.filter((b=>!(b.edge.ymax<=v))),y.sort(((b,T)=>b.edge.x===T.edge.x?0:(b.edge.x-T.edge.x)/Math.abs(b.edge.x-T.edge.x))),(d!==1||x%f==0)&&y.length>1)for(let b=0;b=y.length)break;let E=y[b].edge,w=y[T].edge;m.push([[Math.round(E.x),v],[Math.round(w.x),v]])}v+=d,y.forEach((b=>{b.edge.x=b.edge.x+d*b.edge.islope})),x++}return m})(s,a,n);if(i){for(let h of s)tM(h,l,-i);(function(h,f,d){let p=[];h.forEach((m=>p.push(...m))),tM(p,f,d)})(u,l,-i)}return u}function rb(t,e){var r;let n=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return e.roughness>=1&&(((r=e.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),fFe(t,i,n,a||1)}function Gk(t){let e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}function nM(t,e){return t.type===e}function yM(t){let e=[],r=(function(s){let l=new Array;for(;s!=="";)if(s.match(/^([ \t\r\n,]+)/))s=s.substr(RegExp.$1.length);else if(s.match(/^([aAcChHlLmMqQsStTvVzZ])/))l[l.length]={type:dFe,text:RegExp.$1},s=s.substr(RegExp.$1.length);else{if(!s.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];l[l.length]={type:rM,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:qne,text:""},l})(t),n="BOD",i=0,a=r[i];for(;!nM(a,qne);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return yM("M0,0"+t);i++,s=Mk[a.text],n=a.text}else nM(a,rM)?s=Mk[n]:(i++,s=Mk[a.text],n=a.text);if(!(i+sf%2?h+r:h+e));a.push({key:"C",data:u}),e=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),e=l[2],r=l[3];break;case"q":{let u=l.map(((h,f)=>f%2?h+r:h+e));a.push({key:"Q",data:u}),e=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),e=l[5],r=l[6];break;case"a":e+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],e,r]});break;case"H":a.push({key:"H",data:[...l]}),e=l[0];break;case"h":e+=l[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...l]}),r=l[0];break;case"v":r+=l[0],a.push({key:"V",data:[r]});break;case"S":a.push({key:"S",data:[...l]}),e=l[2],r=l[3];break;case"s":{let u=l.map(((h,f)=>f%2?h+r:h+e));a.push({key:"S",data:u}),e=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),e=l[0],r=l[1];break;case"t":e+=l[0],r+=l[1],a.push({key:"T",data:[e,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=n,r=i}return a}function Zne(t){let e=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of t){switch(h){case"M":e.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":e.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":e.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],e.push({key:"L",data:[n,i]});break;case"V":i=f[0],e.push({key:"L",data:[n,i]});break;case"S":{let d=0,p=0;r==="C"||r==="S"?(d=n+(n-l),p=i+(i-u)):(d=n,p=i),e.push({key:"C",data:[d,p,...f]}),l=f[0],u=f[1],n=f[2],i=f[3];break}case"T":{let[d,p]=f,m=0,g=0;r==="Q"||r==="T"?(m=n+(n-l),g=i+(i-u)):(m=n,g=i);let y=n+2*(m-n)/3,v=i+2*(g-i)/3,x=d+2*(m-d)/3,b=p+2*(g-p)/3;e.push({key:"C",data:[y,v,x,b,d,p]}),l=m,u=g,n=d,i=p;break}case"Q":{let[d,p,m,g]=f,y=n+2*(d-n)/3,v=i+2*(p-i)/3,x=m+2*(d-m)/3,b=g+2*(p-g)/3;e.push({key:"C",data:[y,v,x,b,m,g]}),l=d,u=p,n=m,i=g;break}case"A":{let d=Math.abs(f[0]),p=Math.abs(f[1]),m=f[2],g=f[3],y=f[4],v=f[5],x=f[6];d===0||p===0?(e.push({key:"C",data:[n,i,v,x,v,x]}),n=v,i=x):(n!==v||i!==x)&&(Jne(n,i,v,x,d,p,m,g,y).forEach((function(b){e.push({key:"C",data:b})})),n=v,i=x);break}case"Z":e.push({key:"Z",data:[]}),n=a,i=s}r=h}return e}function Jx(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function Jne(t,e,r,n,i,a,s,l,u,h){let f=(d=s,Math.PI*d/180);var d;let p=[],m=0,g=0,y=0,v=0;if(h)[m,g,y,v]=h;else{[t,e]=Jx(t,e,-f),[r,n]=Jx(r,n,-f);let A=(t-r)/2,_=(e-n)/2,N=A*A/(i*i)+_*_/(a*a);N>1&&(N=Math.sqrt(N),i*=N,a*=N);let M=i*i,P=a*a,B=M*P-M*_*_-P*A*A,F=M*_*_+P*A*A,G=(l===u?-1:1)*Math.sqrt(Math.abs(B/F));y=G*i*_/a+(t+r)/2,v=G*-a*A/i+(e+n)/2,m=Math.asin(parseFloat(((e-v)/a).toFixed(9))),g=Math.asin(parseFloat(((n-v)/a).toFixed(9))),tg&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let x=g-m;if(Math.abs(x)>120*Math.PI/180){let A=g,_=r,N=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=Jne(r=y+i*Math.cos(g),n=v+a*Math.sin(g),_,N,i,a,s,0,u,[g,A,y,v])}x=g-m;let b=Math.cos(m),T=Math.sin(m),E=Math.cos(g),w=Math.sin(g),k=Math.tan(x/4),C=4/3*i*k,D=4/3*a*k,R=[t,e],O=[t+C*T,e-D*b],L=[r+C*w,n-D*E],S=[r,n];if(O[0]=2*R[0]-O[0],O[1]=2*R[1]-O[1],h)return[O,L,S].concat(p);{p=[O,L,S].concat(p);let A=[];for(let _=0;_2){let i=[];for(let a=0;a2*Math.PI&&(m=0,g=2*Math.PI);let y=2*Math.PI/u.curveStepCount,v=Math.min(y/2,(g-m)/2),x=Xne(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=Xne(v,h,f,d,p,m,g,1.5,u);x.push(...b)}return s&&(l?x.push(...Yf(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Yf(h,f,h+d*Math.cos(g),f+p*Math.sin(g),u)):x.push({op:"lineTo",data:[h,f]},{op:"lineTo",data:[h+d*Math.cos(m),f+p*Math.sin(m)]})),{type:"path",ops:x}}function Hne(t,e){let r=Zne(Qne(yM(t))),n=[],i=[0,0],a=[0,0];for(let{key:s,data:l}of r)switch(s){case"M":a=[l[0],l[1]],i=[l[0],l[1]];break;case"L":n.push(...Yf(a[0],a[1],l[0],l[1],e)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...gFe(u,h,f,d,p,m,a,e)),a=[p,m];break}case"Z":n.push(...Yf(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]]}return{type:"path",ops:n}}function iM(t,e){let r=[];for(let n of t)if(n.length){let i=e.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+dr(i,e),n[0][1]+dr(i,e)]});for(let s=1;s500?.4:-.0016668*u+1.233334;let f=i.maxRandomnessOffset||0;f*f*100>l&&(f=u/10);let d=f/2,p=.2+.2*rie(i),m=i.bowing*i.maxRandomnessOffset*(n-e)/200,g=i.bowing*i.maxRandomnessOffset*(t-r)/200;m=dr(m,i,h),g=dr(g,i,h);let y=[],v=o(()=>dr(d,i,h),"M"),x=o(()=>dr(f,i,h),"k"),b=i.preserveVertices;return a&&(s?y.push({op:"move",data:[t+(b?0:v()),e+(b?0:v())]}):y.push({op:"move",data:[t+(b?0:dr(f,i,h)),e+(b?0:dr(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+t+(r-t)*p+v(),g+e+(n-e)*p+v(),m+t+2*(r-t)*p+v(),g+e+2*(n-e)*p+v(),r+(b?0:v()),n+(b?0:v())]}):y.push({op:"bcurveTo",data:[m+t+(r-t)*p+x(),g+e+(n-e)*p+x(),m+t+2*(r-t)*p+x(),g+e+2*(n-e)*p+x(),r+(b?0:x()),n+(b?0:x())]}),y}function Ik(t,e,r){if(!t.length)return[];let n=[];n.push([t[0][0]+dr(e,r),t[0][1]+dr(e,r)]),n.push([t[0][0]+dr(e,r),t[0][1]+dr(e,r)]);for(let i=1;i3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let l=1;l+21&&i.push(l)):i.push(l),i.push(t[e+3])}else{let u=t[e+0],h=t[e+1],f=t[e+2],d=t[e+3],p=p0(u,h,.5),m=p0(h,f,.5),g=p0(f,d,.5),y=p0(p,m,.5),v=p0(m,g,.5),x=p0(y,v,.5);pM([u,p,y,x],0,r,i),pM([x,v,g,d],0,r,i)}var a,s;return i}function vFe(t,e){return zk(t,0,t.length,e)}function zk(t,e,r,n,i){let a=i||[],s=t[e],l=t[r-1],u=0,h=1;for(let f=e+1;fu&&(u=d,h=f)}return Math.sqrt(u)>n?(zk(t,e,h+1,n,a),zk(t,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function aM(t,e=.15,r){let n=[],i=(t.length-1)/3;for(let a=0;a0?zk(n,0,n.length,r):n}var tb,sM,oM,lM,cM,uM,io,hM,dFe,rM,qne,Mk,pFe,Bo,o1,mM,Ok,gM,Je,Yt=I(()=>{"use strict";o(tM,"t");o(hFe,"e");o(fFe,"s");o(rb,"n");tb=class{static{o(this,"o")}constructor(e){this.helper=e}fillPolygons(e,r){return this._fillPolygons(e,r)}_fillPolygons(e,r){let n=rb(e,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(e,r){let n=[];for(let i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(Gk,"a");sM=class extends tb{static{o(this,"h")}fillPolygons(e,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=rb(e,Object.assign({},r,{hachureGap:n})),a=Math.PI/180*r.hachureAngle,s=[],l=.5*n*Math.cos(a),u=.5*n*Math.sin(a);for(let[h,f]of i)Gk([h,f])&&s.push([[h[0]-l,h[1]+u],[...f]],[[h[0]+l,h[1]-u],[...f]]);return{type:"fillSketch",ops:this.renderLines(s,r)}}},oM=class extends tb{static{o(this,"r")}fillPolygons(e,r){let n=this._fillPolygons(e,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(e,i);return n.ops=n.ops.concat(a.ops),n}},lM=class{static{o(this,"i")}constructor(e){this.helper=e}fillPolygons(e,r){let n=rb(e,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(e,r){let n=[],i=r.hachureGap;i<0&&(i=4*r.strokeWidth),i=Math.max(i,.1);let a=r.fillWeight;a<0&&(a=r.strokeWidth/2);let s=i/4;for(let l of e){let u=Gk(l),h=u/i,f=Math.ceil(h)-1,d=u-f*i,p=(l[0][0]+l[1][0])/2-i/4,m=Math.min(l[0][1],l[1][1]);for(let g=0;g{let l=Gk(s),u=Math.floor(l/(n+i)),h=(l+i-u*(n+i))/2,f=s[0],d=s[1];f[0]>d[0]&&(f=s[1],d=s[0]);let p=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let m=0;m{let s=Gk(a),l=Math.round(s/(2*r)),u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);let f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d2*Math.PI&&(C=0,D=2*Math.PI);let R=(D-C)/b.curveStepCount,O=[];for(let L=C;L<=D;L+=R)O.push([T+w*Math.cos(L),E+k*Math.sin(L)]);return O.push([T+w*Math.cos(D),E+k*Math.sin(D)]),O.push([T,E]),s1([O],b)})(e,r,n,i,a,s,h));return h.stroke!==Bo&&f.push(d),this._d("arc",f,h)}curve(e,r){let n=this._o(r),i=[],a=Une(e,n);if(n.fill&&n.fill!==Bo)if(n.fillStyle==="solid"){let s=Une(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else{let s=[],l=e;if(l.length){let u=typeof l[0][0]=="number"?[l]:l;for(let h of u)h.length<3?s.push(...h):h.length===3?s.push(...aM(Kne([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...aM(Kne(h),10,(1+n.roughness)/2))}s.length&&i.push(s1([s],n))}return n.stroke!==Bo&&i.push(a),this._d("curve",i,n)}polygon(e,r){let n=this._o(r),i=[],a=Pk(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(iM([e],n)):i.push(s1([e],n))),n.stroke!==Bo&&i.push(a),this._d("polygon",i,n)}path(e,r){let n=this._o(r),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==Bo,s=n.stroke!==Bo,l=!!(n.simplification&&n.simplification<1),u=(function(f,d,p){let m=Zne(Qne(yM(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(...aM(x,d)),x=[]},"i"),T=o(()=>{b(),y.length&&(g.push(y),y=[])},"c");for(let{key:w,data:k}of m)switch(w){case"M":T(),v=[k[0],k[1]],y.push(v);break;case"L":b(),y.push([k[0],k[1]]);break;case"C":if(!x.length){let C=y.length?y[y.length-1]:v;x.push([C[0],C[1]])}x.push([k[0],k[1]]),x.push([k[2],k[3]]),x.push([k[4],k[5]]);break;case"Z":b(),y.push([v[0],v[1]])}if(T(),!p)return g;let E=[];for(let w of g){let k=vFe(w,p);k.length&&E.push(k)}return E})(e,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=Hne(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=Hne(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(iM(u,n));else i.push(s1(u,n));return s&&(l?u.forEach((f=>{i.push(Pk(f,!1,n))})):i.push(h)),this._d("path",i,n)}opsToPath(e,r){let n="";for(let i of e.ops){let a=typeof r=="number"&&r>=0?i.data.map((s=>+s.toFixed(r))):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `}}return n.trim()}toPaths(e){let r=e.sets||[],n=e.options||this.defaultOptions,i=[];for(let a of r){let s=null;switch(a.type){case"path":s={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:Bo};break;case"fillPath":s={d:this.opsToPath(a),stroke:Bo,strokeWidth:0,fill:n.fill||Bo};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(e,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(e),stroke:r.fill||Bo,strokeWidth:n,fill:Bo}}_mergedShape(e){return e.filter(((r,n)=>n===0||r.op!=="move"))}},mM=class{static{o(this,"st")}constructor(e,r){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new o1(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.ctx,a=e.options.fixedDecimalPlaceDigits;for(let s of r)switch(s.type){case"path":i.save(),i.strokeStyle=n.stroke==="none"?"transparent":n.stroke,i.lineWidth=n.strokeWidth,n.strokeLineDash&&i.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(i.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(i,s,a),i.restore();break;case"fillPath":{i.save(),i.fillStyle=n.fill||"";let l=e.shape==="curve"||e.shape==="polygon"||e.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),e.save(),n.fillLineDash&&e.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(e.lineDashOffset=n.fillLineDashOffset),e.strokeStyle=n.fill||"",e.lineWidth=i,this._drawToContext(e,r,n.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,r,n,i="nonzero"){e.beginPath();for(let a of r.ops){let s=typeof n=="number"&&n>=0?a.data.map((l=>+l.toFixed(n))):a.data;switch(a.op){case"move":e.moveTo(s[0],s[1]);break;case"bcurveTo":e.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":e.lineTo(s[0],s[1])}}r.type==="fillPath"?e.fill(i):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s),s}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s),s}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s),s}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a),a}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n),n}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n),n}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h),h}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n),n}path(e,r){let n=this.gen.path(e,r);return this.draw(n),n}},Ok="http://www.w3.org/2000/svg",gM=class{static{o(this,"ot")}constructor(e,r){this.svg=e,this.gen=new o1(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(Ok,"g"),s=e.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(Ok,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke",n.stroke),u.setAttribute("stroke-width",n.strokeWidth+""),u.setAttribute("fill","none"),n.strokeLineDash&&u.setAttribute("stroke-dasharray",n.strokeLineDash.join(" ").trim()),n.strokeLineDashOffset&&u.setAttribute("stroke-dashoffset",`${n.strokeLineDashOffset}`);break;case"fillPath":u=i.createElementNS(Ok,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),e.shape!=="curve"&&e.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=e.createElementNS(Ok,"path");return a.setAttribute("d",this.opsToPath(r,n.fixedDecimalPlaceDigits)),a.setAttribute("stroke",n.fill||""),a.setAttribute("stroke-width",i+""),a.setAttribute("fill","none"),n.fillLineDash&&a.setAttribute("stroke-dasharray",n.fillLineDash.join(" ").trim()),n.fillLineDashOffset&&a.setAttribute("stroke-dashoffset",`${n.fillLineDashOffset}`),a}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,r){return this.gen.opsToPath(e,r)}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s)}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s)}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s)}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a)}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n)}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n)}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h)}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n)}path(e,r){let n=this.gen.path(e,r);return this.draw(n)}},Je={canvas:o((t,e)=>new mM(t,e),"canvas"),svg:o((t,e)=>new gM(t,e),"svg"),generator:o(t=>new o1(t),"generator"),newSeed:o(()=>o1.newSeed(),"newSeed")}});function nie(t,e){let{labelStyles:r}=Qe(e);e.labelStyle=r;let n=lt(e),i=n;n||(i="anchor");let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=1,{cssStyles:l}=e,u=Je.svg(a),h=tt(e,{fill:"black",stroke:"none",fillStyle:"solid"});e.look!=="handDrawn"&&(h.roughness=0);let f=u.circle(0,0,s*2,h),d=a.insert(()=>f,":first-child");return d.attr("class","anchor").attr("style",On(l)),Ze(e,d),e.intersect=function(p){return X.info("Circle intersect",e,s,p),Ke.circle(e,s,p)},a}var iie=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();sr();o(nie,"anchor")});function aie(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),T=Math.atan2((e-b)/a,(t-x)/i),w=Math.atan2((n-b)/a,(r-x)/i)-T;s&&w<0&&(w+=2*Math.PI),!s&&w>0&&(w-=2*Math.PI);let k=[];for(let C=0;C<20;C++){let D=C/19,R=T+D*w,O=x+i*Math.cos(R),L=b+a*Math.sin(R);k.push({x:O,y:L})}return k}async function sie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=a.width+e.padding+20,l=a.height+e.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=e,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...aie(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...aie(s/2,l/2,s/2,-l/2,h,u,!0)],p=Je.svg(i),m=tt(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Wt(d),y=p.path(g,m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(${h/2}, 0)`),Ze(e,v),e.intersect=function(x){return Ke.polygon(e,d,x)},i}var oie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(aie,"generateArcPoints");o(sie,"bowTieRect")});function ao(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var jf=I(()=>{"use strict";o(ao,"insertPolygonShape")});async function lie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=a.height+e.padding,l=12,u=a.width+e.padding+l,h=0,f=u,d=-s,p=0,m=[{x:h+l,y:d},{x:f,y:d},{x:f,y:p},{x:h,y:p},{x:h,y:d+l},{x:h+l,y:d}],g,{cssStyles:y}=e;if(e.look==="handDrawn"){let v=Je.svg(i),x=tt(e,{}),b=Wt(m),T=v.path(b,x);g=i.insert(()=>T,":first-child").attr("transform",`translate(${-u/2}, ${s/2})`),y&&g.attr("style",y)}else g=ao(i,u,s,m);return n&&g.attr("style",n),Ze(e,g),e.intersect=function(v){return Ke.polygon(e,m,v)},i}var cie=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();Bt();o(lie,"card")});function uie(t,e){let{nodeStyles:r}=Qe(e);e.label="";let n=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,a=Math.max(28,e.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=Je.svg(n),u=tt(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=Wt(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",r),e.width=28,e.height=28,e.intersect=function(p){return Ke.polygon(e,s,p)},n}var hie=I(()=>{"use strict";Ht();Yt();Vt();Bt();o(uie,"choice")});async function Vk(t,e,r){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n;let{shapeSvg:a,bbox:s,halfPadding:l}=await ft(t,e,lt(e)),u=r?.padding??l,h=s.width/2+u,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Je.svg(a),m=tt(e,{}),g=p.circle(0,0,h*2,m);f=a.insert(()=>g,":first-child"),f.attr("class","basic label-container").attr("style",On(d))}else f=a.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",h).attr("cx",0).attr("cy",0);return Ze(e,f),e.calcIntersect=function(p,m){let g=p.width/2;return Ke.circle(p,g,m)},e.intersect=function(p){return X.info("Circle intersect",e,h,p),Ke.circle(e,h,p)},a}var vM=I(()=>{"use strict";Yt();gt();sr();Ht();Vt();Bt();o(Vk,"circle")});function xFe(t){let e=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=t*2,i={x:n/2*e,y:n/2*r},a={x:-(n/2)*e,y:n/2*r},s={x:-(n/2)*e,y:-(n/2)*r},l={x:n/2*e,y:-(n/2)*r};return`M ${a.x},${a.y} L ${l.x},${l.y} + M ${i.x},${i.y} L ${s.x},${s.y}`}function fie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r,e.label="";let i=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),a=Math.max(30,e?.width??0),{cssStyles:s}=e,l=Je.svg(i),u=tt(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=xFe(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",n),Ze(e,p),e.intersect=function(m){return X.info("crossedCircle intersect",e,{radius:a,point:m}),Ke.circle(e,a,m)},i}var die=I(()=>{"use strict";gt();Bt();Vt();Yt();Ht();o(xFe,"createLine");o(fie,"crossedCircle")});function Xf(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dT,":first-child").attr("stroke-opacity",0),E.insert(()=>x,":first-child"),E.attr("class","text"),f&&e.look!=="handDrawn"&&E.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&E.selectAll("path").attr("style",n),E.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Ze(e,E),e.intersect=function(w){return Ke.polygon(e,p,w)},i}var mie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Xf,"generateCirclePoints");o(pie,"curlyBraceLeft")});function Kf(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dT,":first-child").attr("stroke-opacity",0),E.insert(()=>x,":first-child"),E.attr("class","text"),f&&e.look!=="handDrawn"&&E.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&E.selectAll("path").attr("style",n),E.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Ze(e,E),e.intersect=function(w){return Ke.polygon(e,p,w)},i}var yie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Kf,"generateCirclePoints");o(gie,"curlyBraceRight")});function ts(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dC,":first-child").attr("stroke-opacity",0),D.insert(()=>b,":first-child"),D.insert(()=>w,":first-child"),D.attr("class","text"),f&&e.look!=="handDrawn"&&D.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&D.selectAll("path").attr("style",n),D.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Ze(e,D),e.intersect=function(R){return Ke.polygon(e,m,R)},i}var xie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(ts,"generateCirclePoints");o(vie,"curlyBraces")});async function bie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=80,l=20,u=Math.max(s,(a.width+(e.padding??0)*2)*1.25,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Je.svg(i),m=tt(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=u,y=h,v=g-f,x=y/4,b=[{x:v,y:0},{x,y:0},{x:0,y:y/2},{x,y},{x:v,y},...d0(-v,-y/2,f,50,270,90)],T=Wt(b),E=p.path(T,m),w=i.insert(()=>E,":first-child");return w.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&w.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&w.selectChildren("path").attr("style",n),w.attr("transform",`translate(${-u/2}, ${-h/2})`),Ze(e,w),e.intersect=function(k){return Ke.polygon(e,b,k)},i}var Tie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(bie,"curvedTrapezoid")});async function wie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+e.padding,e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+e.padding,e.height??0),d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Je.svg(i),g=TFe(0,0,l,f,u,h),y=wFe(0,h,l,f,u,h),v=m.path(g,tt(e,{})),x=m.path(y,tt(e,{fill:"none"}));d=i.insert(()=>x,":first-child"),d=i.insert(()=>v,":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{let m=bFe(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",On(p)).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Ze(e,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(e.padding??0)/1.5-(a.y-(a.top??0))})`),e.intersect=function(m){let g=Ke.rect(e,m),y=g.x-(e.x??0);if(u!=0&&(Math.abs(y)<(e.width??0)/2||Math.abs(y)==(e.width??0)/2&&Math.abs(g.y-(e.y??0))>(e.height??0)/2-h)){let v=h*h*(1-y*y/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,m.y-(e.y??0)>0&&(v=-v),g.y+=v}return g},i}var bFe,TFe,wFe,kie=I(()=>{"use strict";Bt();Ht();Vt();Yt();sr();bFe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createCylinderPathD"),TFe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),wFe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(wie,"cylinder")});async function Sie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=a.width+e.padding,u=a.height+e.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d+h},{x:-f,y:d+h},{x:-f,y:-d},{x:f,y:-d},{x:f,y:d},{x:-f,y:d},{x:-f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(e.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(e.padding??0)/2-(a.y-(a.top??0))})`),Ze(e,x),e.intersect=function(b){return Ke.rect(e,b)},i}var Eie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Sie,"dividedRectangle")});async function Cie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await ft(t,e,lt(e)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Je.svg(i),m=tt(e,{roughness:.2,strokeWidth:2.5}),g=tt(e,{roughness:.2,strokeWidth:1.5}),y=p.circle(0,0,u*2,m),v=p.circle(0,0,h*2,g);f=i.insert("g",":first-child"),f.attr("class",On(e.cssClasses)).attr("style",On(d)),f.node()?.appendChild(y),f.node()?.appendChild(v)}else{f=i.insert("g",":first-child");let p=f.insert("circle",":first-child"),m=f.insert("circle");f.attr("class","basic label-container").attr("style",n),p.attr("class","outer-circle").attr("style",n).attr("r",u).attr("cx",0).attr("cy",0),m.attr("class","inner-circle").attr("style",n).attr("r",h).attr("cx",0).attr("cy",0)}return Ze(e,f),e.intersect=function(p){return X.info("DoubleCircle intersect",e,u,p),Ke.circle(e,u,p)},i}var Aie=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();sr();o(Cie,"doublecircle")});function _ie(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.label="",e.labelStyle=n;let a=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),s=7,{cssStyles:l}=e,u=Je.svg(a),{nodeBorder:h}=r,f=tt(e,{fillStyle:"solid"});e.look!=="handDrawn"&&(f.roughness=0);let d=u.circle(0,0,s*2,f),p=a.insert(()=>d,":first-child");return p.selectAll("path").attr("style",`fill: ${h} !important;`),l&&l.length>0&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",i),Ze(e,p),e.intersect=function(m){return X.info("filledCircle intersect",e,{radius:s,point:m}),Ke.circle(e,s,m)},a}var Die=I(()=>{"use strict";Yt();gt();Ht();Vt();Bt();o(_ie,"filledCircle")});async function Rie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=a.width+(e.padding??0),u=l+a.height,h=l+a.height,f=[{x:0,y:-u},{x:h,y:-u},{x:h/2,y:0}],{cssStyles:d}=e,p=Je.svg(i),m=tt(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Wt(f),y=p.path(g,m),v=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),e.width=l,e.height=u,Ze(e,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(e.padding??0)/2+(a.y-(a.top??0))})`),e.intersect=function(x){return X.info("Triangle intersect",e,f,x),Ke.polygon(e,f,x)},i}var Lie=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();Bt();o(Rie,"flippedTriangle")});function Nie(t,e,{dir:r,config:{state:n,themeVariables:i}}){let{nodeStyles:a}=Qe(e);e.label="";let s=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),{cssStyles:l}=e,u=Math.max(70,e?.width??0),h=Math.max(10,e?.height??0);r==="LR"&&(u=Math.max(10,e?.width??0),h=Math.max(70,e?.height??0));let f=-1*u/2,d=-1*h/2,p=Je.svg(s),m=tt(e,{stroke:i.lineColor,fill:i.lineColor});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",a),Ze(e,y);let v=n?.padding??0;return e.width&&e.height&&(e.width+=v/2||0,e.height+=v/2||0),e.intersect=function(x){return Ke.rect(e,x)},s}var Mie=I(()=>{"use strict";Yt();Ht();Vt();Bt();o(Nie,"forkJoin")});async function Iie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await ft(t,e,lt(e)),u=Math.max(i,l.width+(e.padding??0)*2,e?.width??0),h=Math.max(a,l.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Je.svg(s),m=tt(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...d0(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=Wt(g),v=p.path(y,m),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),Ze(e,x),e.intersect=function(b){return X.info("Pill intersect",e,{radius:f,point:b}),Ke.polygon(e,g,b)},s}var Oie=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();o(Iie,"halfRoundedRectangle")});async function Pie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=a.height+(e.padding??0),l=a.width+(e.padding??0)*2.5,{cssStyles:u}=e,h=Je.svg(i),f=tt(e,{});e.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let d=l/2,p=d/6;d=d+p;let m=s/2,g=m/2,y=d-g,v=[{x:-y,y:-m},{x:0,y:-m},{x:y,y:-m},{x:d,y:0},{x:y,y:m},{x:0,y:m},{x:-y,y:m},{x:-d,y:0}],x=Wt(v),b=h.path(x,f),T=i.insert(()=>b,":first-child");return T.attr("class","basic label-container"),u&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",u),n&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),e.width=l,e.height=s,Ze(e,T),e.intersect=function(E){return Ke.polygon(e,v,E)},i}var Bie=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Pie,"hexagon")});async function Fie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.label="",e.labelStyle=r;let{shapeSvg:i}=await ft(t,e,lt(e)),a=Math.max(30,e?.width??0),s=Math.max(30,e?.height??0),{cssStyles:l}=e,u=Je.svg(i),h=tt(e,{});e.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let f=[{x:0,y:0},{x:a,y:0},{x:0,y:s},{x:a,y:s}],d=Wt(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),Ze(e,m),e.intersect=function(g){return X.info("Pill intersect",e,{points:f}),Ke.polygon(e,f,g)},i}var $ie=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();o(Fie,"hourglass")});async function zie(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await ft(t,e,"icon-shape default"),p=e.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=su(e),x=-g/2,b=-m/2,T=e.label?8:0,E=Je.svg(h),w=tt(e,{stroke:"none",fill:"none"});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let k=E.rectangle(x,b,g,m,w),C=Math.max(g,f.width),D=m+f.height+T,R=E.rectangle(-C/2,-D/2,C,D,{...w,fill:"transparent",stroke:"none"}),O=h.insert(()=>k,":first-child"),L=h.insert(()=>R);if(e.icon){let S=h.append("g");S.html(`${await Ks(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let A=S.node().getBBox(),_=A.width,N=A.height,M=A.x,P=A.y;S.attr("transform",`translate(${-_/2-M},${p?f.height/2+T/2-N/2-P:-f.height/2-T/2-N/2-P})`),S.attr("style",`color: ${v.get("stroke")??y};`)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-D/2:D/2-f.height})`),O.attr("transform",`translate(0,${p?f.height/2+T/2:-f.height/2-T/2})`),Ze(e,L),e.intersect=function(S){if(X.info("iconSquare intersect",e,S),!e.label)return Ke.rect(e,S);let A=e.x??0,_=e.y??0,N=e.height??0,M=[];return p?M=[{x:A-f.width/2,y:_-N/2},{x:A+f.width/2,y:_-N/2},{x:A+f.width/2,y:_-N/2+f.height+T},{x:A+g/2,y:_-N/2+f.height+T},{x:A+g/2,y:_+N/2},{x:A-g/2,y:_+N/2},{x:A-g/2,y:_-N/2+f.height+T},{x:A-f.width/2,y:_-N/2+f.height+T}]:M=[{x:A-g/2,y:_-N/2},{x:A+g/2,y:_-N/2},{x:A+g/2,y:_-N/2+m},{x:A+f.width/2,y:_-N/2+m},{x:A+f.width/2/2,y:_+N/2},{x:A-f.width/2,y:_+N/2},{x:A-f.width/2,y:_-N/2+m},{x:A-g/2,y:_-N/2+m}],Ke.polygon(e,M,S)},h}var Gie=I(()=>{"use strict";Yt();gt();Gc();Ht();Vt();Bt();o(zie,"icon")});async function Vie(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await ft(t,e,"icon-shape default"),p=20,m=e.label?8:0,g=e.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=su(e),b=Je.svg(h),T=tt(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=x.get("fill");T.stroke=E??v;let w=h.append("g");e.icon&&w.html(`${await Ks(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let k=w.node().getBBox(),C=k.width,D=k.height,R=k.x,O=k.y,L=Math.max(C,D)*Math.SQRT2+p*2,S=b.circle(0,0,L,T),A=Math.max(L,f.width),_=L+f.height+m,N=b.rectangle(-A/2,-_/2,A,_,{...T,fill:"transparent",stroke:"none"}),M=h.insert(()=>S,":first-child"),P=h.insert(()=>N);return w.attr("transform",`translate(${-C/2-R},${g?f.height/2+m/2-D/2-O:-f.height/2-m/2-D/2-O})`),w.attr("style",`color: ${x.get("stroke")??y};`),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-_/2:_/2-f.height})`),M.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),Ze(e,P),e.intersect=function(B){return X.info("iconSquare intersect",e,B),Ke.rect(e,B)},h}var qie=I(()=>{"use strict";Yt();gt();Gc();Ht();Vt();Bt();o(Vie,"iconCircle")});var so,m0=I(()=>{"use strict";so=o((t,e,r,n,i)=>["M",t+i,e,"H",t+r-i,"A",i,i,0,0,1,t+r,e+i,"V",e+n-i,"A",i,i,0,0,1,t+r-i,e+n,"H",t+i,"A",i,i,0,0,1,t,e+n-i,"V",e+i,"A",i,i,0,0,1,t+i,e,"Z"].join(" "),"createRoundedRectPathD")});async function Uie(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await ft(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=su(e),T=-y/2,E=-g/2,w=e.label?8:0,k=Je.svg(h),C=tt(e,{});e.look!=="handDrawn"&&(C.roughness=0,C.fillStyle="solid");let D=b.get("fill");C.stroke=D??x;let R=k.path(so(T,E,y,g,5),C),O=Math.max(y,f.width),L=g+f.height+w,S=k.rectangle(-O/2,-L/2,O,L,{...C,fill:"transparent",stroke:"none"}),A=h.insert(()=>R,":first-child").attr("class","icon-shape2"),_=h.insert(()=>S);if(e.icon){let N=h.append("g");N.html(`${await Ks(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let M=N.node().getBBox(),P=M.width,B=M.height,F=M.x,G=M.y;N.attr("transform",`translate(${-P/2-F},${m?f.height/2+w/2-B/2-G:-f.height/2-w/2-B/2-G})`),N.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-L/2:L/2-f.height})`),A.attr("transform",`translate(0,${m?f.height/2+w/2:-f.height/2-w/2})`),Ze(e,_),e.intersect=function(N){if(X.info("iconSquare intersect",e,N),!e.label)return Ke.rect(e,N);let M=e.x??0,P=e.y??0,B=e.height??0,F=[];return m?F=[{x:M-f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2+f.height+w},{x:M+y/2,y:P-B/2+f.height+w},{x:M+y/2,y:P+B/2},{x:M-y/2,y:P+B/2},{x:M-y/2,y:P-B/2+f.height+w},{x:M-f.width/2,y:P-B/2+f.height+w}]:F=[{x:M-y/2,y:P-B/2},{x:M+y/2,y:P-B/2},{x:M+y/2,y:P-B/2+g},{x:M+f.width/2,y:P-B/2+g},{x:M+f.width/2/2,y:P+B/2},{x:M-f.width/2,y:P+B/2},{x:M-f.width/2,y:P-B/2+g},{x:M-y/2,y:P-B/2+g}],Ke.polygon(e,F,N)},h}var Wie=I(()=>{"use strict";Yt();gt();Gc();Ht();Vt();m0();Bt();o(Uie,"iconRounded")});async function Hie(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Qe(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await ft(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=su(e),T=-y/2,E=-g/2,w=e.label?8:0,k=Je.svg(h),C=tt(e,{});e.look!=="handDrawn"&&(C.roughness=0,C.fillStyle="solid");let D=b.get("fill");C.stroke=D??x;let R=k.path(so(T,E,y,g,.1),C),O=Math.max(y,f.width),L=g+f.height+w,S=k.rectangle(-O/2,-L/2,O,L,{...C,fill:"transparent",stroke:"none"}),A=h.insert(()=>R,":first-child"),_=h.insert(()=>S);if(e.icon){let N=h.append("g");N.html(`${await Ks(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let M=N.node().getBBox(),P=M.width,B=M.height,F=M.x,G=M.y;N.attr("transform",`translate(${-P/2-F},${m?f.height/2+w/2-B/2-G:-f.height/2-w/2-B/2-G})`),N.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-L/2:L/2-f.height})`),A.attr("transform",`translate(0,${m?f.height/2+w/2:-f.height/2-w/2})`),Ze(e,_),e.intersect=function(N){if(X.info("iconSquare intersect",e,N),!e.label)return Ke.rect(e,N);let M=e.x??0,P=e.y??0,B=e.height??0,F=[];return m?F=[{x:M-f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2+f.height+w},{x:M+y/2,y:P-B/2+f.height+w},{x:M+y/2,y:P+B/2},{x:M-y/2,y:P+B/2},{x:M-y/2,y:P-B/2+f.height+w},{x:M-f.width/2,y:P-B/2+f.height+w}]:F=[{x:M-y/2,y:P-B/2},{x:M+y/2,y:P-B/2},{x:M+y/2,y:P-B/2+g},{x:M+f.width/2,y:P-B/2+g},{x:M+f.width/2/2,y:P+B/2},{x:M-f.width/2,y:P+B/2},{x:M-f.width/2,y:P-B/2+g},{x:M-y/2,y:P-B/2+g}],Ke.polygon(e,F,N)},h}var Yie=I(()=>{"use strict";Yt();gt();Gc();Ht();m0();Vt();Bt();o(Hie,"iconSquare")});async function jie(t,e,{config:{flowchart:r}}){let n=new Image;n.src=e?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/a;let{labelStyles:s}=Qe(e);e.labelStyle=s;let l=r?.wrappingWidth;e.defaultWidth=r?.wrappingWidth;let u=Math.max(e.label?l??0:0,e?.assetWidth??i),h=e.constraint==="on"&&e?.assetHeight?e.assetHeight*e.imageAspectRatio:u,f=e.constraint==="on"?h/e.imageAspectRatio:e?.assetHeight??a;e.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await ft(t,e,"image-shape default"),g=e.pos==="t",y=-h/2,v=-f/2,x=e.label?8:0,b=Je.svg(d),T=tt(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=b.rectangle(y,v,h,f,T),w=Math.max(h,p.width),k=f+p.height+x,C=b.rectangle(-w/2,-k/2,w,k,{...T,fill:"none",stroke:"none"}),D=d.insert(()=>E,":first-child"),R=d.insert(()=>C);if(e.img){let O=d.append("image");O.attr("href",e.img),O.attr("width",h),O.attr("height",f),O.attr("preserveAspectRatio","none"),O.attr("transform",`translate(${-h/2},${g?k/2-f:-k/2})`)}return m.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-f/2-p.height/2-x/2:f/2-p.height/2+x/2})`),D.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),Ze(e,R),e.intersect=function(O){if(X.info("iconSquare intersect",e,O),!e.label)return Ke.rect(e,O);let L=e.x??0,S=e.y??0,A=e.height??0,_=[];return g?_=[{x:L-p.width/2,y:S-A/2},{x:L+p.width/2,y:S-A/2},{x:L+p.width/2,y:S-A/2+p.height+x},{x:L+h/2,y:S-A/2+p.height+x},{x:L+h/2,y:S+A/2},{x:L-h/2,y:S+A/2},{x:L-h/2,y:S-A/2+p.height+x},{x:L-p.width/2,y:S-A/2+p.height+x}]:_=[{x:L-h/2,y:S-A/2},{x:L+h/2,y:S-A/2},{x:L+h/2,y:S-A/2+f},{x:L+p.width/2,y:S-A/2+f},{x:L+p.width/2/2,y:S+A/2},{x:L-p.width/2,y:S+A/2},{x:L-p.width/2,y:S-A/2+f},{x:L-h/2,y:S-A/2+f}],Ke.polygon(e,_,O)},d}var Xie=I(()=>{"use strict";Yt();gt();Ht();Vt();Bt();o(jie,"imageSquare")});async function Kie(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Je.svg(i),p=tt(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=ao(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Ze(e,h),e.intersect=function(d){return Ke.polygon(e,u,d)},i}var Qie=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();o(Kie,"inv_trapezoid")});async function g0(t,e,r){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n;let{shapeSvg:a,bbox:s}=await ft(t,e,lt(e)),l=Math.max(s.width+r.labelPaddingX*2,e?.width||0),u=Math.max(s.height+r.labelPaddingY*2,e?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=e,{cssStyles:g}=e;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),e.look==="handDrawn"){let y=Je.svg(a),v=tt(e,{}),x=p||m?y.path(so(h,f,l,u,p||0),v):y.rectangle(h,f,l,u,v);d=a.insert(()=>x,":first-child"),d.attr("class","basic label-container").attr("style",On(g))}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",On(p)).attr("ry",On(m)).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return Ze(e,d),e.calcIntersect=function(y,v){return Ke.rect(y,v)},e.intersect=function(y){return Ke.rect(e,y)},a}var nb=I(()=>{"use strict";Bt();Ht();m0();Vt();Yt();sr();o(g0,"drawRect")});async function Zie(t,e){let{shapeSvg:r,bbox:n,label:i}=await ft(t,e,"label"),a=r.insert("rect",":first-child");return a.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Ze(e,a),e.intersect=function(u){return Ke.rect(e,u)},r}var Jie=I(()=>{"use strict";nb();Bt();Ht();o(Zie,"labelRect")});async function eae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:0,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:-(3*l)/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Je.svg(i),p=tt(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=ao(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Ze(e,h),e.intersect=function(d){return Ke.polygon(e,u,d)},i}var tae=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();o(eae,"lean_left")});async function rae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:-3*l/6,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Je.svg(i),p=tt(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=ao(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Ze(e,h),e.intersect=function(d){return Ke.polygon(e,u,d)},i}var nae=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();o(rae,"lean_right")});function iae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.label="",e.labelStyle=r;let i=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),{cssStyles:a}=e,s=Math.max(35,e?.width??0),l=Math.max(35,e?.height??0),u=7,h=[{x:s,y:0},{x:0,y:l+u/2},{x:s-2*u,y:l+u/2},{x:0,y:2*l},{x:s,y:l-u/2},{x:2*u,y:l-u/2}],f=Je.svg(i),d=tt(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=Wt(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),Ze(e,g),e.intersect=function(y){return X.info("lightningBolt intersect",e,y),Ke.polygon(e,h,y)},i}var aae=I(()=>{"use strict";gt();Bt();Vt();Yt();Ht();Bt();o(iae,"lightningBolt")});async function sae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0),e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(e.padding??0),e.height??0),d=f*.1,p,{cssStyles:m}=e;if(e.look==="handDrawn"){let g=Je.svg(i),y=SFe(0,0,l,f,u,h,d),v=EFe(0,h,l,f,u,h),x=tt(e,{}),b=g.path(y,x),T=g.path(v,x);i.insert(()=>T,":first-child").attr("class","line"),p=i.insert(()=>b,":first-child"),p.attr("class","basic label-container"),m&&p.attr("style",m)}else{let g=kFe(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",On(m)).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Ze(e,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),e.intersect=function(g){let y=Ke.rect(e,g),v=y.x-(e.x??0);if(u!=0&&(Math.abs(v)<(e.width??0)/2||Math.abs(v)==(e.width??0)/2&&Math.abs(y.y-(e.y??0))>(e.height??0)/2-h)){let x=h*h*(1-v*v/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,g.y-(e.y??0)>0&&(x=-x),y.y+=x}return y},i}var kFe,SFe,EFe,oae=I(()=>{"use strict";Bt();Ht();Vt();Yt();sr();kFe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),SFe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),EFe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(sae,"linedCylinder")});async function lae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,{cssStyles:d}=e,p=Je.svg(i),m=tt(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-l/2-l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:f/2},...vl(-l/2-l/2*.1,f/2,l/2+l/2*.1,f/2,h,.8),{x:l/2+l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:-f/2},{x:-l/2,y:-f/2},{x:-l/2,y:f/2*1.1},{x:-l/2,y:-f/2}],y=p.polygon(g.map(x=>[x.x,x.y]),m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Ze(e,v),e.intersect=function(x){return Ke.polygon(e,g,x)},i}var cae=I(()=>{"use strict";Bt();Ht();Yt();Vt();o(lae,"linedWaveEdgedRect")});async function uae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{}),y=[{x:f-h,y:d+h},{x:f-h,y:d+u+h},{x:f+l-h,y:d+u+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d+u-h},{x:f+l+h,y:d+u-h},{x:f+l+h,y:d-h},{x:f+h,y:d-h},{x:f+h,y:d},{x:f,y:d},{x:f,y:d+h}],v=[{x:f,y:d+h},{x:f+l-h,y:d+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d},{x:f,y:d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Wt(y),b=m.path(x,g),T=Wt(v),E=m.path(T,{...g,fill:"none"}),w=i.insert(()=>E,":first-child");return w.insert(()=>b,":first-child"),w.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)-h-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),Ze(e,w),e.intersect=function(k){return Ke.polygon(e,y,k)},i}var hae=I(()=>{"use strict";Bt();Vt();Yt();Ht();o(uae,"multiRect")});async function fae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=e,y=vl(d-m,p+f+m,d+l-m,p+f+m,h,.8),v=y?.[y.length-1],x=[{x:d-m,y:p+m},{x:d-m,y:p+f+m},...y,{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:v.y-2*m},{x:d+l+m,y:v.y-2*m},{x:d+l+m,y:p-m},{x:d+m,y:p-m},{x:d+m,y:p},{x:d,y:p},{x:d,y:p+m}],b=[{x:d,y:p+m},{x:d+l-m,y:p+m},{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:p},{x:d,y:p}],T=Je.svg(i),E=tt(e,{});e.look!=="handDrawn"&&(E.roughness=0,E.fillStyle="solid");let w=Wt(x),k=T.path(w,E),C=Wt(b),D=T.path(C,E),R=i.insert(()=>k,":first-child");return R.insert(()=>D),R.attr("class","basic label-container"),g&&e.look!=="handDrawn"&&R.selectAll("path").attr("style",g),n&&e.look!=="handDrawn"&&R.selectAll("path").attr("style",n),R.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-(a.width/2)-m-(a.x-(a.left??0))}, ${-(a.height/2)+m-h/2-(a.y-(a.top??0))})`),Ze(e,R),e.intersect=function(O){return Ke.polygon(e,x,O)},i}var dae=I(()=>{"use strict";Bt();Ht();Yt();Vt();o(fae,"multiWaveEdgedRectangle")});async function pae(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n,e.useHtmlLabels||tr().flowchart?.htmlLabels!==!1||(e.centerLabel=!0);let{shapeSvg:s,bbox:l,label:u}=await ft(t,e,lt(e)),h=Math.max(l.width+(e.padding??0)*2,e?.width??0),f=Math.max(l.height+(e.padding??0)*2,e?.height??0),d=-h/2,p=-f/2,{cssStyles:m}=e,g=Je.svg(s),y=tt(e,{fill:r.noteBkgColor,stroke:r.noteBorderColor});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=g.rectangle(d,p,h,f,y),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",m),i&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",i),u.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),Ze(e,x),e.intersect=function(b){return Ke.rect(e,b)},s}var mae=I(()=>{"use strict";Yt();Ht();Vt();Bt();ti();o(pae,"note")});async function gae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=a.width+e.padding,l=a.height+e.padding,u=s+l,h=.5,f=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Je.svg(i),g=tt(e,{}),y=CFe(0,0,u),v=m.path(y,g);d=i.insert(()=>v,":first-child").attr("transform",`translate(${-u/2+h}, ${u/2})`),p&&d.attr("style",p)}else d=ao(i,u,u,f),d.attr("transform",`translate(${-u/2+h}, ${u/2})`);return n&&d.attr("style",n),Ze(e,d),e.calcIntersect=function(m,g){let y=m.width,v=[{x:y/2,y:0},{x:y,y:-y/2},{x:y/2,y:-y},{x:0,y:-y/2}],x=Ke.polygon(m,v,g);return{x:x.x-.5,y:x.y-.5}},e.intersect=function(m){return this.calcIntersect(e,m)},i}var CFe,yae=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();CFe=o((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" "),"createDecisionBoxPathD");o(gae,"question")});async function vae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0),e?.width??0),u=Math.max(a.height+(e.padding??0),e?.height??0),h=-l/2,f=-u/2,d=f/2,p=[{x:h+d,y:f},{x:h,y:0},{x:h+d,y:-f},{x:-h,y:-f},{x:-h,y:f}],{cssStyles:m}=e,g=Je.svg(i),y=tt(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=Wt(p),x=g.path(v,y),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),b.attr("transform",`translate(${-d/2},0)`),s.attr("transform",`translate(${-d/2-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Ze(e,b),e.intersect=function(T){return Ke.polygon(e,p,T)},i}var xae=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(vae,"rect_left_inv_arrow")});function AFe(t,e){e&&t.attr("style",e)}async function _Fe(t){let e=He(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=xe(),i=t.label;t.label&&Nn(t.label)&&(i=await vf(t.label.replace(nt.lineBreakRegex,` +`),n));let s='"+i+"";return r.html(fr(s,n)),AFe(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}var DFe,ou,qk=I(()=>{"use strict";kr();Qt();wr();gt();sr();o(AFe,"applyStyle");o(_Fe,"addHtmlLabel");DFe=o(async(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),Sr(xe().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),X.info("vertexText"+i);let a={isNode:n,label:ga(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:e&&e.replace("fill:","color:")};return await _Fe(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),ou=DFe});async function bae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let i;e.cssClasses?i="node "+e.cssClasses:i="node default";let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=e.description,h=e.label,f=l.node().appendChild(await ou(h,e.labelStyle,!0,!0)),d={width:0,height:0};if(Sr(xe()?.flowchart?.htmlLabels)){let D=f.children[0],R=He(f);d=D.getBoundingClientRect(),R.attr("width",d.width),R.attr("height",d.height)}X.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await ou(p.join?p.join("
    "):p,e.labelStyle,!0,!0)),y=g.children[0],v=He(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(e.padding||0)/2;He(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),He(f).attr("transform","translate( "+(d.width(X.debug("Rough node insert CXC",O),L),":first-child"),k=a.insert(()=>(X.debug("Rough node insert CXC",O),O),":first-child")}else k=s.insert("rect",":first-child"),C=s.insert("line"),k.attr("class","outer title-state").attr("style",n).attr("x",-d.width/2-x).attr("y",-d.height/2-x).attr("width",d.width+(e.padding||0)).attr("height",d.height+(e.padding||0)),C.attr("class","divider").attr("x1",-d.width/2-x).attr("x2",d.width/2+x).attr("y1",-d.height/2-x+m.height+x).attr("y2",-d.height/2-x+m.height+x);return Ze(e,k),e.intersect=function(D){return Ke.rect(e,D)},a}var Tae=I(()=>{"use strict";kr();wr();Bt();qk();Ht();Vt();Yt();Qt();m0();gt();o(bae,"rectWithTitle")});function Uk(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),T=Math.atan2((e-b)/a,(t-x)/i),w=Math.atan2((n-b)/a,(r-x)/i)-T;s&&w<0&&(w+=2*Math.PI),!s&&w>0&&(w-=2*Math.PI);let k=[];for(let C=0;C<20;C++){let D=C/19,R=T+D*w,O=x+i*Math.cos(R),L=b+a*Math.sin(R);k.push({x:O,y:L})}return k}async function wae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=e?.padding??0,l=e?.padding??0,u=(e?.width?e?.width:a.width)+s*2,h=(e?.height?e?.height:a.height)+l*2,f=e.radius||5,d=e.taper||5,{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{});e.stroke&&(g.stroke=e.stroke),e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:-u/2+d,y:-h/2},{x:u/2-d,y:-h/2},...Uk(u/2-d,-h/2,u/2,-h/2+d,f,f,!0),{x:u/2,y:-h/2+d},{x:u/2,y:h/2-d},...Uk(u/2,h/2-d,u/2-d,h/2,f,f,!0),{x:u/2-d,y:h/2},{x:-u/2+d,y:h/2},...Uk(-u/2+d,h/2,-u/2,h/2-d,f,f,!0),{x:-u/2,y:h/2-d},{x:-u/2,y:-h/2+d},...Uk(-u/2,-h/2+d,-u/2+d,-h/2,f,f,!0)],v=Wt(y),x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container outer-path"),p&&e.look!=="handDrawn"&&b.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectChildren("path").attr("style",n),Ze(e,b),e.intersect=function(T){return Ke.polygon(e,y,T)},i}var kae=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Uk,"generateArcPoints");o(wae,"roundedRect")});async function Sae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=e?.padding??0,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d},{x:f+u+8,y:d},{x:f+u+8,y:d+h},{x:f-8,y:d+h},{x:f-8,y:d},{x:f,y:d},{x:f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container").attr("style",On(p)),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(e.padding??0)-(a.x-(a.left??0))},${-h/2+(e.padding??0)-(a.y-(a.top??0))})`),Ze(e,x),e.intersect=function(b){return Ke.rect(e,b)},i}var Eae=I(()=>{"use strict";Bt();Ht();Vt();Yt();sr();o(Sae,"shadedProcess")});async function Cae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=e,p=Je.svg(i),m=tt(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:h,y:f},{x:h,y:f+u},{x:h+l,y:f+u},{x:h+l,y:f-u/2}],y=Wt(g),v=p.path(y,m),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),x.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))}, ${-u/4+(e.padding??0)-(a.y-(a.top??0))})`),Ze(e,x),e.intersect=function(b){return Ke.polygon(e,g,b)},i}var Aae=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Cae,"slopedRect")});async function _ae(t,e){let r={rx:0,ry:0,classes:"",labelPaddingX:e.labelPaddingX??(e?.padding||0)*2,labelPaddingY:(e?.padding||0)*1};return g0(t,e,r)}var Dae=I(()=>{"use strict";nb();o(_ae,"squareRect")});async function Rae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=a.height+e.padding,l=a.width+s/4+e.padding,u=s/2,{cssStyles:h}=e,f=Je.svg(i),d=tt(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=[{x:-l/2+u,y:-s/2},{x:l/2-u,y:-s/2},...d0(-l/2+u,0,u,50,90,270),{x:l/2-u,y:s/2},...d0(l/2-u,0,u,50,270,450)],m=Wt(p),g=f.path(m,d),y=i.insert(()=>g,":first-child");return y.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn"&&y.selectChildren("path").attr("style",h),n&&e.look!=="handDrawn"&&y.selectChildren("path").attr("style",n),Ze(e,y),e.intersect=function(v){return Ke.polygon(e,p,v)},i}var Lae=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Rae,"stadium")});async function Nae(t,e){return g0(t,e,{rx:5,ry:5,classes:"flowchart-node"})}var Mae=I(()=>{"use strict";nb();o(Nae,"state")});function Iae(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n;let{cssStyles:a}=e,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),f=Je.svg(h),d=tt(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=f.circle(0,0,14,{...d,stroke:s,strokeWidth:2}),m=l??u,g=f.circle(0,0,5,{...d,fill:m,stroke:m,strokeWidth:2,fillStyle:"solid"}),y=h.insert(()=>p,":first-child");return y.insert(()=>g),a&&y.selectAll("path").attr("style",a),i&&y.selectAll("path").attr("style",i),Ze(e,y),e.intersect=function(v){return Ke.circle(e,7,v)},h}var Oae=I(()=>{"use strict";Yt();Ht();Vt();Bt();o(Iae,"stateEnd")});function Pae(t,e,{config:{themeVariables:r}}){let{lineColor:n}=r,i=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let l=Je.svg(i).circle(0,0,14,Vne(n));a=i.insert(()=>l),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14)}else a=i.insert("circle",":first-child"),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14);return Ze(e,a),e.intersect=function(s){return Ke.circle(e,7,s)},i}var Bae=I(()=>{"use strict";Yt();Ht();Vt();Bt();o(Pae,"stateStart")});async function Fae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=(e?.padding||0)/2,l=a.width+e.padding,u=a.height+e.padding,h=-a.width/2-s,f=-a.height/2-s,d=[{x:0,y:0},{x:l,y:0},{x:l,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-u},{x:-8,y:-u},{x:-8,y:0}];if(e.look==="handDrawn"){let p=Je.svg(i),m=tt(e,{}),g=p.rectangle(h-8,f,l+16,u,m),y=p.line(h,f,h,f+u,m),v=p.line(h+l,f,h+l,f+u,m);i.insert(()=>y,":first-child"),i.insert(()=>v,":first-child");let x=i.insert(()=>g,":first-child"),{cssStyles:b}=e;x.attr("class","basic label-container").attr("style",On(b)),Ze(e,x)}else{let p=ao(i,l,u,d);n&&p.attr("style",n),Ze(e,p)}return e.intersect=function(p){return Ke.polygon(e,d,p)},i}var $ae=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();sr();o(Fae,"subroutine")});async function zae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{}),y=[{x:u-f/2,y:h},{x:u+s+f/2,y:h},{x:u+s+f/2,y:h+l},{x:u-f/2,y:h+l}],v=[{x:u+s-f/2,y:h+l},{x:u+s+f/2,y:h+l},{x:u+s+f/2,y:h+l-d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Wt(y),b=m.path(x,g),T=Wt(v),E=m.path(T,{...g,fillStyle:"solid"}),w=i.insert(()=>E,":first-child");return w.insert(()=>b,":first-child"),w.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),Ze(e,w),e.intersect=function(k){return Ke.polygon(e,y,k)},i}var Gae=I(()=>{"use strict";Bt();Vt();Yt();Ht();o(zae,"taggedRect")});async function Vae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=e,g=Je.svg(i),y=tt(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...vl(-l/2-l/2*.1,p/2,l/2+l/2*.1,p/2,h,.8),{x:l/2+l/2*.1,y:-p/2},{x:-l/2-l/2*.1,y:-p/2}],x=-l/2+l/2*.1,b=-p/2-d*.4,T=[{x:x+l-f,y:(b+u)*1.4},{x:x+l,y:b+u-d},{x:x+l,y:(b+u)*.9},...vl(x+l,(b+u)*1.3,x+l-f,(b+u)*1.5,-u*.03,.5)],E=Wt(v),w=g.path(E,y),k=Wt(T),C=g.path(k,{...y,fillStyle:"solid"}),D=i.insert(()=>C,":first-child");return D.insert(()=>w,":first-child"),D.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&D.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&D.selectAll("path").attr("style",n),D.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Ze(e,D),e.intersect=function(R){return Ke.polygon(e,v,R)},i}var qae=I(()=>{"use strict";Bt();Ht();Yt();Vt();o(Vae,"taggedWaveEdgedRectangle")});async function Uae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=Math.max(a.width+e.padding,e?.width||0),l=Math.max(a.height+e.padding,e?.height||0),u=-s/2,h=-l/2,f=i.insert("rect",":first-child");return f.attr("class","text").attr("style",n).attr("rx",0).attr("ry",0).attr("x",u).attr("y",h).attr("width",s).attr("height",l),Ze(e,f),e.intersect=function(d){return Ke.rect(e,d)},i}var Wae=I(()=>{"use strict";Bt();Ht();Vt();o(Uae,"text")});async function Hae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await ft(t,e,lt(e)),u=e.look==="neo"?l*2:l,h=a.height+u,f=h/2,d=f/(2.5+h/50),p=a.width+d+u,{cssStyles:m}=e,g;if(e.look==="handDrawn"){let y=Je.svg(i),v=LFe(0,0,p,h,d,f),x=NFe(0,0,p,h,d,f),b=y.path(v,tt(e,{})),T=y.path(x,tt(e,{fill:"none"}));g=i.insert(()=>T,":first-child"),g=i.insert(()=>b,":first-child"),g.attr("class","basic label-container"),m&&g.attr("style",m)}else{let y=RFe(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",On(m)).attr("style",n),g.attr("class","basic label-container"),m&&g.selectAll("path").attr("style",m),n&&g.selectAll("path").attr("style",n)}return g.attr("label-offset-x",d),g.attr("transform",`translate(${-p/2}, ${h/2} )`),s.attr("transform",`translate(${-(a.width/2)-d-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Ze(e,g),e.intersect=function(y){let v=Ke.rect(e,y),x=v.y-(e.y??0);if(f!=0&&(Math.abs(x)<(e.height??0)/2||Math.abs(x)==(e.height??0)/2&&Math.abs(v.x-(e.x??0))>(e.width??0)/2-d)){let b=d*d*(1-x*x/(f*f));b!=0&&(b=Math.sqrt(Math.abs(b))),b=d-b,y.x-(e.x??0)>0&&(b=-b),v.x+=b}return v},i}var RFe,LFe,NFe,Yae=I(()=>{"use strict";Bt();Vt();Yt();Ht();sr();RFe=o((t,e,r,n,i,a)=>`M${t},${e} a${i},${a} 0,0,1 0,${-n} l${r},0 a${i},${a} 0,0,1 0,${n} M${r},${-n} a${i},${a} 0,0,0 0,${n} - l${-r},0`,"createCylinderPathD"),CRe=o((t,e,r,n,i,a)=>[`M${t},${e}`,`M${t+r},${e}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),ARe=o((t,e,r,n,i,a)=>[`M${t+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD");o(lte,"tiltedCylinder")});async function ute(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=a.width+e.padding,l=a.height+e.padding,u=[{x:-3*l/6,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ze.svg(i),p=Je(e,{}),m=Vt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Bs(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return Xe.polygon(e,u,d)},i}var hte=M(()=>{"use strict";It();Ut();$t();Ht();Jh();o(ute,"trapezoid")});async function fte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=60,l=20,u=Math.max(s,a.width+(e.padding??0)*2,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),{cssStyles:f}=e,d=Ze.svg(i),p=Je(e,{});e.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let m=[{x:-u/2*.8,y:-h/2},{x:u/2*.8,y:-h/2},{x:u/2,y:-h/2*.6},{x:u/2,y:h/2},{x:-u/2,y:h/2},{x:-u/2,y:-h/2*.6}],g=Vt(m),y=d.path(g,p),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),Qe(e,v),e.intersect=function(x){return Xe.polygon(e,m,x)},i}var dte=M(()=>{"use strict";It();Ut();$t();Ht();o(fte,"trapezoidalPentagon")});async function pte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=vr(ge().flowchart?.htmlLabels),u=a.width+(e.padding??0),h=u+a.height,f=u+a.height,d=[{x:0,y:0},{x:f,y:0},{x:f/2,y:-h}],{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=Vt(d),v=m.path(y,g),x=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),e.width=u,e.height=h,Qe(e,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(e.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),e.intersect=function(b){return X.info("Triangle intersect",e,d,b),Xe.polygon(e,d,b)},i}var mte=M(()=>{"use strict";pt();It();Ut();$t();Ht();It();gr();Xt();o(pte,"triangle")});async function gte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/8,f=u+h,{cssStyles:d}=e,m=70-l,g=m>0?m/2:0,y=Ze.svg(i),v=Je(e,{});e.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...Go(-l/2-g,f/2,l/2+g,f/2,h,.8),{x:l/2+g,y:-f/2},{x:-l/2-g,y:-f/2}],b=Vt(x),T=y.path(b,v),S=i.insert(()=>T,":first-child");return S.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h-(a.y-(a.top??0))})`),Qe(e,S),e.intersect=function(w){return Xe.polygon(e,x,w)},i}var yte=M(()=>{"use strict";It();Ut();Ht();$t();o(gte,"waveEdgedRectangle")});async function vte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ut(t,e,st(e)),s=100,l=50,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=u/h,d=u,p=h;d>p*f?p=d/f:d=p*f,d=Math.max(d,s),p=Math.max(p,l);let m=Math.min(p*.2,p/4),g=p+m*2,{cssStyles:y}=e,v=Ze.svg(i),x=Je(e,{});e.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...Go(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...Go(d/2,-g/2,-d/2,-g/2,m,-1)],T=Vt(b),S=v.path(T,x),w=i.insert(()=>S,":first-child");return w.attr("class","basic label-container"),y&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",y),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),Qe(e,w),e.intersect=function(k){return Xe.polygon(e,b,k)},i}var xte=M(()=>{"use strict";It();Ut();$t();Ht();o(vte,"waveRectangle")});async function bte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ut(t,e,st(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Ze.svg(i),g=Je(e,{}),y=[{x:f-h,y:d-h},{x:f-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d-h}],v=`M${f-h},${d-h} L${f+l},${d-h} L${f+l},${d+u} L${f-h},${d+u} L${f-h},${d-h} + l${-r},0`,"createCylinderPathD"),LFe=o((t,e,r,n,i,a)=>[`M${t},${e}`,`M${t+r},${e}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),NFe=o((t,e,r,n,i,a)=>[`M${t+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD");o(Hae,"tiltedCylinder")});async function jae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=a.width+e.padding,l=a.height+e.padding,u=[{x:-3*l/6,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Je.svg(i),p=tt(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=ao(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Ze(e,h),e.intersect=function(d){return Ke.polygon(e,u,d)},i}var Xae=I(()=>{"use strict";Bt();Ht();Vt();Yt();jf();o(jae,"trapezoid")});async function Kae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=60,l=20,u=Math.max(s,a.width+(e.padding??0)*2,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),{cssStyles:f}=e,d=Je.svg(i),p=tt(e,{});e.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let m=[{x:-u/2*.8,y:-h/2},{x:u/2*.8,y:-h/2},{x:u/2,y:-h/2*.6},{x:u/2,y:h/2},{x:-u/2,y:h/2},{x:-u/2,y:-h/2*.6}],g=Wt(m),y=d.path(g,p),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),Ze(e,v),e.intersect=function(x){return Ke.polygon(e,m,x)},i}var Qae=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(Kae,"trapezoidalPentagon")});async function Zae(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Sr(xe().flowchart?.htmlLabels),u=a.width+(e.padding??0),h=u+a.height,f=u+a.height,d=[{x:0,y:0},{x:f,y:0},{x:f/2,y:-h}],{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=Wt(d),v=m.path(y,g),x=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),e.width=u,e.height=h,Ze(e,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(e.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),e.intersect=function(b){return X.info("Triangle intersect",e,d,b),Ke.polygon(e,d,b)},i}var Jae=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();Bt();wr();Qt();o(Zae,"triangle")});async function ese(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/8,f=u+h,{cssStyles:d}=e,m=70-l,g=m>0?m/2:0,y=Je.svg(i),v=tt(e,{});e.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...vl(-l/2-g,f/2,l/2+g,f/2,h,.8),{x:l/2+g,y:-f/2},{x:-l/2-g,y:-f/2}],b=Wt(x),T=y.path(b,v),E=i.insert(()=>T,":first-child");return E.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&E.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&E.selectAll("path").attr("style",n),E.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h-(a.y-(a.top??0))})`),Ze(e,E),e.intersect=function(w){return Ke.polygon(e,x,w)},i}var tse=I(()=>{"use strict";Bt();Ht();Yt();Vt();o(ese,"waveEdgedRectangle")});async function rse(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ft(t,e,lt(e)),s=100,l=50,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=u/h,d=u,p=h;d>p*f?p=d/f:d=p*f,d=Math.max(d,s),p=Math.max(p,l);let m=Math.min(p*.2,p/4),g=p+m*2,{cssStyles:y}=e,v=Je.svg(i),x=tt(e,{});e.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...vl(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...vl(d/2,-g/2,-d/2,-g/2,m,-1)],T=Wt(b),E=v.path(T,x),w=i.insert(()=>E,":first-child");return w.attr("class","basic label-container"),y&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",y),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),Ze(e,w),e.intersect=function(k){return Ke.polygon(e,b,k)},i}var nse=I(()=>{"use strict";Bt();Ht();Vt();Yt();o(rse,"waveRectangle")});async function ise(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ft(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Je.svg(i),g=tt(e,{}),y=[{x:f-h,y:d-h},{x:f-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d-h}],v=`M${f-h},${d-h} L${f+l},${d-h} L${f+l},${d+u} L${f-h},${d+u} L${f-h},${d-h} M${f-h},${d} L${f+l},${d} - M${f},${d-h} L${f},${d+u}`;e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("transform",`translate(${h/2}, ${h/2})`),b.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)+h/2-(a.x-(a.left??0))}, ${-(a.height/2)+h/2-(a.y-(a.top??0))})`),Qe(e,b),e.intersect=function(T){return Xe.polygon(e,y,T)},i}var Tte=M(()=>{"use strict";It();$t();Ht();Ut();o(bte,"windowPane")});async function H9(t,e){let r=e;if(r.alias&&(e.label=r.alias),e.look==="handDrawn"){let{themeVariables:U}=Qt(),{background:j}=U,ee={...e,id:e.id+"-background",look:"default",cssStyles:["stroke: none",`fill: ${j}`]};await H9(t,ee)}let n=Qt();e.useHtmlLabels=n.htmlLabels;let i=n.er?.diagramPadding??10,a=n.er?.entityPadding??6,{cssStyles:s}=e,{labelStyles:l,nodeStyles:u}=je(e);if(r.attributes.length===0&&e.label){let U={rx:0,ry:0,labelPaddingX:i,labelPaddingY:i*1.5,classes:""};Zi(e.label,n)+U.labelPaddingX*20){let U=d.width+i*2-(y+v+x+b);y+=U/w,v+=U/w,x>0&&(x+=U/w),b>0&&(b+=U/w)}let C=y+v+x+b,A=Ze.svg(f),L=Je(e,{});e.look!=="handDrawn"&&(L.roughness=0,L.fillStyle="solid");let I=0;g.length>0&&(I=g.reduce((U,j)=>U+(j?.rowHeight??0),0));let R=Math.max(k.width+i*2,e?.width||0,C),E=Math.max((I??0)+d.height,e?.height||0),_=-R/2,D=-E/2;f.selectAll("g:not(:first-child)").each((U,j,ee)=>{let q=qe(ee[j]),oe=q.attr("transform"),Q=0,ue=0;if(oe){let re=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(oe);re&&(Q=parseFloat(re[1]),ue=parseFloat(re[2]),q.attr("class").includes("attribute-name")?Q+=y:q.attr("class").includes("attribute-keys")?Q+=y+v:q.attr("class").includes("attribute-comment")&&(Q+=y+v+x))}q.attr("transform",`translate(${_+i/2+Q}, ${ue+D+d.height+a/2})`)}),f.select(".name").attr("transform","translate("+-d.width/2+", "+(D+a/2)+")");let O=A.rectangle(_,D,R,E,L),N=f.insert(()=>O,":first-child").attr("style",s.join("")),{themeVariables:P}=Qt(),{rowEven:B,rowOdd:F,nodeBorder:V}=P;m.push(0);for(let[U,j]of g.entries()){let q=(U+1)%2===0&&j.yOffset!==0,oe=A.rectangle(_,d.height+D+j?.yOffset,R,j?.rowHeight,{...L,fill:q?B:F,stroke:V});f.insert(()=>oe,"g.label").attr("style",s.join("")).attr("class",`row-rect-${q?"even":"odd"}`)}let $=A.line(_,d.height+D,R+_,d.height+D,L);f.insert(()=>$).attr("class","divider"),$=A.line(y+_,d.height+D,y+_,E+D,L),f.insert(()=>$).attr("class","divider"),T&&($=A.line(y+v+_,d.height+D,y+v+_,E+D,L),f.insert(()=>$).attr("class","divider")),S&&($=A.line(y+v+x+_,d.height+D,y+v+x+_,E+D,L),f.insert(()=>$).attr("class","divider"));for(let U of m)$=A.line(_,d.height+D+U,R+_,d.height+D+U,L),f.insert(()=>$).attr("class","divider");if(Qe(e,N),u&&e.look!=="handDrawn"){let j=u.split(";")?.filter(ee=>ee.includes("stroke"))?.map(ee=>`${ee}`).join("; ");f.selectAll("path").attr("style",j??""),f.selectAll(".row-rect-even path").attr("style",u)}return e.intersect=function(U){return Xe.rect(e,U)},f}async function O2(t,e,r,n=0,i=0,a=[],s=""){let l=t.insert("g").attr("class",`label ${a.join(" ")}`).attr("transform",`translate(${n}, ${i})`).attr("style",s);e!==rc(e)&&(e=rc(e),e=e.replaceAll("<","<").replaceAll(">",">"));let u=l.node().appendChild(await di(l,e,{width:Zi(e,r)+100,style:s,useHtmlLabels:r.htmlLabels},r));if(e.includes("<")||e.includes(">")){let f=u.children[0];for(f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">");f.childNodes[0];)f=f.childNodes[0],f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">")}let h=u.getBBox();if(vr(r.htmlLabels)){let f=u.children[0];f.style.textAlign="start";let d=qe(u);h=f.getBoundingClientRect(),d.attr("width",h.width),d.attr("height",h.height)}return h}var wte=M(()=>{"use strict";It();Ut();$t();Ht();I2();qn();zo();gr();yr();tr();o(H9,"erBox");o(O2,"addText")});async function kte(t,e,r,n,i=r.class.padding??12){let a=n?0:3,s=t.insert("g").attr("class",st(e)).attr("id",e.domId||e.id),l=null,u=null,h=null,f=null,d=0,p=0,m=0;if(l=s.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let b=e.annotations[0];await lw(l,{text:`\xAB${b}\xBB`},0),d=l.node().getBBox().height}u=s.insert("g").attr("class","label-group text"),await lw(u,e,0,["font-weight: bolder"]);let g=u.node().getBBox();p=g.height,h=s.insert("g").attr("class","members-group text");let y=0;for(let b of e.members){let T=await lw(h,b,y,[b.parseClassifier()]);y+=T+a}m=h.node().getBBox().height,m<=0&&(m=i/2),f=s.insert("g").attr("class","methods-group text");let v=0;for(let b of e.methods){let T=await lw(f,b,v,[b.parseClassifier()]);v+=T+a}let x=s.node().getBBox();if(l!==null){let b=l.node().getBBox();l.attr("transform",`translate(${-b.width/2})`)}return u.attr("transform",`translate(${-g.width/2}, ${d})`),x=s.node().getBBox(),h.attr("transform",`translate(0, ${d+p+i*2})`),x=s.node().getBBox(),f.attr("transform",`translate(0, ${d+p+(m?m+i*4:i*2)})`),x=s.node().getBBox(),{shapeSvg:s,bbox:x}}async function lw(t,e,r,n=[]){let i=t.insert("g").attr("class","label").attr("style",n.join("; ")),a=Qt(),s="useHtmlLabels"in e?e.useHtmlLabels:vr(a.htmlLabels)??!0,l="";"text"in e?l=e.text:l=e.label,!s&&l.startsWith("\\")&&(l=l.substring(1)),kn(l)&&(s=!0);let u=await di(i,av(Ji(l)),{width:Zi(l,a)+50,classes:"markdown-node-label",useHtmlLabels:s},a),h,f=1;if(s){let d=u.children[0],p=qe(u);f=d.innerHTML.split("
    ").length,d.innerHTML.includes("")&&(f+=d.innerHTML.split("").length-1);let m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=a.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,S=parseInt(b,10)*5+"px";y.style.minWidth=S,y.style.maxWidth=S}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}else{n.includes("font-weight: bolder")&&qe(u).selectAll("tspan").attr("font-weight",""),f=u.children.length;let d=u.children[0];(u.textContent===""||u.textContent.includes(">"))&&(d.textContent=l[0]+l.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),l[1]===" "&&(d.textContent=d.textContent[0]+" "+d.textContent.substring(1))),d.textContent==="undefined"&&(d.textContent=""),h=u.getBBox()}return i.attr("transform","translate(0,"+(-h.height/(2*f)+r)+")"),h.height}var Ete=M(()=>{"use strict";yr();qn();It();tr();Xt();zo();gr();o(kte,"textHelper");o(lw,"addText")});async function Ste(t,e){let r=ge(),n=r.class.padding??12,i=n,a=e.useHtmlLabels??vr(r.htmlLabels)??!0,s=e;s.annotations=s.annotations??[],s.members=s.members??[],s.methods=s.methods??[];let{shapeSvg:l,bbox:u}=await kte(t,e,r,a,i),{labelStyles:h,nodeStyles:f}=je(e);e.labelStyle=h,e.cssStyles=s.styles||"";let d=s.styles?.join(";")||f||"";e.cssStyles||(e.cssStyles=d.replaceAll("!important","").split(";"));let p=s.members.length===0&&s.methods.length===0&&!r.class?.hideEmptyMembersBox,m=Ze.svg(l),g=Je(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=u.width,v=u.height;s.members.length===0&&s.methods.length===0?v+=i:s.members.length>0&&s.methods.length===0&&(v+=i*2);let x=-y/2,b=-v/2,T=m.rectangle(x-n,b-n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0),y+2*n,v+2*n+(p?n*2:s.members.length===0&&s.methods.length===0?-n:0),g),S=l.insert(()=>T,":first-child");S.attr("class","basic label-container");let w=S.node().getBBox();l.selectAll(".text").each((L,I,R)=>{let E=qe(R[I]),_=E.attr("transform"),D=0;if(_){let B=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(_);B&&(D=parseFloat(B[2]))}let O=D+b+n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0);a||(O-=4);let N=x;(E.attr("class").includes("label-group")||E.attr("class").includes("annotation-group"))&&(N=-E.node()?.getBBox().width/2||0,l.selectAll("text").each(function(P,B,F){window.getComputedStyle(F[B]).textAnchor==="middle"&&(N=0)})),E.attr("transform",`translate(${N}, ${O})`)});let k=l.select(".annotation-group").node().getBBox().height-(p?n/2:0)||0,C=l.select(".label-group").node().getBBox().height-(p?n/2:0)||0,A=l.select(".members-group").node().getBBox().height-(p?n/2:0)||0;if(s.members.length>0||s.methods.length>0||p){let L=m.line(w.x,k+C+b+n,w.x+w.width,k+C+b+n,g);l.insert(()=>L).attr("class","divider").attr("style",d)}if(p||s.members.length>0||s.methods.length>0){let L=m.line(w.x,k+C+A+b+i*2+n,w.x+w.width,k+C+A+b+n+i*2,g);l.insert(()=>L).attr("class","divider").attr("style",d)}if(s.look!=="handDrawn"&&l.selectAll("path").attr("style",d),S.select(":nth-child(2)").attr("style",d),l.selectAll(".divider").select("path").attr("style",d),e.labelStyle?l.selectAll("span").attr("style",e.labelStyle):l.selectAll("span").attr("style",d),!a){let L=RegExp(/color\s*:\s*([^;]*)/),I=L.exec(d);if(I){let R=I[0].replace("color","fill");l.selectAll("tspan").attr("style",R)}else if(h){let R=L.exec(h);if(R){let E=R[0].replace("color","fill");l.selectAll("tspan").attr("style",E)}}}return Qe(e,S),e.intersect=function(L){return Xe.rect(e,L)},l}var Cte=M(()=>{"use strict";It();Xt();yr();Ht();$t();Ut();Ete();gr();o(Ste,"classBox")});async function Ate(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let i=e,a=e,s=20,l=20,u="verifyMethod"in e,h=st(e),f=t.insert("g").attr("class",h).attr("id",e.domId??e.id),d;u?d=await Ou(f,`<<${i.type}>>`,0,e.labelStyle):d=await Ou(f,"<<Element>>",0,e.labelStyle);let p=d,m=await Ou(f,i.name,p,e.labelStyle+"; font-weight: bold;");if(p+=m+l,u){let k=await Ou(f,`${i.requirementId?`ID: ${i.requirementId}`:""}`,p,e.labelStyle);p+=k;let C=await Ou(f,`${i.text?`Text: ${i.text}`:""}`,p,e.labelStyle);p+=C;let A=await Ou(f,`${i.risk?`Risk: ${i.risk}`:""}`,p,e.labelStyle);p+=A,await Ou(f,`${i.verifyMethod?`Verification: ${i.verifyMethod}`:""}`,p,e.labelStyle)}else{let k=await Ou(f,`${a.type?`Type: ${a.type}`:""}`,p,e.labelStyle);p+=k,await Ou(f,`${a.docRef?`Doc Ref: ${a.docRef}`:""}`,p,e.labelStyle)}let g=(f.node()?.getBBox().width??200)+s,y=(f.node()?.getBBox().height??200)+s,v=-g/2,x=-y/2,b=Ze.svg(f),T=Je(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let S=b.rectangle(v,x,g,y,T),w=f.insert(()=>S,":first-child");if(w.attr("class","basic label-container").attr("style",n),f.selectAll(".label").each((k,C,A)=>{let L=qe(A[C]),I=L.attr("transform"),R=0,E=0;if(I){let N=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(I);N&&(R=parseFloat(N[1]),E=parseFloat(N[2]))}let _=E-y/2,D=v+s/2;(C===0||C===1)&&(D=R),L.attr("transform",`translate(${D}, ${_+s})`)}),p>d+m+l){let k=b.line(v,x+d+m+l,v+g,x+d+m+l,T);f.insert(()=>k).attr("style",n)}return Qe(e,w),e.intersect=function(k){return Xe.rect(e,k)},f}async function Ou(t,e,r,n=""){if(e==="")return 0;let i=t.insert("g").attr("class","label").attr("style",n),a=ge(),s=a.htmlLabels??!0,l=await di(i,av(Ji(e)),{width:Zi(e,a)+50,classes:"markdown-node-label",useHtmlLabels:s,style:n},a),u;if(s){let h=l.children[0],f=qe(l);u=h.getBoundingClientRect(),f.attr("width",u.width),f.attr("height",u.height)}else{let h=l.children[0];for(let f of h.children)f.textContent=f.textContent.replaceAll(">",">").replaceAll("<","<"),n&&f.setAttribute("style",n);u=l.getBBox(),u.height+=6}return i.attr("transform",`translate(${-u.width/2},${-u.height/2+r})`),u.height}var _te=M(()=>{"use strict";It();Ut();$t();Ht();tr();Xt();zo();yr();o(Ate,"requirementBox");o(Ou,"addText")});async function Dte(t,e,{config:r}){let{labelStyles:n,nodeStyles:i}=je(e);e.labelStyle=n||"";let a=10,s=e.width;e.width=(e.width??200)-10;let{shapeSvg:l,bbox:u,label:h}=await ut(t,e,st(e)),f=e.padding||10,d="",p;"ticket"in e&&e.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),p=l.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",d).attr("target","_blank"));let m={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},g,y;p?{label:g,bbox:y}=await XT(p,"ticket"in e&&e.ticket||"",m):{label:g,bbox:y}=await XT(l,"ticket"in e&&e.ticket||"",m);let{label:v,bbox:x}=await XT(l,"assigned"in e&&e.assigned||"",m);e.width=s;let b=10,T=e?.width||0,S=Math.max(y.height,x.height)/2,w=Math.max(u.height+b*2,e?.height||0)+S,k=-T/2,C=-w/2;h.attr("transform","translate("+(f-T/2)+", "+(-S-u.height/2)+")"),g.attr("transform","translate("+(f-T/2)+", "+(-S+u.height/2)+")"),v.attr("transform","translate("+(f+T/2-x.width-2*a)+", "+(-S+u.height/2)+")");let A,{rx:L,ry:I}=e,{cssStyles:R}=e;if(e.look==="handDrawn"){let E=Ze.svg(l),_=Je(e,{}),D=L||I?E.path(Fs(k,C,T,w,L||0),_):E.rectangle(k,C,T,w,_);A=l.insert(()=>D,":first-child"),A.attr("class","basic label-container").attr("style",R||null)}else{A=l.insert("rect",":first-child"),A.attr("class","basic label-container __APA__").attr("style",i).attr("rx",L??5).attr("ry",I??5).attr("x",k).attr("y",C).attr("width",T).attr("height",w);let E="priority"in e&&e.priority;if(E){let _=l.append("line"),D=k+2,O=C+Math.floor((L??0)/2),N=C+w-Math.floor((L??0)/2);_.attr("x1",D).attr("y1",O).attr("x2",D).attr("y2",N).attr("stroke-width","4").attr("stroke",_Re(E))}}return Qe(e,A),e.height=w,e.intersect=function(E){return Xe.rect(e,E)},l}var _Re,Lte=M(()=>{"use strict";It();Ut();Zd();$t();Ht();_Re=o(t=>{switch(t){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");o(Dte,"kanbanItem")});async function Rte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await ut(t,e,st(e)),u=a.width+10*s,h=a.height+8*s,f=.15*u,{cssStyles:d}=e,p=a.width+20,m=a.height+20,g=Math.max(u,p),y=Math.max(h,m);l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`);let v,x=`M0 0 + M${f},${d-h} L${f},${d+u}`;e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("transform",`translate(${h/2}, ${h/2})`),b.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)+h/2-(a.x-(a.left??0))}, ${-(a.height/2)+h/2-(a.y-(a.top??0))})`),Ze(e,b),e.intersect=function(T){return Ke.polygon(e,y,T)},i}var ase=I(()=>{"use strict";Bt();Vt();Yt();Ht();o(ise,"windowPane")});async function xM(t,e){let r=e;if(r.alias&&(e.label=r.alias),e.look==="handDrawn"){let{themeVariables:V}=tr(),{background:K}=V,ee={...e,id:e.id+"-background",look:"default",cssStyles:["stroke: none",`fill: ${K}`]};await xM(t,ee)}let n=tr();e.useHtmlLabels=n.htmlLabels;let i=n.er?.diagramPadding??10,a=n.er?.entityPadding??6,{cssStyles:s}=e,{labelStyles:l,nodeStyles:u}=Qe(e);if(r.attributes.length===0&&e.label){let V={rx:0,ry:0,labelPaddingX:i,labelPaddingY:i*1.5,classes:""};ma(e.label,n)+V.labelPaddingX*20){let V=d.width+i*2-(y+v+x+b);y+=V/w,v+=V/w,x>0&&(x+=V/w),b>0&&(b+=V/w)}let C=y+v+x+b,D=Je.svg(f),R=tt(e,{});e.look!=="handDrawn"&&(R.roughness=0,R.fillStyle="solid");let O=0;g.length>0&&(O=g.reduce((V,K)=>V+(K?.rowHeight??0),0));let L=Math.max(k.width+i*2,e?.width||0,C),S=Math.max((O??0)+d.height,e?.height||0),A=-L/2,_=-S/2;f.selectAll("g:not(:first-child)").each((V,K,ee)=>{let H=He(ee[K]),he=H.attr("transform"),Z=0,de=0;if(he){let ne=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(he);ne&&(Z=parseFloat(ne[1]),de=parseFloat(ne[2]),H.attr("class").includes("attribute-name")?Z+=y:H.attr("class").includes("attribute-keys")?Z+=y+v:H.attr("class").includes("attribute-comment")&&(Z+=y+v+x))}H.attr("transform",`translate(${A+i/2+Z}, ${de+_+d.height+a/2})`)}),f.select(".name").attr("transform","translate("+-d.width/2+", "+(_+a/2)+")");let N=D.rectangle(A,_,L,S,R),M=f.insert(()=>N,":first-child").attr("style",s.join("")),{themeVariables:P}=tr(),{rowEven:B,rowOdd:F,nodeBorder:G}=P;m.push(0);for(let[V,K]of g.entries()){let H=(V+1)%2===0&&K.yOffset!==0,he=D.rectangle(A,d.height+_+K?.yOffset,L,K?.rowHeight,{...R,fill:H?B:F,stroke:G});f.insert(()=>he,"g.label").attr("style",s.join("")).attr("class",`row-rect-${H?"even":"odd"}`)}let $=D.line(A,d.height+_,L+A,d.height+_,R);f.insert(()=>$).attr("class","divider"),$=D.line(y+A,d.height+_,y+A,S+_,R),f.insert(()=>$).attr("class","divider"),T&&($=D.line(y+v+A,d.height+_,y+v+A,S+_,R),f.insert(()=>$).attr("class","divider")),E&&($=D.line(y+v+x+A,d.height+_,y+v+x+A,S+_,R),f.insert(()=>$).attr("class","divider"));for(let V of m)$=D.line(A,d.height+_+V,L+A,d.height+_+V,R),f.insert(()=>$).attr("class","divider");if(Ze(e,M),u&&e.look!=="handDrawn"){let K=u.split(";")?.filter(ee=>ee.includes("stroke"))?.map(ee=>`${ee}`).join("; ");f.selectAll("path").attr("style",K??""),f.selectAll(".row-rect-even path").attr("style",u)}return e.intersect=function(V){return Ke.rect(e,V)},f}async function ib(t,e,r,n=0,i=0,a=[],s=""){let l=t.insert("g").attr("class",`label ${a.join(" ")}`).attr("transform",`translate(${n}, ${i})`).attr("style",s);e!==zc(e)&&(e=zc(e),e=e.replaceAll("<","<").replaceAll(">",">"));let u=l.node().appendChild(await Ai(l,e,{width:ma(e,r)+100,style:s,useHtmlLabels:r.htmlLabels},r));if(e.includes("<")||e.includes(">")){let f=u.children[0];for(f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">");f.childNodes[0];)f=f.childNodes[0],f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">")}let h=u.getBBox();if(Sr(r.htmlLabels)){let f=u.children[0];f.style.textAlign="start";let d=He(u);h=f.getBoundingClientRect(),d.attr("width",h.width),d.attr("height",h.height)}return h}var sse=I(()=>{"use strict";Bt();Ht();Vt();Yt();nb();ti();yl();wr();kr();sr();o(xM,"erBox");o(ib,"addText")});async function ose(t,e,r,n,i=r.class.padding??12){let a=n?0:3,s=t.insert("g").attr("class",lt(e)).attr("id",e.domId||e.id),l=null,u=null,h=null,f=null,d=0,p=0,m=0;if(l=s.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let b=e.annotations[0];await Wk(l,{text:`\xAB${b}\xBB`},0),d=l.node().getBBox().height}u=s.insert("g").attr("class","label-group text"),await Wk(u,e,0,["font-weight: bolder"]);let g=u.node().getBBox();p=g.height,h=s.insert("g").attr("class","members-group text");let y=0;for(let b of e.members){let T=await Wk(h,b,y,[b.parseClassifier()]);y+=T+a}m=h.node().getBBox().height,m<=0&&(m=i/2),f=s.insert("g").attr("class","methods-group text");let v=0;for(let b of e.methods){let T=await Wk(f,b,v,[b.parseClassifier()]);v+=T+a}let x=s.node().getBBox();if(l!==null){let b=l.node().getBBox();l.attr("transform",`translate(${-b.width/2})`)}return u.attr("transform",`translate(${-g.width/2}, ${d})`),x=s.node().getBBox(),h.attr("transform",`translate(0, ${d+p+i*2})`),x=s.node().getBBox(),f.attr("transform",`translate(0, ${d+p+(m?m+i*4:i*2)})`),x=s.node().getBBox(),{shapeSvg:s,bbox:x}}async function Wk(t,e,r,n=[]){let i=t.insert("g").attr("class","label").attr("style",n.join("; ")),a=tr(),s="useHtmlLabels"in e?e.useHtmlLabels:Sr(a.htmlLabels)??!0,l="";"text"in e?l=e.text:l=e.label,!s&&l.startsWith("\\")&&(l=l.substring(1)),Nn(l)&&(s=!0);let u=await Ai(i,_2(ga(l)),{width:ma(l,a)+50,classes:"markdown-node-label",useHtmlLabels:s},a),h,f=1;if(s){let d=u.children[0],p=He(u);f=d.innerHTML.split("
    ").length,d.innerHTML.includes("")&&(f+=d.innerHTML.split("").length-1);let m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=a.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,E=parseInt(b,10)*5+"px";y.style.minWidth=E,y.style.maxWidth=E}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}else{n.includes("font-weight: bolder")&&He(u).selectAll("tspan").attr("font-weight",""),f=u.children.length;let d=u.children[0];(u.textContent===""||u.textContent.includes(">"))&&(d.textContent=l[0]+l.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),l[1]===" "&&(d.textContent=d.textContent[0]+" "+d.textContent.substring(1))),d.textContent==="undefined"&&(d.textContent=""),h=u.getBBox()}return i.attr("transform","translate(0,"+(-h.height/(2*f)+r)+")"),h.height}var lse=I(()=>{"use strict";kr();ti();Bt();sr();Qt();yl();wr();o(ose,"textHelper");o(Wk,"addText")});async function cse(t,e){let r=xe(),n=r.class.padding??12,i=n,a=e.useHtmlLabels??Sr(r.htmlLabels)??!0,s=e;s.annotations=s.annotations??[],s.members=s.members??[],s.methods=s.methods??[];let{shapeSvg:l,bbox:u}=await ose(t,e,r,a,i),{labelStyles:h,nodeStyles:f}=Qe(e);e.labelStyle=h,e.cssStyles=s.styles||"";let d=s.styles?.join(";")||f||"";e.cssStyles||(e.cssStyles=d.replaceAll("!important","").split(";"));let p=s.members.length===0&&s.methods.length===0&&!r.class?.hideEmptyMembersBox,m=Je.svg(l),g=tt(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=u.width,v=u.height;s.members.length===0&&s.methods.length===0?v+=i:s.members.length>0&&s.methods.length===0&&(v+=i*2);let x=-y/2,b=-v/2,T=m.rectangle(x-n,b-n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0),y+2*n,v+2*n+(p?n*2:s.members.length===0&&s.methods.length===0?-n:0),g),E=l.insert(()=>T,":first-child");E.attr("class","basic label-container");let w=E.node().getBBox();l.selectAll(".text").each((R,O,L)=>{let S=He(L[O]),A=S.attr("transform"),_=0;if(A){let B=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(A);B&&(_=parseFloat(B[2]))}let N=_+b+n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0);a||(N-=4);let M=x;(S.attr("class").includes("label-group")||S.attr("class").includes("annotation-group"))&&(M=-S.node()?.getBBox().width/2||0,l.selectAll("text").each(function(P,B,F){window.getComputedStyle(F[B]).textAnchor==="middle"&&(M=0)})),S.attr("transform",`translate(${M}, ${N})`)});let k=l.select(".annotation-group").node().getBBox().height-(p?n/2:0)||0,C=l.select(".label-group").node().getBBox().height-(p?n/2:0)||0,D=l.select(".members-group").node().getBBox().height-(p?n/2:0)||0;if(s.members.length>0||s.methods.length>0||p){let R=m.line(w.x,k+C+b+n,w.x+w.width,k+C+b+n,g);l.insert(()=>R).attr("class","divider").attr("style",d)}if(p||s.members.length>0||s.methods.length>0){let R=m.line(w.x,k+C+D+b+i*2+n,w.x+w.width,k+C+D+b+n+i*2,g);l.insert(()=>R).attr("class","divider").attr("style",d)}if(s.look!=="handDrawn"&&l.selectAll("path").attr("style",d),E.select(":nth-child(2)").attr("style",d),l.selectAll(".divider").select("path").attr("style",d),e.labelStyle?l.selectAll("span").attr("style",e.labelStyle):l.selectAll("span").attr("style",d),!a){let R=RegExp(/color\s*:\s*([^;]*)/),O=R.exec(d);if(O){let L=O[0].replace("color","fill");l.selectAll("tspan").attr("style",L)}else if(h){let L=R.exec(h);if(L){let S=L[0].replace("color","fill");l.selectAll("tspan").attr("style",S)}}}return Ze(e,E),e.intersect=function(R){return Ke.rect(e,R)},l}var use=I(()=>{"use strict";Bt();Qt();kr();Yt();Vt();Ht();lse();wr();o(cse,"classBox")});async function hse(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let i=e,a=e,s=20,l=20,u="verifyMethod"in e,h=lt(e),f=t.insert("g").attr("class",h).attr("id",e.domId??e.id),d;u?d=await Sh(f,`<<${i.type}>>`,0,e.labelStyle):d=await Sh(f,"<<Element>>",0,e.labelStyle);let p=d,m=await Sh(f,i.name,p,e.labelStyle+"; font-weight: bold;");if(p+=m+l,u){let k=await Sh(f,`${i.requirementId?`ID: ${i.requirementId}`:""}`,p,e.labelStyle);p+=k;let C=await Sh(f,`${i.text?`Text: ${i.text}`:""}`,p,e.labelStyle);p+=C;let D=await Sh(f,`${i.risk?`Risk: ${i.risk}`:""}`,p,e.labelStyle);p+=D,await Sh(f,`${i.verifyMethod?`Verification: ${i.verifyMethod}`:""}`,p,e.labelStyle)}else{let k=await Sh(f,`${a.type?`Type: ${a.type}`:""}`,p,e.labelStyle);p+=k,await Sh(f,`${a.docRef?`Doc Ref: ${a.docRef}`:""}`,p,e.labelStyle)}let g=(f.node()?.getBBox().width??200)+s,y=(f.node()?.getBBox().height??200)+s,v=-g/2,x=-y/2,b=Je.svg(f),T=tt(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=b.rectangle(v,x,g,y,T),w=f.insert(()=>E,":first-child");if(w.attr("class","basic label-container").attr("style",n),f.selectAll(".label").each((k,C,D)=>{let R=He(D[C]),O=R.attr("transform"),L=0,S=0;if(O){let M=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(O);M&&(L=parseFloat(M[1]),S=parseFloat(M[2]))}let A=S-y/2,_=v+s/2;(C===0||C===1)&&(_=L),R.attr("transform",`translate(${_}, ${A+s})`)}),p>d+m+l){let k=b.line(v,x+d+m+l,v+g,x+d+m+l,T);f.insert(()=>k).attr("style",n)}return Ze(e,w),e.intersect=function(k){return Ke.rect(e,k)},f}async function Sh(t,e,r,n=""){if(e==="")return 0;let i=t.insert("g").attr("class","label").attr("style",n),a=xe(),s=a.htmlLabels??!0,l=await Ai(i,_2(ga(e)),{width:ma(e,a)+50,classes:"markdown-node-label",useHtmlLabels:s,style:n},a),u;if(s){let h=l.children[0],f=He(l);u=h.getBoundingClientRect(),f.attr("width",u.width),f.attr("height",u.height)}else{let h=l.children[0];for(let f of h.children)f.textContent=f.textContent.replaceAll(">",">").replaceAll("<","<"),n&&f.setAttribute("style",n);u=l.getBBox(),u.height+=6}return i.attr("transform",`translate(${-u.width/2},${-u.height/2+r})`),u.height}var fse=I(()=>{"use strict";Bt();Ht();Vt();Yt();sr();Qt();yl();kr();o(hse,"requirementBox");o(Sh,"addText")});async function dse(t,e,{config:r}){let{labelStyles:n,nodeStyles:i}=Qe(e);e.labelStyle=n||"";let a=10,s=e.width;e.width=(e.width??200)-10;let{shapeSvg:l,bbox:u,label:h}=await ft(t,e,lt(e)),f=e.padding||10,d="",p;"ticket"in e&&e.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),p=l.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",d).attr("target","_blank"));let m={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},g,y;p?{label:g,bbox:y}=await Lk(p,"ticket"in e&&e.ticket||"",m):{label:g,bbox:y}=await Lk(l,"ticket"in e&&e.ticket||"",m);let{label:v,bbox:x}=await Lk(l,"assigned"in e&&e.assigned||"",m);e.width=s;let b=10,T=e?.width||0,E=Math.max(y.height,x.height)/2,w=Math.max(u.height+b*2,e?.height||0)+E,k=-T/2,C=-w/2;h.attr("transform","translate("+(f-T/2)+", "+(-E-u.height/2)+")"),g.attr("transform","translate("+(f-T/2)+", "+(-E+u.height/2)+")"),v.attr("transform","translate("+(f+T/2-x.width-2*a)+", "+(-E+u.height/2)+")");let D,{rx:R,ry:O}=e,{cssStyles:L}=e;if(e.look==="handDrawn"){let S=Je.svg(l),A=tt(e,{}),_=R||O?S.path(so(k,C,T,w,R||0),A):S.rectangle(k,C,T,w,A);D=l.insert(()=>_,":first-child"),D.attr("class","basic label-container").attr("style",L||null)}else{D=l.insert("rect",":first-child"),D.attr("class","basic label-container __APA__").attr("style",i).attr("rx",R??5).attr("ry",O??5).attr("x",k).attr("y",C).attr("width",T).attr("height",w);let S="priority"in e&&e.priority;if(S){let A=l.append("line"),_=k+2,N=C+Math.floor((R??0)/2),M=C+w-Math.floor((R??0)/2);A.attr("x1",_).attr("y1",N).attr("x2",_).attr("y2",M).attr("stroke-width","4").attr("stroke",MFe(S))}}return Ze(e,D),e.height=w,e.intersect=function(S){return Ke.rect(e,S)},l}var MFe,pse=I(()=>{"use strict";Bt();Ht();m0();Vt();Yt();MFe=o(t=>{switch(t){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");o(dse,"kanbanItem")});async function mse(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await ft(t,e,lt(e)),u=a.width+10*s,h=a.height+8*s,f=.15*u,{cssStyles:d}=e,p=a.width+20,m=a.height+20,g=Math.max(u,p),y=Math.max(h,m);l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`);let v,x=`M0 0 a${f},${f} 1 0,0 ${g*.25},${-1*y*.1} a${f},${f} 1 0,0 ${g*.25},0 a${f},${f} 1 0,0 ${g*.25},0 @@ -475,7 +475,7 @@ Please report this to https://github.com/markedjs/marked.`,t){let n="

    An error a${f},${f} 1 0,0 ${-1*g*.1},${-1*y*.33} a${f*.8},${f*.8} 1 0,0 0,${-1*y*.34} a${f},${f} 1 0,0 ${g*.1},${-1*y*.33} - H0 V0 Z`;if(e.look==="handDrawn"){let b=Ze.svg(i),T=Je(e,{}),S=b.path(x,T);v=i.insert(()=>S,":first-child"),v.attr("class","basic label-container").attr("style",Cn(d))}else v=i.insert("path",":first-child").attr("class","basic label-container").attr("style",n).attr("d",x);return v.attr("transform",`translate(${-g/2}, ${-y/2})`),Qe(e,v),e.calcIntersect=function(b,T){return Xe.rect(b,T)},e.intersect=function(b){return X.info("Bang intersect",e,b),Xe.rect(e,b)},i}var Nte=M(()=>{"use strict";pt();It();Ut();$t();Ht();tr();o(Rte,"bang")});async function Mte(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await ut(t,e,st(e)),u=a.width+2*s,h=a.height+2*s,f=.15*u,d=.25*u,p=.35*u,m=.2*u,{cssStyles:g}=e,y,v=`M0 0 + H0 V0 Z`;if(e.look==="handDrawn"){let b=Je.svg(i),T=tt(e,{}),E=b.path(x,T);v=i.insert(()=>E,":first-child"),v.attr("class","basic label-container").attr("style",On(d))}else v=i.insert("path",":first-child").attr("class","basic label-container").attr("style",n).attr("d",x);return v.attr("transform",`translate(${-g/2}, ${-y/2})`),Ze(e,v),e.calcIntersect=function(b,T){return Ke.rect(b,T)},e.intersect=function(b){return X.info("Bang intersect",e,b),Ke.rect(e,b)},i}var gse=I(()=>{"use strict";gt();Bt();Ht();Vt();Yt();sr();o(mse,"bang")});async function yse(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await ft(t,e,lt(e)),u=a.width+2*s,h=a.height+2*s,f=.15*u,d=.25*u,p=.35*u,m=.2*u,{cssStyles:g}=e,y,v=`M0 0 a${f},${f} 0 0,1 ${u*.25},${-1*u*.1} a${p},${p} 1 0,1 ${u*.4},${-1*u*.1} a${d},${d} 1 0,1 ${u*.35},${u*.2} @@ -489,7 +489,7 @@ Please report this to https://github.com/markedjs/marked.`,t){let n="

    An error a${f},${f} 1 0,1 ${-1*u*.1},${-1*h*.35} a${m},${m} 1 0,1 ${u*.1},${-1*h*.65} - H0 V0 Z`;if(e.look==="handDrawn"){let x=Ze.svg(i),b=Je(e,{}),T=x.path(v,b);y=i.insert(()=>T,":first-child"),y.attr("class","basic label-container").attr("style",Cn(g))}else y=i.insert("path",":first-child").attr("class","basic label-container").attr("style",n).attr("d",v);return l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`),y.attr("transform",`translate(${-u/2}, ${-h/2})`),Qe(e,y),e.calcIntersect=function(x,b){return Xe.rect(x,b)},e.intersect=function(x){return X.info("Cloud intersect",e,x),Xe.rect(e,x)},i}var Ite=M(()=>{"use strict";Ht();pt();tr();Ut();$t();It();o(Mte,"cloud")});async function Ote(t,e){let{labelStyles:r,nodeStyles:n}=je(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await ut(t,e,st(e)),u=a.width+8*s,h=a.height+2*s,f=5,d=` + H0 V0 Z`;if(e.look==="handDrawn"){let x=Je.svg(i),b=tt(e,{}),T=x.path(v,b);y=i.insert(()=>T,":first-child"),y.attr("class","basic label-container").attr("style",On(g))}else y=i.insert("path",":first-child").attr("class","basic label-container").attr("style",n).attr("d",v);return l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`),y.attr("transform",`translate(${-u/2}, ${-h/2})`),Ze(e,y),e.calcIntersect=function(x,b){return Ke.rect(x,b)},e.intersect=function(x){return X.info("Cloud intersect",e,x),Ke.rect(e,x)},i}var vse=I(()=>{"use strict";Yt();gt();sr();Ht();Vt();Bt();o(yse,"cloud")});async function xse(t,e){let{labelStyles:r,nodeStyles:n}=Qe(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await ft(t,e,lt(e)),u=a.width+8*s,h=a.height+2*s,f=5,d=` M${-u/2} ${h/2-f} v${-h+2*f} q0,-${f} ${f},-${f} @@ -500,46 +500,46 @@ Please report this to https://github.com/markedjs/marked.`,t){let n="

    An error h${-u+2*f} q-${f},0 -${f},-${f} Z - `,p=i.append("path").attr("id","node-"+e.id).attr("class","node-bkg node-"+e.type).attr("style",n).attr("d",d);return i.append("line").attr("class","node-line-").attr("x1",-u/2).attr("y1",h/2).attr("x2",u/2).attr("y2",h/2),l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`),i.append(()=>l.node()),Qe(e,p),e.calcIntersect=function(m,g){return Xe.rect(m,g)},e.intersect=function(m){return Xe.rect(e,m)},i}var Pte=M(()=>{"use strict";Ut();$t();It();o(Ote,"defaultMindmapNode")});async function Bte(t,e){let r={padding:e.padding??0};return aw(t,e,r)}var Fte=M(()=>{"use strict";U9();o(Bte,"mindmapCircle")});function $te(t){return t in q9}var DRe,LRe,q9,W9=M(()=>{"use strict";bJ();kJ();SJ();AJ();U9();DJ();RJ();MJ();OJ();BJ();$J();GJ();UJ();qJ();YJ();jJ();QJ();JJ();tee();nee();aee();oee();cee();hee();dee();mee();yee();xee();Tee();kee();See();Aee();Dee();Ree();Mee();Oee();Bee();$ee();Gee();Uee();qee();Yee();jee();Qee();Jee();tte();nte();ate();ote();cte();hte();dte();mte();yte();xte();Tte();wte();Cte();_te();Lte();Nte();Ite();Pte();Fte();DRe=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:Hee},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:Fee},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:Wee},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:ete},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:FJ},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:aw},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:Rte},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:Mte},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:Nee},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:ZJ},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:vee},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:gee},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:ute},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:fee},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:VJ},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:ste},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:EJ},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:zee},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:Zee},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:Kee},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:XJ},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:eee},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:LJ},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:NJ},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:IJ},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:bee},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:gte},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:KJ},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:lte},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:wee},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:PJ},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:zJ},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:pte},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:bte},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:HJ},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:fte},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:WJ},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:Vee},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:_ee},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:Cee},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:wJ},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:_J},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:ite},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:rte},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:vte},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:Iee},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:Eee}],LRe=o(()=>{let e=[...Object.entries({state:Xee,choice:CJ,note:Lee,rectWithTitle:Pee,labelRect:pee,iconSquare:lee,iconCircle:iee,icon:ree,iconRounded:see,imageSquare:uee,anchor:xJ,kanbanItem:Dte,mindmapCircle:Bte,defaultMindmapNode:Ote,classBox:Ste,erBox:H9,requirementBox:Ate}),...DRe.flatMap(r=>[r.shortName,..."aliases"in r?r.aliases:[],..."internalAliases"in r?r.internalAliases:[]].map(i=>[i,r.handler]))];return Object.fromEntries(e)},"generateShapeMap"),q9=LRe();o($te,"isValidShape")});var RRe,cw,zte=M(()=>{"use strict";yr();k2();Xt();pt();W9();tr();gr();ci();RRe="flowchart-",cw=class{constructor(){this.vertexCounter=0;this.config=ge();this.vertices=new Map;this.edges=[];this.classes=new Map;this.subGraphs=[];this.subGraphLookup=new Map;this.tooltips=new Map;this.subCount=0;this.firstGraphFlag=!0;this.secCount=-1;this.posCrossRef=[];this.funs=[];this.setAccTitle=Rr;this.setAccDescription=Ir;this.setDiagramTitle=$r;this.getAccTitle=Mr;this.getAccDescription=Or;this.getDiagramTitle=Pr;this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{o(this,"FlowDB")}sanitizeText(e){return tt.sanitizeText(e,this.config)}lookUpDomId(e){for(let r of this.vertices.values())if(r.id===e)return r.domId;return e}addVertex(e,r,n,i,a,s,l={},u){if(!e||e.trim().length===0)return;let h;if(u!==void 0){let m;u.includes(` + `,p=i.append("path").attr("id","node-"+e.id).attr("class","node-bkg node-"+e.type).attr("style",n).attr("d",d);return i.append("line").attr("class","node-line-").attr("x1",-u/2).attr("y1",h/2).attr("x2",u/2).attr("y2",h/2),l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`),i.append(()=>l.node()),Ze(e,p),e.calcIntersect=function(m,g){return Ke.rect(m,g)},e.intersect=function(m){return Ke.rect(e,m)},i}var bse=I(()=>{"use strict";Ht();Vt();Bt();o(xse,"defaultMindmapNode")});async function Tse(t,e){let r={padding:e.padding??0};return Vk(t,e,r)}var wse=I(()=>{"use strict";vM();o(Tse,"mindmapCircle")});function kse(t){return t in bM}var IFe,OFe,bM,TM=I(()=>{"use strict";iie();oie();cie();hie();vM();die();mie();yie();xie();Tie();kie();Eie();Aie();Die();Lie();Mie();Oie();Bie();$ie();Gie();qie();Wie();Yie();Xie();Qie();Jie();tae();nae();aae();oae();cae();hae();dae();mae();yae();xae();Tae();kae();Eae();Aae();Dae();Lae();Mae();Oae();Bae();$ae();Gae();qae();Wae();Yae();Xae();Qae();Jae();tse();nse();ase();sse();use();fse();pse();gse();vse();bse();wse();IFe=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:_ae},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:wae},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:Rae},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:Fae},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:wie},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:Vk},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:mse},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:yse},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:gae},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:Pie},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:rae},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:eae},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:jae},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:Kie},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:Cie},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:Uae},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:lie},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:Sae},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:Pae},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:Iae},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:Nie},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:Fie},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:pie},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:gie},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:vie},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:iae},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:ese},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:Iie},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:Hae},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:sae},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:bie},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:Sie},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:Zae},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:ise},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:_ie},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:Kae},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:Rie},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:Cae},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:fae},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:uae},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:sie},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:fie},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:Vae},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:zae},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:rse},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:vae},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:lae}],OFe=o(()=>{let e=[...Object.entries({state:Nae,choice:uie,note:pae,rectWithTitle:bae,labelRect:Zie,iconSquare:Hie,iconCircle:Vie,icon:zie,iconRounded:Uie,imageSquare:jie,anchor:nie,kanbanItem:dse,mindmapCircle:Tse,defaultMindmapNode:xse,classBox:cse,erBox:xM,requirementBox:hse}),...IFe.flatMap(r=>[r.shortName,..."aliases"in r?r.aliases:[],..."internalAliases"in r?r.internalAliases:[]].map(i=>[i,r.handler]))];return Object.fromEntries(e)},"generateShapeMap"),bM=OFe();o(kse,"isValidShape")});var PFe,Hk,Sse=I(()=>{"use strict";kr();Hx();Qt();gt();TM();sr();wr();ki();PFe="flowchart-",Hk=class{constructor(){this.vertexCounter=0;this.config=xe();this.vertices=new Map;this.edges=[];this.classes=new Map;this.subGraphs=[];this.subGraphLookup=new Map;this.tooltips=new Map;this.subCount=0;this.firstGraphFlag=!0;this.secCount=-1;this.posCrossRef=[];this.funs=[];this.setAccTitle=zr;this.setAccDescription=qr;this.setDiagramTitle=Xr;this.getAccTitle=Vr;this.getAccDescription=Ur;this.getDiagramTitle=Wr;this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{o(this,"FlowDB")}sanitizeText(e){return nt.sanitizeText(e,this.config)}lookUpDomId(e){for(let r of this.vertices.values())if(r.id===e)return r.domId;return e}addVertex(e,r,n,i,a,s,l={},u){if(!e||e.trim().length===0)return;let h;if(u!==void 0){let m;u.includes(` `)?m=u+` `:m=`{ `+u+` -}`,h=Kh(m,{schema:jh})}let f=this.edges.find(m=>m.id===e);if(f){let m=h;m?.animate!==void 0&&(f.animate=m.animate),m?.animation!==void 0&&(f.animation=m.animation),m?.curve!==void 0&&(f.interpolate=m.curve);return}let d,p=this.vertices.get(e);if(p===void 0&&(p={id:e,labelType:"text",domId:RRe+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,p)),this.vertexCounter++,r!==void 0?(this.config=ge(),d=this.sanitizeText(r.text.trim()),p.labelType=r.type,d.startsWith('"')&&d.endsWith('"')&&(d=d.substring(1,d.length-1)),p.text=d):p.text===void 0&&(p.text=e),n!==void 0&&(p.type=n),i?.forEach(m=>{p.styles.push(m)}),a?.forEach(m=>{p.classes.push(m)}),s!==void 0&&(p.dir=s),p.props===void 0?p.props=l:l!==void 0&&Object.assign(p.props,l),h!==void 0){if(h.shape){if(h.shape!==h.shape.toLowerCase()||h.shape.includes("_"))throw new Error(`No such shape: ${h.shape}. Shape names should be lowercase.`);if(!$te(h.shape))throw new Error(`No such shape: ${h.shape}.`);p.type=h?.shape}h?.label&&(p.text=h?.label),h?.icon&&(p.icon=h?.icon,!h.label?.trim()&&p.text===e&&(p.text="")),h?.form&&(p.form=h?.form),h?.pos&&(p.pos=h?.pos),h?.img&&(p.img=h?.img,!h.label?.trim()&&p.text===e&&(p.text="")),h?.constraint&&(p.constraint=h.constraint),h.w&&(p.assetWidth=Number(h.w)),h.h&&(p.assetHeight=Number(h.h))}}addSingleLink(e,r,n,i){let l={start:e,end:r,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};X.info("abc78 Got edge...",l);let u=n.text;if(u!==void 0&&(l.text=this.sanitizeText(u.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=u.type),n!==void 0&&(l.type=n.type,l.stroke=n.stroke,l.length=n.length>10?10:n.length),i&&!this.edges.some(h=>h.id===i))l.id=i,l.isUserDefinedId=!0;else{let h=this.edges.filter(f=>f.start===l.start&&f.end===l.end);h.length===0?l.id=xc(l.start,l.end,{counter:0,prefix:"L"}):l.id=xc(l.start,l.end,{counter:h.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))X.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. +}`,h=Wf(m,{schema:Uf})}let f=this.edges.find(m=>m.id===e);if(f){let m=h;m?.animate!==void 0&&(f.animate=m.animate),m?.animation!==void 0&&(f.animation=m.animation),m?.curve!==void 0&&(f.interpolate=m.curve);return}let d,p=this.vertices.get(e);if(p===void 0&&(p={id:e,labelType:"text",domId:PFe+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,p)),this.vertexCounter++,r!==void 0?(this.config=xe(),d=this.sanitizeText(r.text.trim()),p.labelType=r.type,d.startsWith('"')&&d.endsWith('"')&&(d=d.substring(1,d.length-1)),p.text=d):p.text===void 0&&(p.text=e),n!==void 0&&(p.type=n),i?.forEach(m=>{p.styles.push(m)}),a?.forEach(m=>{p.classes.push(m)}),s!==void 0&&(p.dir=s),p.props===void 0?p.props=l:l!==void 0&&Object.assign(p.props,l),h!==void 0){if(h.shape){if(h.shape!==h.shape.toLowerCase()||h.shape.includes("_"))throw new Error(`No such shape: ${h.shape}. Shape names should be lowercase.`);if(!kse(h.shape))throw new Error(`No such shape: ${h.shape}.`);p.type=h?.shape}h?.label&&(p.text=h?.label),h?.icon&&(p.icon=h?.icon,!h.label?.trim()&&p.text===e&&(p.text="")),h?.form&&(p.form=h?.form),h?.pos&&(p.pos=h?.pos),h?.img&&(p.img=h?.img,!h.label?.trim()&&p.text===e&&(p.text="")),h?.constraint&&(p.constraint=h.constraint),h.w&&(p.assetWidth=Number(h.w)),h.h&&(p.assetHeight=Number(h.h))}}addSingleLink(e,r,n,i){let l={start:e,end:r,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};X.info("abc78 Got edge...",l);let u=n.text;if(u!==void 0&&(l.text=this.sanitizeText(u.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=u.type),n!==void 0&&(l.type=n.type,l.stroke=n.stroke,l.length=n.length>10?10:n.length),i&&!this.edges.some(h=>h.id===i))l.id=i,l.isUserDefinedId=!0;else{let h=this.edges.filter(f=>f.start===l.start&&f.end===l.end);h.length===0?l.id=nu(l.start,l.end,{counter:0,prefix:"L"}):l.id=nu(l.start,l.end,{counter:h.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))X.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. Initialize mermaid with maxEdges set to a higher number to allow more edges. You cannot set this config via configuration inside the diagram as it is a secure config. -You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,r,n){let i=this.isLinkData(n)?n.id.replace("@",""):void 0;X.info("addLink",e,r,i);for(let a of e)for(let s of r){let l=a===e[e.length-1],u=s===r[0];l&&u?this.addSingleLink(a,s,n,i):this.addSingleLink(a,s,n,void 0)}}updateLinkInterpolate(e,r){e.forEach(n=>{n==="default"?this.edges.defaultInterpolate=r:this.edges[n].interpolate=r})}updateLink(e,r){e.forEach(n=>{if(typeof n=="number"&&n>=this.edges.length)throw new Error(`The index ${n} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);n==="default"?this.edges.defaultStyle=r:(this.edges[n].style=r,(this.edges[n]?.style?.length??0)>0&&!this.edges[n]?.style?.some(i=>i?.startsWith("fill"))&&this.edges[n]?.style?.push("fill:none"))})}addClass(e,r){let n=r.join().replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(i=>{let a=this.classes.get(i);a===void 0&&(a={id:i,styles:[],textStyles:[]},this.classes.set(i,a)),n?.forEach(s=>{if(/color/.exec(s)){let l=s.replace("fill","bgFill");a.textStyles.push(l)}a.styles.push(s)})})}setDirection(e){this.direction=e.trim(),/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,r){for(let n of e.split(",")){let i=this.vertices.get(n);i&&i.classes.push(r);let a=this.edges.find(l=>l.id===n);a&&a.classes.push(r);let s=this.subGraphLookup.get(n);s&&s.classes.push(r)}}setTooltip(e,r){if(r!==void 0){r=this.sanitizeText(r);for(let n of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(n):n,r)}}setClickFun(e,r,n){let i=this.lookUpDomId(e);if(ge().securityLevel!=="loose"||r===void 0)return;let a=[];if(typeof n=="string"){a=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let l=0;l{let l=document.querySelector(`[id="${i}"]`);l!==null&&l.addEventListener("click",()=>{qt.runFunc(r,...a)},!1)}))}setLink(e,r,n){e.split(",").forEach(i=>{let a=this.vertices.get(i);a!==void 0&&(a.link=qt.formatUrl(r,this.config),a.linkTarget=n)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFun(i,r,n)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(r=>{r(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let r=qe(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=qe("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),qe(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=qe(a.currentTarget);if(s.attr("title")===null)return;let u=a.currentTarget?.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.bottom+"px"),r.html(r.html().replace(/<br\/>/g,"
    ")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),qe(a.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=ge(),Sr()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,r,n){let i=e.text.trim(),a=n.text;e===n&&/\s/.exec(n.text)&&(i=void 0);let l=o(p=>{let m={boolean:{},number:{},string:{}},g=[],y;return{nodeList:p.filter(function(x){let b=typeof x;return x.stmt&&x.stmt==="dir"?(y=x.value,!1):x.trim()===""?!1:b in m?m[b].hasOwnProperty(x)?!1:m[b][x]=!0:g.includes(x)?!1:g.push(x)}),dir:y}},"uniq")(r.flat()),u=l.nodeList,h=l.dir,f=ge().flowchart??{};if(h=h??(f.inheritDir?this.getDirection()??ge().direction??void 0:void 0),this.version==="gen-1")for(let p=0;p2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=r,this.subGraphs[r].id===e)return{result:!0,count:0};let i=0,a=1;for(;i=0){let l=this.indexNodes2(e,s);if(l.result)return{result:!0,count:a+l.count};a=a+l.count}i=i+1}return{result:!1,count:a}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let r=e.trim(),n="arrow_open";switch(r[0]){case"<":n="arrow_point",r=r.slice(1);break;case"x":n="arrow_cross",r=r.slice(1);break;case"o":n="arrow_circle",r=r.slice(1);break}let i="normal";return r.includes("=")&&(i="thick"),r.includes(".")&&(i="dotted"),{type:n,stroke:i}}countChar(e,r){let n=r.length,i=0;for(let a=0;a":i="arrow_point",r.startsWith("<")&&(i="double_"+i,n=n.slice(1));break;case"o":i="arrow_circle",r.startsWith("o")&&(i="double_"+i,n=n.slice(1));break}let a="normal",s=n.length-1;n.startsWith("=")&&(a="thick"),n.startsWith("~")&&(a="invisible");let l=this.countChar(".",n);return l&&(a="dotted",s=l),{type:i,stroke:a,length:s}}destructLink(e,r){let n=this.destructEndLink(e),i;if(r){if(i=this.destructStartLink(r),i.stroke!==n.stroke)return{type:"INVALID",stroke:"INVALID"};if(i.type==="arrow_open")i.type=n.type;else{if(i.type!==n.type)return{type:"INVALID",stroke:"INVALID"};i.type="double_"+i.type}return i.type==="double_arrow"&&(i.type="double_arrow_point"),i.length=n.length,i}return n}exists(e,r){for(let n of e)if(n.nodes.includes(r))return!0;return!1}makeUniq(e,r){let n=[];return e.nodes.forEach((i,a)=>{this.exists(r,i)||n.push(e.nodes[a])}),{nodes:n}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,r){return e.find(n=>n.id===r)}destructEdgeType(e){let r="none",n="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":n=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":r=e.replace("double_",""),n=r;break}return{arrowTypeStart:r,arrowTypeEnd:n}}addNodeFromVertex(e,r,n,i,a,s){let l=n.get(e.id),u=i.get(e.id)??!1,h=this.findNode(r,e.id);if(h)h.cssStyles=e.styles,h.cssCompiledStyles=this.getCompiledStyles(e.classes),h.cssClasses=e.classes.join(" ");else{let f={id:e.id,label:e.text,labelStyle:"",parentId:l,padding:a.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:s,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};u?r.push({...f,isGroup:!0,shape:"rect"}):r.push({...f,isGroup:!1,shape:this.getTypeFromVertex(e)})}}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}getData(){let e=ge(),r=[],n=[],i=this.getSubGraphs(),a=new Map,s=new Map;for(let h=i.length-1;h>=0;h--){let f=i[h];f.nodes.length>0&&s.set(f.id,!0);for(let d of f.nodes)a.set(d,f.id)}for(let h=i.length-1;h>=0;h--){let f=i[h];r.push({id:f.id,label:f.title,labelStyle:"",parentId:a.get(f.id),padding:8,cssCompiledStyles:this.getCompiledStyles(f.classes),cssClasses:f.classes.join(" "),shape:"rect",dir:f.dir,isGroup:!0,look:e.look})}this.getVertices().forEach(h=>{this.addNodeFromVertex(h,r,a,s,e,e.look||"classic")});let u=this.getEdges();return u.forEach((h,f)=>{let{arrowTypeStart:d,arrowTypeEnd:p}=this.destructEdgeType(h.type),m=[...u.defaultStyle??[]];h.style&&m.push(...h.style);let g={id:xc(h.start,h.end,{counter:f,prefix:"L"},h.id),isUserDefinedId:h.isUserDefinedId,start:h.start,end:h.end,type:h.type??"normal",label:h.text,labelpos:"c",thickness:h.stroke,minlen:h.length,classes:h?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":d,arrowTypeEnd:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":p,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(h.classes),labelStyle:m,style:m,pattern:h.stroke,look:e.look,animate:h.animate,animation:h.animation,curve:h.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};n.push(g)}),{nodes:r,edges:n,other:{},config:e}}defaultConfig(){return V3.flowchart}}});var Vo,ep=M(()=>{"use strict";yr();Vo=o((t,e)=>{let r;return e==="sandbox"&&(r=qe("#i"+t)),(e==="sandbox"?qe(r.nodes()[0].contentDocument.body):qe("body")).select(`[id="${t}"]`)},"getDiagramElement")});var Pu,P2=M(()=>{"use strict";Pu=o(({flowchart:t})=>{let e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0,n=e+r;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});var Gte,NRe,MRe,IRe,ORe,PRe,BRe,Vte,Sm,Ute,uw=M(()=>{"use strict";Xt();gr();pt();P2();yr();Ht();zo();S9();sw();Zd();$t();Gte=o(async(t,e)=>{X.info("Creating subgraph rect for ",e.id,e);let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=je(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=vr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await di(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(vr(r.flowchart.htmlLabels)){let C=g.children[0],A=qe(g);y=C.getBoundingClientRect(),A.attr("width",y.width),A.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,T=e.y-x/2;X.trace("Data ",e,JSON.stringify(e));let S;if(e.look==="handDrawn"){let C=Ze.svg(d),A=Je(e,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),L=C.path(Fs(b,T,v,x,0),A);S=d.insert(()=>(X.debug("Rough node insert CXC",L),L),":first-child"),S.select("path:nth-child(2)").attr("style",h.join(";")),S.select("path").attr("style",f.join(";").replace("fill","stroke"))}else S=d.insert("rect",":first-child"),S.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",T).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:w}=Pu(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+w})`),l){let C=m.select("span");C&&C.attr("style",l)}let k=S.node().getBBox();return e.offsetX=0,e.width=k.width,e.height=k.height,e.offsetY=y.height-e.padding/2,e.intersect=function(C){return Qh(e,C)},{cluster:d,labelBBox:y}},"rect"),NRe=o((t,e)=>{let r=t.insert("g").attr("class","note-cluster").attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(l){return Qh(e,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),MRe=o(async(t,e)=>{let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await kc(e.label,e.labelStyle,void 0,!0)),g=m.getBBox();if(vr(r.flowchart.htmlLabels)){let L=m.children[0],I=qe(m);g=L.getBoundingClientRect(),I.attr("width",g.width),I.attr("height",g.height)}let y=0*e.padding,v=y/2,x=(e.width<=g.width+e.padding?g.width+e.padding:e.width)+y;e.width<=g.width+e.padding?e.diff=(x-e.width)/2-e.padding:e.diff=-e.padding;let b=e.height+y,T=e.height+y-g.height-6,S=e.x-x/2,w=e.y-b/2;e.width=x;let k=e.y-e.height/2-v+g.height+2,C;if(e.look==="handDrawn"){let L=e.cssClasses.includes("statediagram-cluster-alt"),I=Ze.svg(h),R=e.rx||e.ry?I.path(Fs(S,w,x,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):I.rectangle(S,w,x,b,{seed:i});C=h.insert(()=>R,":first-child");let E=I.rectangle(S,k,x,T,{fill:L?a:s,fillStyle:L?"hachure":"solid",stroke:u,seed:i});C=h.insert(()=>R,":first-child"),p=h.insert(()=>E)}else C=f.insert("rect",":first-child"),C.attr("class","outer").attr("x",S).attr("y",w).attr("width",x).attr("height",b).attr("data-look",e.look),p.attr("class","inner").attr("x",S).attr("y",k).attr("width",x).attr("height",T);d.attr("transform",`translate(${e.x-g.width/2}, ${w+1-(vr(r.flowchart.htmlLabels)?0:3)})`);let A=C.node().getBBox();return e.height=A.height,e.offsetX=0,e.offsetY=g.height-e.padding/2,e.labelBBox=g,e.intersect=function(L){return Qh(e,L)},{cluster:h,labelBBox:g}},"roundedWithTitle"),IRe=o(async(t,e)=>{X.info("Creating subgraph rect for ",e.id,e);let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=je(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=vr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await di(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0,width:e.width}),y=g.getBBox();if(vr(r.flowchart.htmlLabels)){let C=g.children[0],A=qe(g);y=C.getBoundingClientRect(),A.attr("width",y.width),A.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,T=e.y-x/2;X.trace("Data ",e,JSON.stringify(e));let S;if(e.look==="handDrawn"){let C=Ze.svg(d),A=Je(e,{roughness:.7,fill:a,stroke:s,fillWeight:4,seed:i}),L=C.path(Fs(b,T,v,x,e.rx),A);S=d.insert(()=>(X.debug("Rough node insert CXC",L),L),":first-child"),S.select("path:nth-child(2)").attr("style",h.join(";")),S.select("path").attr("style",f.join(";").replace("fill","stroke"))}else S=d.insert("rect",":first-child"),S.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",T).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:w}=Pu(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+w})`),l){let C=m.select("span");C&&C.attr("style",l)}let k=S.node().getBBox();return e.offsetX=0,e.width=k.width,e.height=k.height,e.offsetY=y.height-e.padding/2,e.intersect=function(C){return Qh(e,C)},{cluster:d,labelBBox:y}},"kanbanSection"),ORe=o((t,e)=>{let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),u=0*e.padding,h=e.width+u;e.diff=-e.padding;let f=e.height+u,d=e.x-h/2,p=e.y-f/2;e.width=h;let m;if(e.look==="handDrawn"){let v=Ze.svg(s).rectangle(d,p,h,f,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:a,seed:i});m=s.insert(()=>v,":first-child")}else m=l.insert("rect",":first-child"),m.attr("class","divider").attr("x",d).attr("y",p).attr("width",h).attr("height",f).attr("data-look",e.look);let g=m.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(y){return Qh(e,y)},{cluster:s,labelBBox:{}}},"divider"),PRe=Gte,BRe={rect:Gte,squareRect:PRe,roundedWithTitle:MRe,noteGroup:NRe,divider:ORe,kanbanSection:IRe},Vte=new Map,Sm=o(async(t,e)=>{let r=e.shape||"rect",n=await BRe[r](t,e);return Vte.set(e.id,n),n},"insertCluster"),Ute=o(()=>{Vte=new Map},"clear")});function hw(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=Xn(t),e=Xn(e);let[r,n]=[t.x,t.y],[i,a]=[e.x,e.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var da,Y9,Xn,fw,X9=M(()=>{"use strict";da={aggregation:17.25,extension:17.25,composition:17.25,dependency:6,lollipop:13.5,arrow_point:4},Y9={arrow_point:9,arrow_cross:12.5,arrow_circle:12.5};o(hw,"calculateDeltaAndAngle");Xn=o(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),fw=o(t=>({x:o(function(e,r,n){let i=0,a=Xn(n[0]).x=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(da,t.arrowTypeEnd)){let{angle:m,deltaX:g}=hw(n[n.length-1],n[n.length-2]);i=da[t.arrowTypeEnd]*Math.cos(m)*(g>=0?1:-1)}let s=Math.abs(Xn(e).x-Xn(n[n.length-1]).x),l=Math.abs(Xn(e).y-Xn(n[n.length-1]).y),u=Math.abs(Xn(e).x-Xn(n[0]).x),h=Math.abs(Xn(e).y-Xn(n[0]).y),f=da[t.arrowTypeStart],d=da[t.arrowTypeEnd],p=1;if(s0&&l0&&h=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(da,t.arrowTypeEnd)){let{angle:m,deltaY:g}=hw(n[n.length-1],n[n.length-2]);i=da[t.arrowTypeEnd]*Math.abs(Math.sin(m))*(g>=0?1:-1)}let s=Math.abs(Xn(e).y-Xn(n[n.length-1]).y),l=Math.abs(Xn(e).x-Xn(n[n.length-1]).x),u=Math.abs(Xn(e).y-Xn(n[0]).y),h=Math.abs(Xn(e).x-Xn(n[0]).x),f=da[t.arrowTypeStart],d=da[t.arrowTypeEnd],p=1;if(s0&&l0&&h{"use strict";pt();qte=o((t,e,r,n,i,a)=>{e.arrowTypeStart&&Hte(t,"start",e.arrowTypeStart,r,n,i,a),e.arrowTypeEnd&&Hte(t,"end",e.arrowTypeEnd,r,n,i,a)},"addEdgeMarkers"),FRe={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},Hte=o((t,e,r,n,i,a,s)=>{let l=FRe[r];if(!l){X.warn(`Unknown arrow type: ${r}`);return}let u=l.type,f=`${i}_${a}-${u}${e==="start"?"Start":"End"}`;if(s&&s.trim()!==""){let d=s.replace(/[^\dA-Za-z]/g,"_"),p=`${f}_${d}`;if(!document.getElementById(p)){let m=document.getElementById(f);if(m){let g=m.cloneNode(!0);g.id=p,g.querySelectorAll("path, circle, line").forEach(v=>{v.setAttribute("stroke",s),l.fill&&v.setAttribute("fill",s)}),m.parentNode?.appendChild(g)}}t.attr(`marker-${e}`,`url(${n}#${p})`)}else t.attr(`marker-${e}`,`url(${n}#${f})`)},"addEdgeMarker")});function pw(t,e){ge().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}function GRe(t){let e=[],r=[];for(let n=1;n5&&Math.abs(a.y-i.y)>5||i.y===a.y&&a.x===s.x&&Math.abs(a.x-i.x)>5&&Math.abs(a.y-s.y)>5)&&(e.push(a),r.push(n))}return{cornerPoints:e,cornerPointPositions:r}}function HRe(t,e){if(t.length<2)return"";let r="",n=t.length,i=1e-5;for(let a=0;a({...i}));if(t.length>=2&&da[e.arrowTypeStart]){let i=da[e.arrowTypeStart],a=t[0],s=t[1],{angle:l}=jte(a,s),u=i*Math.cos(l),h=i*Math.sin(l);r[0].x=a.x+u,r[0].y=a.y+h}let n=t.length;if(n>=2&&da[e.arrowTypeEnd]){let i=da[e.arrowTypeEnd],a=t[n-1],s=t[n-2],{angle:l}=jte(s,a),u=i*Math.cos(l),h=i*Math.sin(l);r[n-1].x=a.x-u,r[n-1].y=a.y-h}return r}var mw,pa,Kte,dw,gw,yw,$Re,zRe,Yte,Xte,VRe,URe,vw,j9=M(()=>{"use strict";Xt();gr();pt();zo();tr();X9();P2();yr();Ht();sw();Wte();$t();mw=new Map,pa=new Map,Kte=o(()=>{mw.clear(),pa.clear()},"clear"),dw=o(t=>t?t.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),gw=o(async(t,e)=>{let r=vr(ge().flowchart.htmlLabels),{labelStyles:n}=je(e);e.labelStyle=n;let i=await di(t,e.label,{style:e.labelStyle,useHtmlLabels:r,addSvgBackground:!0,isNode:!1});X.info("abc82",e,e.labelType);let a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label").attr("data-id",e.id);s.node().appendChild(i);let l=i.getBBox();if(r){let h=i.children[0],f=qe(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),mw.set(e.id,a),e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=await kc(e.startLabelLeft,dw(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).startLeft=f,pw(u,e.startLabelLeft)}if(e.startLabelRight){let h=await kc(e.startLabelRight,dw(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).startRight=f,pw(u,e.startLabelRight)}if(e.endLabelLeft){let h=await kc(e.endLabelLeft,dw(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).endLeft=f,pw(u,e.endLabelLeft)}if(e.endLabelRight){let h=await kc(e.endLabelRight,dw(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),pa.get(e.id)||pa.set(e.id,{}),pa.get(e.id).endRight=f,pw(u,e.endLabelRight)}return i},"insertEdgeLabel");o(pw,"setTerminalWidth");yw=o((t,e)=>{X.debug("Moving label abc88 ",t.id,t.label,mw.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=ge(),{subGraphTitleTotalMargin:i}=Pu(n);if(t.label){let a=mw.get(t.id),s=t.x,l=t.y;if(r){let u=qt.calcLabelPosition(r);X.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=pa.get(t.id).startLeft,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=pa.get(t.id).startRight,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=pa.get(t.id).endLeft,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=pa.get(t.id).endRight,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),$Re=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),zRe=o((t,e,r)=>{X.debug(`intersection calc abc89: +You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,r,n){let i=this.isLinkData(n)?n.id.replace("@",""):void 0;X.info("addLink",e,r,i);for(let a of e)for(let s of r){let l=a===e[e.length-1],u=s===r[0];l&&u?this.addSingleLink(a,s,n,i):this.addSingleLink(a,s,n,void 0)}}updateLinkInterpolate(e,r){e.forEach(n=>{n==="default"?this.edges.defaultInterpolate=r:this.edges[n].interpolate=r})}updateLink(e,r){e.forEach(n=>{if(typeof n=="number"&&n>=this.edges.length)throw new Error(`The index ${n} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);n==="default"?this.edges.defaultStyle=r:(this.edges[n].style=r,(this.edges[n]?.style?.length??0)>0&&!this.edges[n]?.style?.some(i=>i?.startsWith("fill"))&&this.edges[n]?.style?.push("fill:none"))})}addClass(e,r){let n=r.join().replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(i=>{let a=this.classes.get(i);a===void 0&&(a={id:i,styles:[],textStyles:[]},this.classes.set(i,a)),n?.forEach(s=>{if(/color/.exec(s)){let l=s.replace("fill","bgFill");a.textStyles.push(l)}a.styles.push(s)})})}setDirection(e){this.direction=e.trim(),/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,r){for(let n of e.split(",")){let i=this.vertices.get(n);i&&i.classes.push(r);let a=this.edges.find(l=>l.id===n);a&&a.classes.push(r);let s=this.subGraphLookup.get(n);s&&s.classes.push(r)}}setTooltip(e,r){if(r!==void 0){r=this.sanitizeText(r);for(let n of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(n):n,r)}}setClickFun(e,r,n){let i=this.lookUpDomId(e);if(xe().securityLevel!=="loose"||r===void 0)return;let a=[];if(typeof n=="string"){a=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let l=0;l{let l=document.querySelector(`[id="${i}"]`);l!==null&&l.addEventListener("click",()=>{jt.runFunc(r,...a)},!1)}))}setLink(e,r,n){e.split(",").forEach(i=>{let a=this.vertices.get(i);a!==void 0&&(a.link=jt.formatUrl(r,this.config),a.linkTarget=n)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFun(i,r,n)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(r=>{r(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let r=He(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=He("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),He(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=He(a.currentTarget);if(s.attr("title")===null)return;let u=a.currentTarget?.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.bottom+"px"),r.html(r.html().replace(/<br\/>/g,"
    ")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),He(a.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=xe(),Mr()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,r,n){let i=e.text.trim(),a=n.text;e===n&&/\s/.exec(n.text)&&(i=void 0);let l=o(p=>{let m={boolean:{},number:{},string:{}},g=[],y;return{nodeList:p.filter(function(x){let b=typeof x;return x.stmt&&x.stmt==="dir"?(y=x.value,!1):x.trim()===""?!1:b in m?m[b].hasOwnProperty(x)?!1:m[b][x]=!0:g.includes(x)?!1:g.push(x)}),dir:y}},"uniq")(r.flat()),u=l.nodeList,h=l.dir,f=xe().flowchart??{};if(h=h??(f.inheritDir?this.getDirection()??xe().direction??void 0:void 0),this.version==="gen-1")for(let p=0;p2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=r,this.subGraphs[r].id===e)return{result:!0,count:0};let i=0,a=1;for(;i=0){let l=this.indexNodes2(e,s);if(l.result)return{result:!0,count:a+l.count};a=a+l.count}i=i+1}return{result:!1,count:a}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let r=e.trim(),n="arrow_open";switch(r[0]){case"<":n="arrow_point",r=r.slice(1);break;case"x":n="arrow_cross",r=r.slice(1);break;case"o":n="arrow_circle",r=r.slice(1);break}let i="normal";return r.includes("=")&&(i="thick"),r.includes(".")&&(i="dotted"),{type:n,stroke:i}}countChar(e,r){let n=r.length,i=0;for(let a=0;a":i="arrow_point",r.startsWith("<")&&(i="double_"+i,n=n.slice(1));break;case"o":i="arrow_circle",r.startsWith("o")&&(i="double_"+i,n=n.slice(1));break}let a="normal",s=n.length-1;n.startsWith("=")&&(a="thick"),n.startsWith("~")&&(a="invisible");let l=this.countChar(".",n);return l&&(a="dotted",s=l),{type:i,stroke:a,length:s}}destructLink(e,r){let n=this.destructEndLink(e),i;if(r){if(i=this.destructStartLink(r),i.stroke!==n.stroke)return{type:"INVALID",stroke:"INVALID"};if(i.type==="arrow_open")i.type=n.type;else{if(i.type!==n.type)return{type:"INVALID",stroke:"INVALID"};i.type="double_"+i.type}return i.type==="double_arrow"&&(i.type="double_arrow_point"),i.length=n.length,i}return n}exists(e,r){for(let n of e)if(n.nodes.includes(r))return!0;return!1}makeUniq(e,r){let n=[];return e.nodes.forEach((i,a)=>{this.exists(r,i)||n.push(e.nodes[a])}),{nodes:n}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,r){return e.find(n=>n.id===r)}destructEdgeType(e){let r="none",n="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":n=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":r=e.replace("double_",""),n=r;break}return{arrowTypeStart:r,arrowTypeEnd:n}}addNodeFromVertex(e,r,n,i,a,s){let l=n.get(e.id),u=i.get(e.id)??!1,h=this.findNode(r,e.id);if(h)h.cssStyles=e.styles,h.cssCompiledStyles=this.getCompiledStyles(e.classes),h.cssClasses=e.classes.join(" ");else{let f={id:e.id,label:e.text,labelStyle:"",parentId:l,padding:a.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:s,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};u?r.push({...f,isGroup:!0,shape:"rect"}):r.push({...f,isGroup:!1,shape:this.getTypeFromVertex(e)})}}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}getData(){let e=xe(),r=[],n=[],i=this.getSubGraphs(),a=new Map,s=new Map;for(let h=i.length-1;h>=0;h--){let f=i[h];f.nodes.length>0&&s.set(f.id,!0);for(let d of f.nodes)a.set(d,f.id)}for(let h=i.length-1;h>=0;h--){let f=i[h];r.push({id:f.id,label:f.title,labelStyle:"",parentId:a.get(f.id),padding:8,cssCompiledStyles:this.getCompiledStyles(f.classes),cssClasses:f.classes.join(" "),shape:"rect",dir:f.dir,isGroup:!0,look:e.look})}this.getVertices().forEach(h=>{this.addNodeFromVertex(h,r,a,s,e,e.look||"classic")});let u=this.getEdges();return u.forEach((h,f)=>{let{arrowTypeStart:d,arrowTypeEnd:p}=this.destructEdgeType(h.type),m=[...u.defaultStyle??[]];h.style&&m.push(...h.style);let g={id:nu(h.start,h.end,{counter:f,prefix:"L"},h.id),isUserDefinedId:h.isUserDefinedId,start:h.start,end:h.end,type:h.type??"normal",label:h.text,labelpos:"c",thickness:h.stroke,minlen:h.length,classes:h?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":d,arrowTypeEnd:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":p,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(h.classes),labelStyle:m,style:m,pattern:h.stroke,look:e.look,animate:h.animate,animation:h.animation,curve:h.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};n.push(g)}),{nodes:r,edges:n,other:{},config:e}}defaultConfig(){return Ew.flowchart}}});var xl,y0=I(()=>{"use strict";kr();xl=o((t,e)=>{let r;return e==="sandbox"&&(r=He("#i"+t)),(e==="sandbox"?He(r.nodes()[0].contentDocument.body):He("body")).select(`[id="${t}"]`)},"getDiagramElement")});var Eh,ab=I(()=>{"use strict";Eh=o(({flowchart:t})=>{let e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0,n=e+r;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});var Ese,BFe,FFe,$Fe,zFe,GFe,VFe,Cse,l1,Ase,Yk=I(()=>{"use strict";Qt();wr();gt();ab();kr();Yt();yl();eM();qk();m0();Vt();Ese=o(async(t,e)=>{X.info("Creating subgraph rect for ",e.id,e);let r=xe(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=Qe(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=Sr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await Ai(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(Sr(r.flowchart.htmlLabels)){let C=g.children[0],D=He(g);y=C.getBoundingClientRect(),D.attr("width",y.width),D.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,T=e.y-x/2;X.trace("Data ",e,JSON.stringify(e));let E;if(e.look==="handDrawn"){let C=Je.svg(d),D=tt(e,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),R=C.path(so(b,T,v,x,0),D);E=d.insert(()=>(X.debug("Rough node insert CXC",R),R),":first-child"),E.select("path:nth-child(2)").attr("style",h.join(";")),E.select("path").attr("style",f.join(";").replace("fill","stroke"))}else E=d.insert("rect",":first-child"),E.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",T).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:w}=Eh(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+w})`),l){let C=m.select("span");C&&C.attr("style",l)}let k=E.node().getBBox();return e.offsetX=0,e.width=k.width,e.height=k.height,e.offsetY=y.height-e.padding/2,e.intersect=function(C){return Hf(e,C)},{cluster:d,labelBBox:y}},"rect"),BFe=o((t,e)=>{let r=t.insert("g").attr("class","note-cluster").attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(l){return Hf(e,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),FFe=o(async(t,e)=>{let r=xe(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await ou(e.label,e.labelStyle,void 0,!0)),g=m.getBBox();if(Sr(r.flowchart.htmlLabels)){let R=m.children[0],O=He(m);g=R.getBoundingClientRect(),O.attr("width",g.width),O.attr("height",g.height)}let y=0*e.padding,v=y/2,x=(e.width<=g.width+e.padding?g.width+e.padding:e.width)+y;e.width<=g.width+e.padding?e.diff=(x-e.width)/2-e.padding:e.diff=-e.padding;let b=e.height+y,T=e.height+y-g.height-6,E=e.x-x/2,w=e.y-b/2;e.width=x;let k=e.y-e.height/2-v+g.height+2,C;if(e.look==="handDrawn"){let R=e.cssClasses.includes("statediagram-cluster-alt"),O=Je.svg(h),L=e.rx||e.ry?O.path(so(E,w,x,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):O.rectangle(E,w,x,b,{seed:i});C=h.insert(()=>L,":first-child");let S=O.rectangle(E,k,x,T,{fill:R?a:s,fillStyle:R?"hachure":"solid",stroke:u,seed:i});C=h.insert(()=>L,":first-child"),p=h.insert(()=>S)}else C=f.insert("rect",":first-child"),C.attr("class","outer").attr("x",E).attr("y",w).attr("width",x).attr("height",b).attr("data-look",e.look),p.attr("class","inner").attr("x",E).attr("y",k).attr("width",x).attr("height",T);d.attr("transform",`translate(${e.x-g.width/2}, ${w+1-(Sr(r.flowchart.htmlLabels)?0:3)})`);let D=C.node().getBBox();return e.height=D.height,e.offsetX=0,e.offsetY=g.height-e.padding/2,e.labelBBox=g,e.intersect=function(R){return Hf(e,R)},{cluster:h,labelBBox:g}},"roundedWithTitle"),$Fe=o(async(t,e)=>{X.info("Creating subgraph rect for ",e.id,e);let r=xe(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=Qe(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=Sr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await Ai(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0,width:e.width}),y=g.getBBox();if(Sr(r.flowchart.htmlLabels)){let C=g.children[0],D=He(g);y=C.getBoundingClientRect(),D.attr("width",y.width),D.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,T=e.y-x/2;X.trace("Data ",e,JSON.stringify(e));let E;if(e.look==="handDrawn"){let C=Je.svg(d),D=tt(e,{roughness:.7,fill:a,stroke:s,fillWeight:4,seed:i}),R=C.path(so(b,T,v,x,e.rx),D);E=d.insert(()=>(X.debug("Rough node insert CXC",R),R),":first-child"),E.select("path:nth-child(2)").attr("style",h.join(";")),E.select("path").attr("style",f.join(";").replace("fill","stroke"))}else E=d.insert("rect",":first-child"),E.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",T).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:w}=Eh(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+w})`),l){let C=m.select("span");C&&C.attr("style",l)}let k=E.node().getBBox();return e.offsetX=0,e.width=k.width,e.height=k.height,e.offsetY=y.height-e.padding/2,e.intersect=function(C){return Hf(e,C)},{cluster:d,labelBBox:y}},"kanbanSection"),zFe=o((t,e)=>{let r=xe(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),u=0*e.padding,h=e.width+u;e.diff=-e.padding;let f=e.height+u,d=e.x-h/2,p=e.y-f/2;e.width=h;let m;if(e.look==="handDrawn"){let v=Je.svg(s).rectangle(d,p,h,f,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:a,seed:i});m=s.insert(()=>v,":first-child")}else m=l.insert("rect",":first-child"),m.attr("class","divider").attr("x",d).attr("y",p).attr("width",h).attr("height",f).attr("data-look",e.look);let g=m.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(y){return Hf(e,y)},{cluster:s,labelBBox:{}}},"divider"),GFe=Ese,VFe={rect:Ese,squareRect:GFe,roundedWithTitle:FFe,noteGroup:BFe,divider:zFe,kanbanSection:$Fe},Cse=new Map,l1=o(async(t,e)=>{let r=e.shape||"rect",n=await VFe[r](t,e);return Cse.set(e.id,n),n},"insertCluster"),Ase=o(()=>{Cse=new Map},"clear")});function jk(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=ii(t),e=ii(e);let[r,n]=[t.x,t.y],[i,a]=[e.x,e.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var Ia,wM,ii,Xk,kM=I(()=>{"use strict";Ia={aggregation:17.25,extension:17.25,composition:17.25,dependency:6,lollipop:13.5,arrow_point:4},wM={arrow_point:9,arrow_cross:12.5,arrow_circle:12.5};o(jk,"calculateDeltaAndAngle");ii=o(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),Xk=o(t=>({x:o(function(e,r,n){let i=0,a=ii(n[0]).x=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Ia,t.arrowTypeEnd)){let{angle:m,deltaX:g}=jk(n[n.length-1],n[n.length-2]);i=Ia[t.arrowTypeEnd]*Math.cos(m)*(g>=0?1:-1)}let s=Math.abs(ii(e).x-ii(n[n.length-1]).x),l=Math.abs(ii(e).y-ii(n[n.length-1]).y),u=Math.abs(ii(e).x-ii(n[0]).x),h=Math.abs(ii(e).y-ii(n[0]).y),f=Ia[t.arrowTypeStart],d=Ia[t.arrowTypeEnd],p=1;if(s0&&l0&&h=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Ia,t.arrowTypeEnd)){let{angle:m,deltaY:g}=jk(n[n.length-1],n[n.length-2]);i=Ia[t.arrowTypeEnd]*Math.abs(Math.sin(m))*(g>=0?1:-1)}let s=Math.abs(ii(e).y-ii(n[n.length-1]).y),l=Math.abs(ii(e).x-ii(n[n.length-1]).x),u=Math.abs(ii(e).y-ii(n[0]).y),h=Math.abs(ii(e).x-ii(n[0]).x),f=Ia[t.arrowTypeStart],d=Ia[t.arrowTypeEnd],p=1;if(s0&&l0&&h{"use strict";gt();Dse=o((t,e,r,n,i,a)=>{e.arrowTypeStart&&_se(t,"start",e.arrowTypeStart,r,n,i,a),e.arrowTypeEnd&&_se(t,"end",e.arrowTypeEnd,r,n,i,a)},"addEdgeMarkers"),qFe={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},_se=o((t,e,r,n,i,a,s)=>{let l=qFe[r];if(!l){X.warn(`Unknown arrow type: ${r}`);return}let u=l.type,f=`${i}_${a}-${u}${e==="start"?"Start":"End"}`;if(s&&s.trim()!==""){let d=s.replace(/[^\dA-Za-z]/g,"_"),p=`${f}_${d}`;if(!document.getElementById(p)){let m=document.getElementById(f);if(m){let g=m.cloneNode(!0);g.id=p,g.querySelectorAll("path, circle, line").forEach(v=>{v.setAttribute("stroke",s),l.fill&&v.setAttribute("fill",s)}),m.parentNode?.appendChild(g)}}t.attr(`marker-${e}`,`url(${n}#${p})`)}else t.attr(`marker-${e}`,`url(${n}#${f})`)},"addEdgeMarker")});function Qk(t,e){xe().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}function HFe(t){let e=[],r=[];for(let n=1;n5&&Math.abs(a.y-i.y)>5||i.y===a.y&&a.x===s.x&&Math.abs(a.x-i.x)>5&&Math.abs(a.y-s.y)>5)&&(e.push(a),r.push(n))}return{cornerPoints:e,cornerPointPositions:r}}function XFe(t,e){if(t.length<2)return"";let r="",n=t.length,i=1e-5;for(let a=0;a({...i}));if(t.length>=2&&Ia[e.arrowTypeStart]){let i=Ia[e.arrowTypeStart],a=t[0],s=t[1],{angle:l}=Mse(a,s),u=i*Math.cos(l),h=i*Math.sin(l);r[0].x=a.x+u,r[0].y=a.y+h}let n=t.length;if(n>=2&&Ia[e.arrowTypeEnd]){let i=Ia[e.arrowTypeEnd],a=t[n-1],s=t[n-2],{angle:l}=Mse(s,a),u=i*Math.cos(l),h=i*Math.sin(l);r[n-1].x=a.x-u,r[n-1].y=a.y-h}return r}var Zk,Oa,Ise,Kk,Jk,eS,UFe,WFe,Lse,Nse,YFe,jFe,tS,SM=I(()=>{"use strict";Qt();wr();gt();yl();sr();kM();ab();kr();Yt();qk();Rse();Vt();Zk=new Map,Oa=new Map,Ise=o(()=>{Zk.clear(),Oa.clear()},"clear"),Kk=o(t=>t?t.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),Jk=o(async(t,e)=>{let r=Sr(xe().flowchart.htmlLabels),{labelStyles:n}=Qe(e);e.labelStyle=n;let i=await Ai(t,e.label,{style:e.labelStyle,useHtmlLabels:r,addSvgBackground:!0,isNode:!1});X.info("abc82",e,e.labelType);let a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label").attr("data-id",e.id);s.node().appendChild(i);let l=i.getBBox();if(r){let h=i.children[0],f=He(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),Zk.set(e.id,a),e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=await ou(e.startLabelLeft,Kk(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Oa.get(e.id)||Oa.set(e.id,{}),Oa.get(e.id).startLeft=f,Qk(u,e.startLabelLeft)}if(e.startLabelRight){let h=await ou(e.startLabelRight,Kk(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Oa.get(e.id)||Oa.set(e.id,{}),Oa.get(e.id).startRight=f,Qk(u,e.startLabelRight)}if(e.endLabelLeft){let h=await ou(e.endLabelLeft,Kk(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Oa.get(e.id)||Oa.set(e.id,{}),Oa.get(e.id).endLeft=f,Qk(u,e.endLabelLeft)}if(e.endLabelRight){let h=await ou(e.endLabelRight,Kk(e.labelStyle)),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Oa.get(e.id)||Oa.set(e.id,{}),Oa.get(e.id).endRight=f,Qk(u,e.endLabelRight)}return i},"insertEdgeLabel");o(Qk,"setTerminalWidth");eS=o((t,e)=>{X.debug("Moving label abc88 ",t.id,t.label,Zk.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=xe(),{subGraphTitleTotalMargin:i}=Eh(n);if(t.label){let a=Zk.get(t.id),s=t.x,l=t.y;if(r){let u=jt.calcLabelPosition(r);X.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=Oa.get(t.id).startLeft,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=Oa.get(t.id).startRight,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=Oa.get(t.id).endLeft,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=Oa.get(t.id).endRight,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),UFe=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),WFe=o((t,e,r)=>{X.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(e)} insidePoint : ${JSON.stringify(r)} - node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{X.warn("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(X.info("abc88 checking point",a,e),!$Re(e,a)&&!i){let s=zRe(e,n,a);X.debug("abc88 inside",a,n,s),X.debug("abc88 intersection",s,e);let l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)?X.warn("abc88 no intersect",s,r):r.push(s),i=!0}else X.warn("abc88 outside",a,n),n=a,i||r.push(a)}),X.debug("returning points",r),r},"cutPathAtIntersect");o(GRe,"extractCornerPoints");Xte=o(function(t,e,r){let n=e.x-t.x,i=e.y-t.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:e.x-s*n,y:e.y-s*i}},"findAdjacentPoint"),VRe=o(function(t){let{cornerPointPositions:e}=GRe(t),r=[];for(let n=0;n10&&Math.abs(a.y-i.y)>=10){X.debug("Corner point fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));let m=5;s.x===l.x?p={x:h<0?l.x-m+d:l.x+m-d,y:f<0?l.y-d:l.y+d}:p={x:h<0?l.x-d:l.x+d,y:f<0?l.y-m+d:l.y+m-d}}else X.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(t[n]);return r},"fixCorners"),URe=o((t,e,r)=>{let n=t-e-r,i=2,a=2,s=i+a,l=Math.floor(n/s),u=Array(l).fill(`${i} ${a}`).join(" ");return`0 ${e} ${u} ${r}`},"generateDashArray"),vw=o(function(t,e,r,n,i,a,s,l=!1){let{handDrawnSeed:u}=ge(),h=e.points,f=!1,d=i;var p=a;let m=[];for(let D in e.cssCompiledStyles)D2(D)||m.push(e.cssCompiledStyles[D]);X.debug("UIO intersect check",e.points,p.x,d.x),p.intersect&&d.intersect&&!l&&(h=h.slice(1,e.points.length-1),h.unshift(d.intersect(h[0])),X.debug("Last point UIO",e.start,"-->",e.end,h[h.length-1],p,p.intersect(h[h.length-1])),h.push(p.intersect(h[h.length-1])));let g=btoa(JSON.stringify(h));e.toCluster&&(X.info("to cluster abc88",r.get(e.toCluster)),h=Yte(e.points,r.get(e.toCluster).node),f=!0),e.fromCluster&&(X.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(h,null,2)),h=Yte(h.reverse(),r.get(e.fromCluster).node).reverse(),f=!0);let y=h.filter(D=>!Number.isNaN(D.y));y=VRe(y);let v=No;switch(v=Cu,e.curve){case"linear":v=Cu;break;case"basis":v=No;break;case"cardinal":v=Xv;break;case"bumpX":v=Uv;break;case"bumpY":v=Hv;break;case"catmullRom":v=Qv;break;case"monotoneX":v=Zv;break;case"monotoneY":v=Jv;break;case"natural":v=J0;break;case"step":v=em;break;case"stepAfter":v=t2;break;case"stepBefore":v=e2;break;default:v=No}let{x,y:b}=fw(e),T=Cl().x(x).y(b).curve(v),S;switch(e.thickness){case"normal":S="edge-thickness-normal";break;case"thick":S="edge-thickness-thick";break;case"invisible":S="edge-thickness-invisible";break;default:S="edge-thickness-normal"}switch(e.pattern){case"solid":S+=" edge-pattern-solid";break;case"dotted":S+=" edge-pattern-dotted";break;case"dashed":S+=" edge-pattern-dashed";break;default:S+=" edge-pattern-solid"}let w,k=e.curve==="rounded"?HRe(qRe(y,e),5):T(y),C=Array.isArray(e.style)?e.style:[e.style],A=C.find(D=>D?.startsWith("stroke:")),L=!1;if(e.look==="handDrawn"){let D=Ze.svg(t);Object.assign([],y);let O=D.path(k,{roughness:.3,seed:u});S+=" transition",w=qe(O).select("path").attr("id",e.id).attr("class"," "+S+(e.classes?" "+e.classes:"")).attr("style",C?C.reduce((P,B)=>P+";"+B,""):"");let N=w.attr("d");w.attr("d",N),t.node().appendChild(w.node())}else{let D=m.join(";"),O=C?C.reduce((U,j)=>U+j+";",""):"",N="";e.animate&&(N=" edge-animation-fast"),e.animation&&(N=" edge-animation-"+e.animation);let P=(D?D+";"+O+";":O)+";"+(C?C.reduce((U,j)=>U+";"+j,""):"");w=t.append("path").attr("d",k).attr("id",e.id).attr("class"," "+S+(e.classes?" "+e.classes:"")+(N??"")).attr("style",P),A=P.match(/stroke:([^;]+)/)?.[1],L=e.animate===!0||!!e.animation||D.includes("animation");let B=w.node(),F=typeof B.getTotalLength=="function"?B.getTotalLength():0,V=Y9[e.arrowTypeStart]||0,$=Y9[e.arrowTypeEnd]||0;if(e.look==="neo"&&!L){let j=`stroke-dasharray: ${e.pattern==="dotted"||e.pattern==="dashed"?URe(F,V,$):`0 ${V} ${F-V-$} ${$}`}; stroke-dashoffset: 0;`;w.attr("style",j+w.attr("style"))}}w.attr("data-edge",!0),w.attr("data-et","edge"),w.attr("data-id",e.id),w.attr("data-points",g),e.showPoints&&y.forEach(D=>{t.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",D.x).attr("cy",D.y)});let I="";(ge().flowchart.arrowMarkerAbsolute||ge().state.arrowMarkerAbsolute)&&(I=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,I=I.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),X.info("arrowTypeStart",e.arrowTypeStart),X.info("arrowTypeEnd",e.arrowTypeEnd),qte(w,e,I,s,n,A);let R=Math.floor(h.length/2),E=h[R];qt.isLabelCoordinateInPath(E,w.attr("d"))||(f=!0);let _={};return f&&(_.updatedPath=h),_.originalPath=e.points,_},"insertEdge");o(HRe,"generateRoundedPath");o(jte,"calculateDeltaAndAngle");o(qRe,"applyMarkerOffsetsToPoints")});var WRe,YRe,XRe,jRe,KRe,QRe,ZRe,JRe,eNe,tNe,rNe,nNe,iNe,aNe,sNe,oNe,lNe,xw,K9=M(()=>{"use strict";pt();WRe=o((t,e,r,n)=>{e.forEach(i=>{lNe[i](t,r,n)})},"insertMarkers"),YRe=o((t,e,r)=>{X.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),XRe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),jRe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),KRe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),QRe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),ZRe=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),JRe=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),eNe=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),tNe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),rNe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),nNe=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("d","M9,0 L9,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),iNe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),aNe=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),sNe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0 + node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{X.warn("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(X.info("abc88 checking point",a,e),!UFe(e,a)&&!i){let s=WFe(e,n,a);X.debug("abc88 inside",a,n,s),X.debug("abc88 intersection",s,e);let l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)?X.warn("abc88 no intersect",s,r):r.push(s),i=!0}else X.warn("abc88 outside",a,n),n=a,i||r.push(a)}),X.debug("returning points",r),r},"cutPathAtIntersect");o(HFe,"extractCornerPoints");Nse=o(function(t,e,r){let n=e.x-t.x,i=e.y-t.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:e.x-s*n,y:e.y-s*i}},"findAdjacentPoint"),YFe=o(function(t){let{cornerPointPositions:e}=HFe(t),r=[];for(let n=0;n10&&Math.abs(a.y-i.y)>=10){X.debug("Corner point fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));let m=5;s.x===l.x?p={x:h<0?l.x-m+d:l.x+m-d,y:f<0?l.y-d:l.y+d}:p={x:h<0?l.x-d:l.x+d,y:f<0?l.y-m+d:l.y+m-d}}else X.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(t[n]);return r},"fixCorners"),jFe=o((t,e,r)=>{let n=t-e-r,i=2,a=2,s=i+a,l=Math.floor(n/s),u=Array(l).fill(`${i} ${a}`).join(" ");return`0 ${e} ${u} ${r}`},"generateDashArray"),tS=o(function(t,e,r,n,i,a,s,l=!1){let{handDrawnSeed:u}=xe(),h=e.points,f=!1,d=i;var p=a;let m=[];for(let _ in e.cssCompiledStyles)Zx(_)||m.push(e.cssCompiledStyles[_]);X.debug("UIO intersect check",e.points,p.x,d.x),p.intersect&&d.intersect&&!l&&(h=h.slice(1,e.points.length-1),h.unshift(d.intersect(h[0])),X.debug("Last point UIO",e.start,"-->",e.end,h[h.length-1],p,p.intersect(h[h.length-1])),h.push(p.intersect(h[h.length-1])));let g=btoa(JSON.stringify(h));e.toCluster&&(X.info("to cluster abc88",r.get(e.toCluster)),h=Lse(e.points,r.get(e.toCluster).node),f=!0),e.fromCluster&&(X.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(h,null,2)),h=Lse(h.reverse(),r.get(e.fromCluster).node).reverse(),f=!0);let y=h.filter(_=>!Number.isNaN(_.y));y=YFe(y);let v=cl;switch(v=mh,e.curve){case"linear":v=mh;break;case"basis":v=cl;break;case"cardinal":v=yx;break;case"bumpX":v=fx;break;case"bumpY":v=dx;break;case"catmullRom":v=bx;break;case"monotoneX":v=Tx;break;case"monotoneY":v=wx;break;case"natural":v=Pg;break;case"step":v=Bg;break;case"stepAfter":v=Sx;break;case"stepBefore":v=kx;break;default:v=cl}let{x,y:b}=Xk(e),T=ac().x(x).y(b).curve(v),E;switch(e.thickness){case"normal":E="edge-thickness-normal";break;case"thick":E="edge-thickness-thick";break;case"invisible":E="edge-thickness-invisible";break;default:E="edge-thickness-normal"}switch(e.pattern){case"solid":E+=" edge-pattern-solid";break;case"dotted":E+=" edge-pattern-dotted";break;case"dashed":E+=" edge-pattern-dashed";break;default:E+=" edge-pattern-solid"}let w,k=e.curve==="rounded"?XFe(KFe(y,e),5):T(y),C=Array.isArray(e.style)?e.style:[e.style],D=C.find(_=>_?.startsWith("stroke:")),R=!1;if(e.look==="handDrawn"){let _=Je.svg(t);Object.assign([],y);let N=_.path(k,{roughness:.3,seed:u});E+=" transition",w=He(N).select("path").attr("id",e.id).attr("class"," "+E+(e.classes?" "+e.classes:"")).attr("style",C?C.reduce((P,B)=>P+";"+B,""):"");let M=w.attr("d");w.attr("d",M),t.node().appendChild(w.node())}else{let _=m.join(";"),N=C?C.reduce((V,K)=>V+K+";",""):"",M="";e.animate&&(M=" edge-animation-fast"),e.animation&&(M=" edge-animation-"+e.animation);let P=(_?_+";"+N+";":N)+";"+(C?C.reduce((V,K)=>V+";"+K,""):"");w=t.append("path").attr("d",k).attr("id",e.id).attr("class"," "+E+(e.classes?" "+e.classes:"")+(M??"")).attr("style",P),D=P.match(/stroke:([^;]+)/)?.[1],R=e.animate===!0||!!e.animation||_.includes("animation");let B=w.node(),F=typeof B.getTotalLength=="function"?B.getTotalLength():0,G=wM[e.arrowTypeStart]||0,$=wM[e.arrowTypeEnd]||0;if(e.look==="neo"&&!R){let K=`stroke-dasharray: ${e.pattern==="dotted"||e.pattern==="dashed"?jFe(F,G,$):`0 ${G} ${F-G-$} ${$}`}; stroke-dashoffset: 0;`;w.attr("style",K+w.attr("style"))}}w.attr("data-edge",!0),w.attr("data-et","edge"),w.attr("data-id",e.id),w.attr("data-points",g),e.showPoints&&y.forEach(_=>{t.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",_.x).attr("cy",_.y)});let O="";(xe().flowchart.arrowMarkerAbsolute||xe().state.arrowMarkerAbsolute)&&(O=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,O=O.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),X.info("arrowTypeStart",e.arrowTypeStart),X.info("arrowTypeEnd",e.arrowTypeEnd),Dse(w,e,O,s,n,D);let L=Math.floor(h.length/2),S=h[L];jt.isLabelCoordinateInPath(S,w.attr("d"))||(f=!0);let A={};return f&&(A.updatedPath=h),A.originalPath=e.points,A},"insertEdge");o(XFe,"generateRoundedPath");o(Mse,"calculateDeltaAndAngle");o(KFe,"applyMarkerOffsetsToPoints")});var QFe,ZFe,JFe,e$e,t$e,r$e,n$e,i$e,a$e,s$e,o$e,l$e,c$e,u$e,h$e,f$e,d$e,rS,EM=I(()=>{"use strict";gt();QFe=o((t,e,r,n)=>{e.forEach(i=>{d$e[i](t,r,n)})},"insertMarkers"),ZFe=o((t,e,r)=>{X.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),JFe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),e$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),t$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),r$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),n$e=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),i$e=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),a$e=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),s$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),o$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),l$e=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("d","M9,0 L9,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),c$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),u$e=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),h$e=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0 L20,10 M20,10 - L0,20`)},"requirement_arrow"),oNe=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),lNe={extension:YRe,composition:XRe,aggregation:jRe,dependency:KRe,lollipop:QRe,point:ZRe,circle:JRe,cross:eNe,barb:tNe,only_one:rNe,zero_or_one:nNe,one_or_more:iNe,zero_or_more:aNe,requirement_arrow:sNe,requirement_contains:oNe},xw=WRe});async function Cm(t,e,r){let n,i;e.shape==="rect"&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect");let a=e.shape?q9[e.shape]:void 0;if(!a)throw new Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let s;r.config.securityLevel==="sandbox"?s="_top":e.linkTarget&&(s=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",s??null),i=await a(n,e,r)}else i=await a(t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),bw.set(e.id,n),e.haveCallback&&n.attr("class",n.attr("class")+" clickable"),n}var bw,Qte,Zte,B2,Tw=M(()=>{"use strict";pt();W9();bw=new Map;o(Cm,"insertNode");Qte=o((t,e)=>{bw.set(e.id,t)},"setNodeElem"),Zte=o(()=>{bw.clear()},"clear"),B2=o(t=>{let e=bw.get(t.id);X.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});var Jte,ere=M(()=>{"use strict";qn();gr();pt();uw();j9();K9();Tw();It();tr();Jte={common:tt,getConfig:Qt,insertCluster:Sm,insertEdge:vw,insertEdgeLabel:gw,insertMarkers:xw,insertNode:Cm,interpolateToCurve:FL,labelHelper:ut,log:X,positionEdgeLabel:yw}});function uNe(t){return typeof t=="symbol"||ai(t)&&fa(t)==cNe}var cNe,uo,tp=M(()=>{"use strict";_u();Oo();cNe="[object Symbol]";o(uNe,"isSymbol");uo=uNe});function hNe(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r{"use strict";o(hNe,"arrayMap");$s=hNe});function nre(t){if(typeof t=="string")return t;if(Bt(t))return $s(t,nre)+"";if(uo(t))return rre?rre.call(t):"";var e=t+"";return e=="0"&&1/t==-fNe?"-0":e}var fNe,tre,rre,ire,are=M(()=>{"use strict";$d();rp();Yn();tp();fNe=1/0,tre=Ki?Ki.prototype:void 0,rre=tre?tre.toString:void 0;o(nre,"baseToString");ire=nre});function pNe(t){for(var e=t.length;e--&&dNe.test(t.charAt(e)););return e}var dNe,sre,ore=M(()=>{"use strict";dNe=/\s/;o(pNe,"trimmedEndIndex");sre=pNe});function gNe(t){return t&&t.slice(0,sre(t)+1).replace(mNe,"")}var mNe,lre,cre=M(()=>{"use strict";ore();mNe=/^\s+/;o(gNe,"baseTrim");lre=gNe});function TNe(t){if(typeof t=="number")return t;if(uo(t))return ure;if(Sn(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Sn(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=lre(t);var r=vNe.test(t);return r||xNe.test(t)?bNe(t.slice(2),r?2:8):yNe.test(t)?ure:+t}var ure,yNe,vNe,xNe,bNe,hre,fre=M(()=>{"use strict";cre();oo();tp();ure=NaN,yNe=/^[-+]0x[0-9a-f]+$/i,vNe=/^0b[01]+$/i,xNe=/^0o[0-7]+$/i,bNe=parseInt;o(TNe,"toNumber");hre=TNe});function kNe(t){if(!t)return t===0?t:0;if(t=hre(t),t===dre||t===-dre){var e=t<0?-1:1;return e*wNe}return t===t?t:0}var dre,wNe,Am,Q9=M(()=>{"use strict";fre();dre=1/0,wNe=17976931348623157e292;o(kNe,"toFinite");Am=kNe});function ENe(t){var e=Am(t),r=e%1;return e===e?r?e-r:e:0}var Ec,_m=M(()=>{"use strict";Q9();o(ENe,"toInteger");Ec=ENe});var SNe,ww,pre=M(()=>{"use strict";Fh();Mo();SNe=Ls(hi,"WeakMap"),ww=SNe});function CNe(){}var si,Z9=M(()=>{"use strict";o(CNe,"noop");si=CNe});function ANe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(ANe,"arrayEach");kw=ANe});function _Ne(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(_Ne,"baseFindIndex");Ew=_Ne});function DNe(t){return t!==t}var mre,gre=M(()=>{"use strict";o(DNe,"baseIsNaN");mre=DNe});function LNe(t,e,r){for(var n=r-1,i=t.length;++n{"use strict";o(LNe,"strictIndexOf");yre=LNe});function RNe(t,e,r){return e===e?yre(t,e,r):Ew(t,mre,r)}var Dm,Sw=M(()=>{"use strict";eR();gre();vre();o(RNe,"baseIndexOf");Dm=RNe});function NNe(t,e){var r=t==null?0:t.length;return!!r&&Dm(t,e,0)>-1}var Cw,tR=M(()=>{"use strict";Sw();o(NNe,"arrayIncludes");Cw=NNe});var MNe,xre,bre=M(()=>{"use strict";SL();MNe=bT(Object.keys,Object),xre=MNe});function PNe(t){if(!mc(t))return xre(t);var e=[];for(var r in Object(t))ONe.call(t,r)&&r!="constructor"&&e.push(r);return e}var INe,ONe,Lm,Aw=M(()=>{"use strict";dm();bre();INe=Object.prototype,ONe=INe.hasOwnProperty;o(PNe,"baseKeys");Lm=PNe});function BNe(t){return fi(t)?ST(t):Lm(t)}var qr,Sc=M(()=>{"use strict";LL();Aw();Po();o(BNe,"keys");qr=BNe});var FNe,$Ne,zNe,ma,Tre=M(()=>{"use strict";ym();Hd();IL();Po();dm();Sc();FNe=Object.prototype,$Ne=FNe.hasOwnProperty,zNe=_T(function(t,e){if(mc(e)||fi(e)){$o(e,qr(e),t);return}for(var r in e)$Ne.call(e,r)&&gc(t,r,e[r])}),ma=zNe});function UNe(t,e){if(Bt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||uo(t)?!0:VNe.test(t)||!GNe.test(t)||e!=null&&t in Object(e)}var GNe,VNe,Rm,_w=M(()=>{"use strict";Yn();tp();GNe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,VNe=/^\w*$/;o(UNe,"isKey");Rm=UNe});function qNe(t){var e=am(t,function(n){return r.size===HNe&&r.clear(),n}),r=e.cache;return e}var HNe,wre,kre=M(()=>{"use strict";vL();HNe=500;o(qNe,"memoizeCapped");wre=qNe});var WNe,YNe,XNe,Ere,Sre=M(()=>{"use strict";kre();WNe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,YNe=/\\(\\)?/g,XNe=wre(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(WNe,function(r,n,i,a){e.push(i?a.replace(YNe,"$1"):n||r)}),e}),Ere=XNe});function jNe(t){return t==null?"":ire(t)}var Dw,rR=M(()=>{"use strict";are();o(jNe,"toString");Dw=jNe});function KNe(t,e){return Bt(t)?t:Rm(t,e)?[t]:Ere(Dw(t))}var rf,F2=M(()=>{"use strict";Yn();_w();Sre();rR();o(KNe,"castPath");rf=KNe});function ZNe(t){if(typeof t=="string"||uo(t))return t;var e=t+"";return e=="0"&&1/t==-QNe?"-0":e}var QNe,Cc,Nm=M(()=>{"use strict";tp();QNe=1/0;o(ZNe,"toKey");Cc=ZNe});function JNe(t,e){e=rf(e,t);for(var r=0,n=e.length;t!=null&&r{"use strict";F2();Nm();o(JNe,"baseGet");nf=JNe});function eMe(t,e,r){var n=t==null?void 0:nf(t,e);return n===void 0?r:n}var Cre,Are=M(()=>{"use strict";$2();o(eMe,"get");Cre=eMe});function tMe(t,e){for(var r=-1,n=e.length,i=t.length;++r{"use strict";o(tMe,"arrayPush");Mm=tMe});function rMe(t){return Bt(t)||_l(t)||!!(_re&&t&&t[_re])}var _re,Dre,Lre=M(()=>{"use strict";$d();pm();Yn();_re=Ki?Ki.isConcatSpreadable:void 0;o(rMe,"isFlattenable");Dre=rMe});function Rre(t,e,r,n,i){var a=-1,s=t.length;for(r||(r=Dre),i||(i=[]);++a0&&r(l)?e>1?Rre(l,e-1,r,n,i):Mm(i,l):n||(i[i.length]=l)}return i}var Ac,Im=M(()=>{"use strict";Lw();Lre();o(Rre,"baseFlatten");Ac=Rre});function nMe(t){var e=t==null?0:t.length;return e?Ac(t,1):[]}var Qr,Rw=M(()=>{"use strict";Im();o(nMe,"flatten");Qr=nMe});function iMe(t){return AT(CT(t,void 0,Qr),t+"")}var Nre,Mre=M(()=>{"use strict";Rw();RL();ML();o(iMe,"flatRest");Nre=iMe});function aMe(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(i);++n{"use strict";o(aMe,"baseSlice");Nw=aMe});function pMe(t){return dMe.test(t)}var sMe,oMe,lMe,cMe,uMe,hMe,fMe,dMe,Ire,Ore=M(()=>{"use strict";sMe="\\ud800-\\udfff",oMe="\\u0300-\\u036f",lMe="\\ufe20-\\ufe2f",cMe="\\u20d0-\\u20ff",uMe=oMe+lMe+cMe,hMe="\\ufe0e\\ufe0f",fMe="\\u200d",dMe=RegExp("["+fMe+sMe+uMe+hMe+"]");o(pMe,"hasUnicode");Ire=pMe});function mMe(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i{"use strict";o(mMe,"arrayReduce");Pre=mMe});function gMe(t,e){return t&&$o(e,qr(e),t)}var Fre,$re=M(()=>{"use strict";Hd();Sc();o(gMe,"baseAssign");Fre=gMe});function yMe(t,e){return t&&$o(e,Rs(e),t)}var zre,Gre=M(()=>{"use strict";Hd();qh();o(yMe,"baseAssignIn");zre=yMe});function vMe(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r{"use strict";o(vMe,"arrayFilter");Om=vMe});function xMe(){return[]}var Iw,iR=M(()=>{"use strict";o(xMe,"stubArray");Iw=xMe});var bMe,TMe,Vre,wMe,Pm,Ow=M(()=>{"use strict";Mw();iR();bMe=Object.prototype,TMe=bMe.propertyIsEnumerable,Vre=Object.getOwnPropertySymbols,wMe=Vre?function(t){return t==null?[]:(t=Object(t),Om(Vre(t),function(e){return TMe.call(t,e)}))}:Iw,Pm=wMe});function kMe(t,e){return $o(t,Pm(t),e)}var Ure,Hre=M(()=>{"use strict";Hd();Ow();o(kMe,"copySymbols");Ure=kMe});var EMe,SMe,Pw,aR=M(()=>{"use strict";Lw();TT();Ow();iR();EMe=Object.getOwnPropertySymbols,SMe=EMe?function(t){for(var e=[];t;)Mm(e,Pm(t)),t=fm(t);return e}:Iw,Pw=SMe});function CMe(t,e){return $o(t,Pw(t),e)}var qre,Wre=M(()=>{"use strict";Hd();aR();o(CMe,"copySymbolsIn");qre=CMe});function AMe(t,e,r){var n=e(t);return Bt(t)?n:Mm(n,r(t))}var Bw,sR=M(()=>{"use strict";Lw();Yn();o(AMe,"baseGetAllKeys");Bw=AMe});function _Me(t){return Bw(t,qr,Pm)}var z2,oR=M(()=>{"use strict";sR();Ow();Sc();o(_Me,"getAllKeys");z2=_Me});function DMe(t){return Bw(t,Rs,Pw)}var Fw,lR=M(()=>{"use strict";sR();aR();qh();o(DMe,"getAllKeysIn");Fw=DMe});var LMe,$w,Yre=M(()=>{"use strict";Fh();Mo();LMe=Ls(hi,"DataView"),$w=LMe});var RMe,zw,Xre=M(()=>{"use strict";Fh();Mo();RMe=Ls(hi,"Promise"),zw=RMe});var NMe,af,cR=M(()=>{"use strict";Fh();Mo();NMe=Ls(hi,"Set"),af=NMe});var jre,MMe,Kre,Qre,Zre,Jre,IMe,OMe,PMe,BMe,FMe,np,ho,ip=M(()=>{"use strict";Yre();dT();Xre();cR();pre();_u();mL();jre="[object Map]",MMe="[object Object]",Kre="[object Promise]",Qre="[object Set]",Zre="[object WeakMap]",Jre="[object DataView]",IMe=Du($w),OMe=Du(Gh),PMe=Du(zw),BMe=Du(af),FMe=Du(ww),np=fa;($w&&np(new $w(new ArrayBuffer(1)))!=Jre||Gh&&np(new Gh)!=jre||zw&&np(zw.resolve())!=Kre||af&&np(new af)!=Qre||ww&&np(new ww)!=Zre)&&(np=o(function(t){var e=fa(t),r=e==MMe?t.constructor:void 0,n=r?Du(r):"";if(n)switch(n){case IMe:return Jre;case OMe:return jre;case PMe:return Kre;case BMe:return Qre;case FMe:return Zre}return e},"getTag"));ho=np});function GMe(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&zMe.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var $Me,zMe,ene,tne=M(()=>{"use strict";$Me=Object.prototype,zMe=$Me.hasOwnProperty;o(GMe,"initCloneArray");ene=GMe});function VMe(t,e){var r=e?hm(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var rne,nne=M(()=>{"use strict";yT();o(VMe,"cloneDataView");rne=VMe});function HMe(t){var e=new t.constructor(t.source,UMe.exec(t));return e.lastIndex=t.lastIndex,e}var UMe,ine,ane=M(()=>{"use strict";UMe=/\w*$/;o(HMe,"cloneRegExp");ine=HMe});function qMe(t){return one?Object(one.call(t)):{}}var sne,one,lne,cne=M(()=>{"use strict";$d();sne=Ki?Ki.prototype:void 0,one=sne?sne.valueOf:void 0;o(qMe,"cloneSymbol");lne=qMe});function hIe(t,e,r){var n=t.constructor;switch(e){case eIe:return hm(t);case WMe:case YMe:return new n(+t);case tIe:return rne(t,r);case rIe:case nIe:case iIe:case aIe:case sIe:case oIe:case lIe:case cIe:case uIe:return vT(t,r);case XMe:return new n;case jMe:case ZMe:return new n(t);case KMe:return ine(t);case QMe:return new n;case JMe:return lne(t)}}var WMe,YMe,XMe,jMe,KMe,QMe,ZMe,JMe,eIe,tIe,rIe,nIe,iIe,aIe,sIe,oIe,lIe,cIe,uIe,une,hne=M(()=>{"use strict";yT();nne();ane();cne();kL();WMe="[object Boolean]",YMe="[object Date]",XMe="[object Map]",jMe="[object Number]",KMe="[object RegExp]",QMe="[object Set]",ZMe="[object String]",JMe="[object Symbol]",eIe="[object ArrayBuffer]",tIe="[object DataView]",rIe="[object Float32Array]",nIe="[object Float64Array]",iIe="[object Int8Array]",aIe="[object Int16Array]",sIe="[object Int32Array]",oIe="[object Uint8Array]",lIe="[object Uint8ClampedArray]",cIe="[object Uint16Array]",uIe="[object Uint32Array]";o(hIe,"initCloneByTag");une=hIe});function dIe(t){return ai(t)&&ho(t)==fIe}var fIe,fne,dne=M(()=>{"use strict";ip();Oo();fIe="[object Map]";o(dIe,"baseIsMap");fne=dIe});var pne,pIe,mne,gne=M(()=>{"use strict";dne();Ud();d2();pne=Fo&&Fo.isMap,pIe=pne?Bo(pne):fne,mne=pIe});function gIe(t){return ai(t)&&ho(t)==mIe}var mIe,yne,vne=M(()=>{"use strict";ip();Oo();mIe="[object Set]";o(gIe,"baseIsSet");yne=gIe});var xne,yIe,bne,Tne=M(()=>{"use strict";vne();Ud();d2();xne=Fo&&Fo.isSet,yIe=xne?Bo(xne):yne,bne=yIe});function Gw(t,e,r,n,i,a){var s,l=e&vIe,u=e&xIe,h=e&bIe;if(r&&(s=i?r(t,n,i,a):r(t)),s!==void 0)return s;if(!Sn(t))return t;var f=Bt(t);if(f){if(s=ene(t),!l)return xT(t,s)}else{var d=ho(t),p=d==kne||d==SIe;if(Dl(t))return gT(t,l);if(d==Ene||d==wne||p&&!i){if(s=u||p?{}:wT(t),!l)return u?qre(t,zre(s,t)):Ure(t,Fre(s,t))}else{if(!Mn[d])return i?t:{};s=une(t,d,l)}}a||(a=new dc);var m=a.get(t);if(m)return m;a.set(t,s),bne(t)?t.forEach(function(v){s.add(Gw(v,e,r,v,t,a))}):mne(t)&&t.forEach(function(v,x){s.set(x,Gw(v,e,r,x,t,a))});var g=h?u?Fw:z2:u?Rs:qr,y=f?void 0:g(t);return kw(y||t,function(v,x){y&&(x=v,v=t[x]),gc(s,x,Gw(v,e,r,x,t,a))}),s}var vIe,xIe,bIe,wne,TIe,wIe,kIe,EIe,kne,SIe,CIe,AIe,Ene,_Ie,DIe,LIe,RIe,NIe,MIe,IIe,OIe,PIe,BIe,FIe,$Ie,zIe,GIe,VIe,UIe,Mn,Vw,uR=M(()=>{"use strict";u2();J9();ym();$re();Gre();TL();EL();Hre();Wre();oR();lR();ip();tne();hne();CL();Yn();gm();gne();oo();Tne();Sc();qh();vIe=1,xIe=2,bIe=4,wne="[object Arguments]",TIe="[object Array]",wIe="[object Boolean]",kIe="[object Date]",EIe="[object Error]",kne="[object Function]",SIe="[object GeneratorFunction]",CIe="[object Map]",AIe="[object Number]",Ene="[object Object]",_Ie="[object RegExp]",DIe="[object Set]",LIe="[object String]",RIe="[object Symbol]",NIe="[object WeakMap]",MIe="[object ArrayBuffer]",IIe="[object DataView]",OIe="[object Float32Array]",PIe="[object Float64Array]",BIe="[object Int8Array]",FIe="[object Int16Array]",$Ie="[object Int32Array]",zIe="[object Uint8Array]",GIe="[object Uint8ClampedArray]",VIe="[object Uint16Array]",UIe="[object Uint32Array]",Mn={};Mn[wne]=Mn[TIe]=Mn[MIe]=Mn[IIe]=Mn[wIe]=Mn[kIe]=Mn[OIe]=Mn[PIe]=Mn[BIe]=Mn[FIe]=Mn[$Ie]=Mn[CIe]=Mn[AIe]=Mn[Ene]=Mn[_Ie]=Mn[DIe]=Mn[LIe]=Mn[RIe]=Mn[zIe]=Mn[GIe]=Mn[VIe]=Mn[UIe]=!0;Mn[EIe]=Mn[kne]=Mn[NIe]=!1;o(Gw,"baseClone");Vw=Gw});function qIe(t){return Vw(t,HIe)}var HIe,ln,hR=M(()=>{"use strict";uR();HIe=4;o(qIe,"clone");ln=qIe});function XIe(t){return Vw(t,WIe|YIe)}var WIe,YIe,fR,Sne=M(()=>{"use strict";uR();WIe=1,YIe=4;o(XIe,"cloneDeep");fR=XIe});function jIe(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e{"use strict";o(jIe,"compact");_c=jIe});function QIe(t){return this.__data__.set(t,KIe),this}var KIe,Ane,_ne=M(()=>{"use strict";KIe="__lodash_hash_undefined__";o(QIe,"setCacheAdd");Ane=QIe});function ZIe(t){return this.__data__.has(t)}var Dne,Lne=M(()=>{"use strict";o(ZIe,"setCacheHas");Dne=ZIe});function Uw(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new Gd;++e{"use strict";pT();_ne();Lne();o(Uw,"SetCache");Uw.prototype.add=Uw.prototype.push=Ane;Uw.prototype.has=Dne;Bm=Uw});function JIe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(JIe,"arraySome");qw=JIe});function eOe(t,e){return t.has(e)}var Fm,Ww=M(()=>{"use strict";o(eOe,"cacheHas");Fm=eOe});function nOe(t,e,r,n,i,a){var s=r&tOe,l=t.length,u=e.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(t),f=a.get(e);if(h&&f)return h==e&&f==t;var d=-1,p=!0,m=r&rOe?new Bm:void 0;for(a.set(t,e),a.set(e,t);++d{"use strict";Hw();dR();Ww();tOe=1,rOe=2;o(nOe,"equalArrays");Yw=nOe});function iOe(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}var Rne,Nne=M(()=>{"use strict";o(iOe,"mapToArray");Rne=iOe});function aOe(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var $m,Xw=M(()=>{"use strict";o(aOe,"setToArray");$m=aOe});function xOe(t,e,r,n,i,a,s){switch(r){case vOe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case yOe:return!(t.byteLength!=e.byteLength||!a(new um(t),new um(e)));case lOe:case cOe:case fOe:return Io(+t,+e);case uOe:return t.name==e.name&&t.message==e.message;case dOe:case mOe:return t==e+"";case hOe:var l=Rne;case pOe:var u=n&sOe;if(l||(l=$m),t.size!=e.size&&!u)return!1;var h=s.get(t);if(h)return h==e;n|=oOe,s.set(t,e);var f=Yw(l(t),l(e),n,i,a,s);return s.delete(t),f;case gOe:if(mR)return mR.call(t)==mR.call(e)}return!1}var sOe,oOe,lOe,cOe,uOe,hOe,fOe,dOe,pOe,mOe,gOe,yOe,vOe,Mne,mR,Ine,One=M(()=>{"use strict";$d();wL();zd();pR();Nne();Xw();sOe=1,oOe=2,lOe="[object Boolean]",cOe="[object Date]",uOe="[object Error]",hOe="[object Map]",fOe="[object Number]",dOe="[object RegExp]",pOe="[object Set]",mOe="[object String]",gOe="[object Symbol]",yOe="[object ArrayBuffer]",vOe="[object DataView]",Mne=Ki?Ki.prototype:void 0,mR=Mne?Mne.valueOf:void 0;o(xOe,"equalByTag");Ine=xOe});function kOe(t,e,r,n,i,a){var s=r&bOe,l=z2(t),u=l.length,h=z2(e),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in e:wOe.call(e,p)))return!1}var m=a.get(t),g=a.get(e);if(m&&g)return m==e&&g==t;var y=!0;a.set(t,e),a.set(e,t);for(var v=s;++d{"use strict";oR();bOe=1,TOe=Object.prototype,wOe=TOe.hasOwnProperty;o(kOe,"equalObjects");Pne=kOe});function COe(t,e,r,n,i,a){var s=Bt(t),l=Bt(e),u=s?$ne:ho(t),h=l?$ne:ho(e);u=u==Fne?jw:u,h=h==Fne?jw:h;var f=u==jw,d=h==jw,p=u==h;if(p&&Dl(t)){if(!Dl(e))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new dc),s||Uh(t)?Yw(t,e,r,n,i,a):Ine(t,e,u,r,n,i,a);if(!(r&EOe)){var m=f&&zne.call(t,"__wrapped__"),g=d&&zne.call(e,"__wrapped__");if(m||g){var y=m?t.value():t,v=g?e.value():e;return a||(a=new dc),i(y,v,r,n,a)}}return p?(a||(a=new dc),Pne(t,e,r,n,i,a)):!1}var EOe,Fne,$ne,jw,SOe,zne,Gne,Vne=M(()=>{"use strict";u2();pR();One();Bne();ip();Yn();gm();p2();EOe=1,Fne="[object Arguments]",$ne="[object Array]",jw="[object Object]",SOe=Object.prototype,zne=SOe.hasOwnProperty;o(COe,"baseIsEqualDeep");Gne=COe});function Une(t,e,r,n,i){return t===e?!0:t==null||e==null||!ai(t)&&!ai(e)?t!==t&&e!==e:Gne(t,e,r,n,Une,i)}var Kw,gR=M(()=>{"use strict";Vne();Oo();o(Une,"baseIsEqual");Kw=Une});function DOe(t,e,r,n){var i=r.length,a=i,s=!n;if(t==null)return!a;for(t=Object(t);i--;){var l=r[i];if(s&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++i{"use strict";u2();gR();AOe=1,_Oe=2;o(DOe,"baseIsMatch");Hne=DOe});function LOe(t){return t===t&&!Sn(t)}var Qw,yR=M(()=>{"use strict";oo();o(LOe,"isStrictComparable");Qw=LOe});function ROe(t){for(var e=qr(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,Qw(i)]}return e}var Wne,Yne=M(()=>{"use strict";yR();Sc();o(ROe,"getMatchData");Wne=ROe});function NOe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}var Zw,vR=M(()=>{"use strict";o(NOe,"matchesStrictComparable");Zw=NOe});function MOe(t){var e=Wne(t);return e.length==1&&e[0][2]?Zw(e[0][0],e[0][1]):function(r){return r===t||Hne(r,t,e)}}var Xne,jne=M(()=>{"use strict";qne();Yne();vR();o(MOe,"baseMatches");Xne=MOe});function IOe(t,e){return t!=null&&e in Object(t)}var Kne,Qne=M(()=>{"use strict";o(IOe,"baseHasIn");Kne=IOe});function OOe(t,e,r){e=rf(e,t);for(var n=-1,i=e.length,a=!1;++n{"use strict";F2();pm();Yn();g2();kT();Nm();o(OOe,"hasPath");Jw=OOe});function POe(t,e){return t!=null&&Jw(t,e,Kne)}var ek,bR=M(()=>{"use strict";Qne();xR();o(POe,"hasIn");ek=POe});function $Oe(t,e){return Rm(t)&&Qw(e)?Zw(Cc(t),e):function(r){var n=Cre(r,t);return n===void 0&&n===e?ek(r,t):Kw(e,n,BOe|FOe)}}var BOe,FOe,Zne,Jne=M(()=>{"use strict";gR();Are();bR();_w();yR();vR();Nm();BOe=1,FOe=2;o($Oe,"baseMatchesProperty");Zne=$Oe});function zOe(t){return function(e){return e?.[t]}}var tk,TR=M(()=>{"use strict";o(zOe,"baseProperty");tk=zOe});function GOe(t){return function(e){return nf(e,t)}}var eie,tie=M(()=>{"use strict";$2();o(GOe,"basePropertyDeep");eie=GOe});function VOe(t){return Rm(t)?tk(Cc(t)):eie(t)}var rie,nie=M(()=>{"use strict";TR();tie();_w();Nm();o(VOe,"property");rie=VOe});function UOe(t){return typeof t=="function"?t:t==null?Qi:typeof t=="object"?Bt(t)?Zne(t[0],t[1]):Xne(t):rie(t)}var vn,ss=M(()=>{"use strict";jne();Jne();Ru();Yn();nie();o(UOe,"baseIteratee");vn=UOe});function HOe(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i{"use strict";o(HOe,"arrayAggregator");iie=HOe});function qOe(t,e){return t&&cm(t,e,qr)}var zm,rk=M(()=>{"use strict";mT();Sc();o(qOe,"baseForOwn");zm=qOe});function WOe(t,e){return function(r,n){if(r==null)return r;if(!fi(r))return t(r,n);for(var i=r.length,a=e?i:-1,s=Object(r);(e?a--:++a{"use strict";Po();o(WOe,"createBaseEach");sie=WOe});var YOe,zs,sf=M(()=>{"use strict";rk();oie();YOe=sie(zm),zs=YOe});function XOe(t,e,r,n){return zs(t,function(i,a,s){e(n,i,r(i),s)}),n}var lie,cie=M(()=>{"use strict";sf();o(XOe,"baseAggregator");lie=XOe});function jOe(t,e){return function(r,n){var i=Bt(r)?iie:lie,a=e?e():{};return i(r,t,vn(n,2),a)}}var uie,hie=M(()=>{"use strict";aie();cie();ss();Yn();o(jOe,"createAggregator");uie=jOe});var KOe,nk,fie=M(()=>{"use strict";Mo();KOe=o(function(){return hi.Date.now()},"now"),nk=KOe});var die,QOe,ZOe,of,pie=M(()=>{"use strict";vm();zd();qd();qh();die=Object.prototype,QOe=die.hasOwnProperty,ZOe=yc(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&lo(e[0],e[1],i)&&(n=1);++r{"use strict";o(JOe,"arrayIncludesWith");ik=JOe});function tPe(t,e,r,n){var i=-1,a=Cw,s=!0,l=t.length,u=[],h=e.length;if(!l)return u;r&&(e=$s(e,Bo(r))),n?(a=ik,s=!1):e.length>=ePe&&(a=Fm,s=!1,e=new Bm(e));e:for(;++i{"use strict";Hw();tR();wR();rp();Ud();Ww();ePe=200;o(tPe,"baseDifference");mie=tPe});var rPe,lf,yie=M(()=>{"use strict";gie();Im();vm();ET();rPe=yc(function(t,e){return Vd(t)?mie(t,Ac(e,1,Vd,!0)):[]}),lf=rPe});function nPe(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var ga,vie=M(()=>{"use strict";o(nPe,"last");ga=nPe});function iPe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:Ec(e),Nw(t,e<0?0:e,n)):[]}var yi,xie=M(()=>{"use strict";nR();_m();o(iPe,"drop");yi=iPe});function aPe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:Ec(e),e=n-e,Nw(t,0,e<0?0:e)):[]}var Bu,bie=M(()=>{"use strict";nR();_m();o(aPe,"dropRight");Bu=aPe});function sPe(t){return typeof t=="function"?t:Qi}var Gm,ak=M(()=>{"use strict";Ru();o(sPe,"castFunction");Gm=sPe});function oPe(t,e){var r=Bt(t)?kw:zs;return r(t,Gm(e))}var Ae,sk=M(()=>{"use strict";J9();sf();ak();Yn();o(oPe,"forEach");Ae=oPe});var Tie=M(()=>{"use strict";sk()});function lPe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(lPe,"arrayEvery");wie=lPe});function cPe(t,e){var r=!0;return zs(t,function(n,i,a){return r=!!e(n,i,a),r}),r}var Eie,Sie=M(()=>{"use strict";sf();o(cPe,"baseEvery");Eie=cPe});function uPe(t,e,r){var n=Bt(t)?wie:Eie;return r&&lo(t,e,r)&&(e=void 0),n(t,vn(e,3))}var Ba,Cie=M(()=>{"use strict";kie();Sie();ss();Yn();qd();o(uPe,"every");Ba=uPe});function hPe(t,e){var r=[];return zs(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}var ok,kR=M(()=>{"use strict";sf();o(hPe,"baseFilter");ok=hPe});function fPe(t,e){var r=Bt(t)?Om:ok;return r(t,vn(e,3))}var Zr,ER=M(()=>{"use strict";Mw();kR();ss();Yn();o(fPe,"filter");Zr=fPe});function dPe(t){return function(e,r,n){var i=Object(e);if(!fi(e)){var a=vn(r,3);e=qr(e),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=t(e,r,n);return s>-1?i[a?e[s]:s]:void 0}}var Aie,_ie=M(()=>{"use strict";ss();Po();Sc();o(dPe,"createFind");Aie=dPe});function mPe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:Ec(r);return i<0&&(i=pPe(n+i,0)),Ew(t,vn(e,3),i)}var pPe,Die,Lie=M(()=>{"use strict";eR();ss();_m();pPe=Math.max;o(mPe,"findIndex");Die=mPe});var gPe,os,Rie=M(()=>{"use strict";_ie();Lie();gPe=Aie(Die),os=gPe});function yPe(t){return t&&t.length?t[0]:void 0}var ea,Nie=M(()=>{"use strict";o(yPe,"head");ea=yPe});var Mie=M(()=>{"use strict";Nie()});function vPe(t,e){var r=-1,n=fi(t)?Array(t.length):[];return zs(t,function(i,a,s){n[++r]=e(i,a,s)}),n}var lk,SR=M(()=>{"use strict";sf();Po();o(vPe,"baseMap");lk=vPe});function xPe(t,e){var r=Bt(t)?$s:lk;return r(t,vn(e,3))}var rt,Vm=M(()=>{"use strict";rp();ss();SR();Yn();o(xPe,"map");rt=xPe});function bPe(t,e){return Ac(rt(t,e),1)}var ya,CR=M(()=>{"use strict";Im();Vm();o(bPe,"flatMap");ya=bPe});function TPe(t,e){return t==null?t:cm(t,Gm(e),Rs)}var AR,Iie=M(()=>{"use strict";mT();ak();qh();o(TPe,"forIn");AR=TPe});function wPe(t,e){return t&&zm(t,Gm(e))}var _R,Oie=M(()=>{"use strict";rk();ak();o(wPe,"forOwn");_R=wPe});var kPe,EPe,SPe,DR,Pie=M(()=>{"use strict";lm();hie();kPe=Object.prototype,EPe=kPe.hasOwnProperty,SPe=uie(function(t,e,r){EPe.call(t,r)?t[r].push(e):pc(t,r,[e])}),DR=SPe});function CPe(t,e){return t>e}var Bie,Fie=M(()=>{"use strict";o(CPe,"baseGt");Bie=CPe});function DPe(t,e){return t!=null&&_Pe.call(t,e)}var APe,_Pe,$ie,zie=M(()=>{"use strict";APe=Object.prototype,_Pe=APe.hasOwnProperty;o(DPe,"baseHas");$ie=DPe});function LPe(t,e){return t!=null&&Jw(t,e,$ie)}var Ft,Gie=M(()=>{"use strict";zie();xR();o(LPe,"has");Ft=LPe});function NPe(t){return typeof t=="string"||!Bt(t)&&ai(t)&&fa(t)==RPe}var RPe,xi,ck=M(()=>{"use strict";_u();Yn();Oo();RPe="[object String]";o(NPe,"isString");xi=NPe});function MPe(t,e){return $s(e,function(r){return t[r]})}var Vie,Uie=M(()=>{"use strict";rp();o(MPe,"baseValues");Vie=MPe});function IPe(t){return t==null?[]:Vie(t,qr(t))}var kr,LR=M(()=>{"use strict";Uie();Sc();o(IPe,"values");kr=IPe});function PPe(t,e,r,n){t=fi(t)?t:kr(t),r=r&&!n?Ec(r):0;var i=t.length;return r<0&&(r=OPe(i+r,0)),xi(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&Dm(t,e,r)>-1}var OPe,jn,Hie=M(()=>{"use strict";Sw();Po();ck();_m();LR();OPe=Math.max;o(PPe,"includes");jn=PPe});function FPe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:Ec(r);return i<0&&(i=BPe(n+i,0)),Dm(t,e,i)}var BPe,uk,qie=M(()=>{"use strict";Sw();_m();BPe=Math.max;o(FPe,"indexOf");uk=FPe});function UPe(t){if(t==null)return!0;if(fi(t)&&(Bt(t)||typeof t=="string"||typeof t.splice=="function"||Dl(t)||Uh(t)||_l(t)))return!t.length;var e=ho(t);if(e==$Pe||e==zPe)return!t.size;if(mc(t))return!Lm(t).length;for(var r in t)if(VPe.call(t,r))return!1;return!0}var $Pe,zPe,GPe,VPe,mr,hk=M(()=>{"use strict";Aw();ip();pm();Yn();Po();gm();dm();p2();$Pe="[object Map]",zPe="[object Set]",GPe=Object.prototype,VPe=GPe.hasOwnProperty;o(UPe,"isEmpty");mr=UPe});function qPe(t){return ai(t)&&fa(t)==HPe}var HPe,Wie,Yie=M(()=>{"use strict";_u();Oo();HPe="[object RegExp]";o(qPe,"baseIsRegExp");Wie=qPe});var Xie,WPe,Uo,jie=M(()=>{"use strict";Yie();Ud();d2();Xie=Fo&&Fo.isRegExp,WPe=Xie?Bo(Xie):Wie,Uo=WPe});function YPe(t){return t===void 0}var xr,Kie=M(()=>{"use strict";o(YPe,"isUndefined");xr=YPe});function XPe(t,e){return t{"use strict";o(XPe,"baseLt");fk=XPe});function jPe(t,e){var r={};return e=vn(e,3),zm(t,function(n,i,a){pc(r,i,e(n,i,a))}),r}var ap,Qie=M(()=>{"use strict";lm();rk();ss();o(jPe,"mapValues");ap=jPe});function KPe(t,e,r){for(var n=-1,i=t.length;++n{"use strict";tp();o(KPe,"baseExtremum");Um=KPe});function QPe(t){return t&&t.length?Um(t,Qi,Bie):void 0}var Gs,Zie=M(()=>{"use strict";dk();Fie();Ru();o(QPe,"max");Gs=QPe});function ZPe(t){return t&&t.length?Um(t,Qi,fk):void 0}var Rl,NR=M(()=>{"use strict";dk();RR();Ru();o(ZPe,"min");Rl=ZPe});function JPe(t,e){return t&&t.length?Um(t,vn(e,2),fk):void 0}var sp,Jie=M(()=>{"use strict";dk();ss();RR();o(JPe,"minBy");sp=JPe});function tBe(t){if(typeof t!="function")throw new TypeError(eBe);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}var eBe,eae,tae=M(()=>{"use strict";eBe="Expected a function";o(tBe,"negate");eae=tBe});function rBe(t,e,r,n){if(!Sn(t))return t;e=rf(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i{"use strict";ym();F2();g2();oo();Nm();o(rBe,"baseSet");rae=rBe});function nBe(t,e,r){for(var n=-1,i=e.length,a={};++n{"use strict";$2();nae();F2();o(nBe,"basePickBy");pk=nBe});function iBe(t,e){if(t==null)return{};var r=$s(Fw(t),function(n){return[n]});return e=vn(e),pk(t,r,function(n,i){return e(n,i[0])})}var Vs,iae=M(()=>{"use strict";rp();ss();MR();lR();o(iBe,"pickBy");Vs=iBe});function aBe(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}var aae,sae=M(()=>{"use strict";o(aBe,"baseSortBy");aae=aBe});function sBe(t,e){if(t!==e){var r=t!==void 0,n=t===null,i=t===t,a=uo(t),s=e!==void 0,l=e===null,u=e===e,h=uo(e);if(!l&&!h&&!a&&t>e||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&t{"use strict";tp();o(sBe,"compareAscending");oae=sBe});function oBe(t,e,r){for(var n=-1,i=t.criteria,a=e.criteria,s=i.length,l=r.length;++n=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return t.index-e.index}var cae,uae=M(()=>{"use strict";lae();o(oBe,"compareMultiple");cae=oBe});function lBe(t,e,r){e.length?e=$s(e,function(a){return Bt(a)?function(s){return nf(s,a.length===1?a[0]:a)}:a}):e=[Qi];var n=-1;e=$s(e,Bo(vn));var i=lk(t,function(a,s,l){var u=$s(e,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return aae(i,function(a,s){return cae(a,s,r)})}var hae,fae=M(()=>{"use strict";rp();$2();ss();SR();sae();Ud();uae();Ru();Yn();o(lBe,"baseOrderBy");hae=lBe});var cBe,dae,pae=M(()=>{"use strict";TR();cBe=tk("length"),dae=cBe});function TBe(t){for(var e=mae.lastIndex=0;mae.test(t);)++e;return e}var gae,uBe,hBe,fBe,dBe,pBe,mBe,IR,OR,gBe,yae,vae,xae,yBe,bae,Tae,vBe,xBe,bBe,mae,wae,kae=M(()=>{"use strict";gae="\\ud800-\\udfff",uBe="\\u0300-\\u036f",hBe="\\ufe20-\\ufe2f",fBe="\\u20d0-\\u20ff",dBe=uBe+hBe+fBe,pBe="\\ufe0e\\ufe0f",mBe="["+gae+"]",IR="["+dBe+"]",OR="\\ud83c[\\udffb-\\udfff]",gBe="(?:"+IR+"|"+OR+")",yae="[^"+gae+"]",vae="(?:\\ud83c[\\udde6-\\uddff]){2}",xae="[\\ud800-\\udbff][\\udc00-\\udfff]",yBe="\\u200d",bae=gBe+"?",Tae="["+pBe+"]?",vBe="(?:"+yBe+"(?:"+[yae,vae,xae].join("|")+")"+Tae+bae+")*",xBe=Tae+bae+vBe,bBe="(?:"+[yae+IR+"?",IR,vae,xae,mBe].join("|")+")",mae=RegExp(OR+"(?="+OR+")|"+bBe+xBe,"g");o(TBe,"unicodeSize");wae=TBe});function wBe(t){return Ire(t)?wae(t):dae(t)}var Eae,Sae=M(()=>{"use strict";pae();Ore();kae();o(wBe,"stringSize");Eae=wBe});function kBe(t,e){return pk(t,e,function(r,n){return ek(t,n)})}var Cae,Aae=M(()=>{"use strict";MR();bR();o(kBe,"basePick");Cae=kBe});var EBe,op,_ae=M(()=>{"use strict";Aae();Mre();EBe=Nre(function(t,e){return t==null?{}:Cae(t,e)}),op=EBe});function ABe(t,e,r,n){for(var i=-1,a=CBe(SBe((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}var SBe,CBe,Dae,Lae=M(()=>{"use strict";SBe=Math.ceil,CBe=Math.max;o(ABe,"baseRange");Dae=ABe});function _Be(t){return function(e,r,n){return n&&typeof n!="number"&&lo(e,r,n)&&(r=n=void 0),e=Am(e),r===void 0?(r=e,e=0):r=Am(r),n=n===void 0?e{"use strict";Lae();qd();Q9();o(_Be,"createRange");Rae=_Be});var DBe,Ho,Mae=M(()=>{"use strict";Nae();DBe=Rae(),Ho=DBe});function LBe(t,e,r,n,i){return i(t,function(a,s,l){r=n?(n=!1,a):e(r,a,s,l)}),r}var Iae,Oae=M(()=>{"use strict";o(LBe,"baseReduce");Iae=LBe});function RBe(t,e,r){var n=Bt(t)?Pre:Iae,i=arguments.length<3;return n(t,vn(e,4),r,i,zs)}var Jr,PR=M(()=>{"use strict";Bre();sf();ss();Oae();Yn();o(RBe,"reduce");Jr=RBe});function NBe(t,e){var r=Bt(t)?Om:ok;return r(t,eae(vn(e,3)))}var cf,Pae=M(()=>{"use strict";Mw();kR();ss();Yn();tae();o(NBe,"reject");cf=NBe});function OBe(t){if(t==null)return 0;if(fi(t))return xi(t)?Eae(t):t.length;var e=ho(t);return e==MBe||e==IBe?t.size:Lm(t).length}var MBe,IBe,BR,Bae=M(()=>{"use strict";Aw();ip();Po();ck();Sae();MBe="[object Map]",IBe="[object Set]";o(OBe,"size");BR=OBe});function PBe(t,e){var r;return zs(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}var Fae,$ae=M(()=>{"use strict";sf();o(PBe,"baseSome");Fae=PBe});function BBe(t,e,r){var n=Bt(t)?qw:Fae;return r&&lo(t,e,r)&&(e=void 0),n(t,vn(e,3))}var G2,zae=M(()=>{"use strict";dR();ss();$ae();Yn();qd();o(BBe,"some");G2=BBe});var FBe,Dc,Gae=M(()=>{"use strict";Im();fae();vm();qd();FBe=yc(function(t,e){if(t==null)return[];var r=e.length;return r>1&&lo(t,e[0],e[1])?e=[]:r>2&&lo(e[0],e[1],e[2])&&(e=[e[0]]),hae(t,Ac(e,1),[])}),Dc=FBe});var $Be,zBe,Vae,Uae=M(()=>{"use strict";cR();Z9();Xw();$Be=1/0,zBe=af&&1/$m(new af([,-0]))[1]==$Be?function(t){return new af(t)}:si,Vae=zBe});function VBe(t,e,r){var n=-1,i=Cw,a=t.length,s=!0,l=[],u=l;if(r)s=!1,i=ik;else if(a>=GBe){var h=e?null:Vae(t);if(h)return $m(h);s=!1,i=Fm,u=new Bm}else u=e?[]:l;e:for(;++n{"use strict";Hw();tR();wR();Ww();Uae();Xw();GBe=200;o(VBe,"baseUniq");Hm=VBe});var UBe,FR,Hae=M(()=>{"use strict";Im();vm();mk();ET();UBe=yc(function(t){return Hm(Ac(t,1,Vd,!0))}),FR=UBe});function HBe(t){return t&&t.length?Hm(t):[]}var qm,qae=M(()=>{"use strict";mk();o(HBe,"uniq");qm=HBe});function qBe(t,e){return t&&t.length?Hm(t,vn(e,2)):[]}var Wae,Yae=M(()=>{"use strict";ss();mk();o(qBe,"uniqBy");Wae=qBe});function YBe(t){var e=++WBe;return Dw(t)+e}var WBe,lp,Xae=M(()=>{"use strict";rR();WBe=0;o(YBe,"uniqueId");lp=YBe});function XBe(t,e,r){for(var n=-1,i=t.length,a=e.length,s={};++n{"use strict";o(XBe,"baseZipObject");jae=XBe});function jBe(t,e){return jae(t||[],e||[],gc)}var gk,Qae=M(()=>{"use strict";ym();Kae();o(jBe,"zipObject");gk=jBe});var Yt=M(()=>{"use strict";Tre();hR();Sne();Cne();NL();pie();yie();xie();bie();Tie();Cie();ER();Rie();Mie();CR();Rw();sk();Iie();Oie();Pie();Gie();Ru();Hie();qie();Yn();hk();a2();oo();jie();ck();Kie();Sc();vie();Vm();Qie();Zie();OL();NR();Jie();Z9();fie();_ae();iae();Mae();PR();Pae();Bae();zae();Gae();Hae();qae();Xae();LR();Qae();});function Jae(t,e){t[e]?t[e]++:t[e]=1}function ese(t,e){--t[e]||delete t[e]}function V2(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+Zae+a+Zae+(xr(n)?KBe:n)}function QBe(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function $R(t,e){return V2(t,e.v,e.w,e.name)}var KBe,cp,Zae,cn,yk=M(()=>{"use strict";Yt();KBe="\0",cp="\0",Zae="",cn=class{static{o(this,"Graph")}constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=Ns(void 0),this._defaultEdgeLabelFn=Ns(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[cp]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return Si(e)||(e=Ns(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return qr(this._nodes)}sources(){var e=this;return Zr(this.nodes(),function(r){return mr(e._in[r])})}sinks(){var e=this;return Zr(this.nodes(),function(r){return mr(e._out[r])})}setNodes(e,r){var n=arguments,i=this;return Ae(e,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=cp,this._children[e]={},this._children[cp][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var r=o(n=>this.removeEdge(this._edgeObjs[n]),"removeEdge");delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],Ae(this.children(e),n=>{this.setParent(n)}),delete this._children[e]),Ae(qr(this._in[e]),r),delete this._in[e],delete this._preds[e],Ae(qr(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(xr(r))r=cp;else{r+="";for(var n=r;!xr(n);n=this.parent(n))if(n===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==cp)return r}}children(e){if(xr(e)&&(e=cp),this._isCompound){var r=this._children[e];if(r)return qr(r)}else{if(e===cp)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return qr(r)}successors(e){var r=this._sucs[e];if(r)return qr(r)}neighbors(e){var r=this.predecessors(e);if(r)return FR(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Ae(this._nodes,function(s,l){e(l)&&r.setNode(l,s)}),Ae(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var l=n.parent(s);return l===void 0||r.hasNode(l)?(i[s]=l,l):l in i?i[l]:a(l)}return o(a,"findParent"),this._isCompound&&Ae(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return Si(e)||(e=Ns(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return kr(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return Jr(e,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var e,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(e=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,xr(n)||(n=""+n);var l=V2(this._isDirected,e,r,n);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!xr(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(e,r,n);var u=QBe(this._isDirected,e,r,n);return e=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,Jae(this._preds[r],e),Jae(this._sucs[e],r),this._in[r][l]=u,this._out[e][l]=u,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?$R(this._isDirected,arguments[0]):V2(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?$R(this._isDirected,arguments[0]):V2(this._isDirected,e,r,n);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?$R(this._isDirected,arguments[0]):V2(this._isDirected,e,r,n),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],ese(this._preds[r],e),ese(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var n=this._in[e];if(n){var i=kr(n);return r?Zr(i,function(a){return a.v===r}):i}}outEdges(e,r){var n=this._out[e];if(n){var i=kr(n);return r?Zr(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}};cn.prototype._nodeCount=0;cn.prototype._edgeCount=0;o(Jae,"incrementOrInitEntry");o(ese,"decrementOrRemoveEntry");o(V2,"edgeArgsToId");o(QBe,"edgeArgsToObj");o($R,"edgeObjToId")});var qo=M(()=>{"use strict";yk()});function tse(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function ZBe(t,e){if(t!=="_next"&&t!=="_prev")return e}var xk,rse=M(()=>{"use strict";xk=class{static{o(this,"List")}constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return tse(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&tse(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,n=r._prev;n!==r;)e.push(JSON.stringify(n,ZBe)),n=n._prev;return"["+e.join(", ")+"]"}};o(tse,"unlink");o(ZBe,"filterOutLinks")});function nse(t,e){if(t.nodeCount()<=1)return[];var r=tFe(t,e||JBe),n=eFe(r.graph,r.buckets,r.zeroIdx);return Qr(rt(n,function(i){return t.outEdges(i.v,i.w)}))}function eFe(t,e,r){for(var n=[],i=e[e.length-1],a=e[0],s;t.nodeCount();){for(;s=a.dequeue();)zR(t,e,r,s);for(;s=i.dequeue();)zR(t,e,r,s);if(t.nodeCount()){for(var l=e.length-2;l>0;--l)if(s=e[l].dequeue(),s){n=n.concat(zR(t,e,r,s,!0));break}}}return n}function zR(t,e,r,n,i){var a=i?[]:void 0;return Ae(t.inEdges(n.v),function(s){var l=t.edge(s),u=t.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,GR(e,r,u)}),Ae(t.outEdges(n.v),function(s){var l=t.edge(s),u=s.w,h=t.node(u);h.in-=l,GR(e,r,h)}),t.removeNode(n.v),a}function tFe(t,e){var r=new cn,n=0,i=0;Ae(t.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Ae(t.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=e(l),f=u+h;r.setEdge(l.v,l.w,f),i=Math.max(i,r.node(l.v).out+=h),n=Math.max(n,r.node(l.w).in+=h)});var a=Ho(i+n+3).map(function(){return new xk}),s=n+1;return Ae(r.nodes(),function(l){GR(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function GR(t,e,r){r.out?r.in?t[r.out-r.in+e].enqueue(r):t[t.length-1].enqueue(r):t[0].enqueue(r)}var JBe,ise=M(()=>{"use strict";Yt();qo();rse();JBe=Ns(1);o(nse,"greedyFAS");o(eFe,"doGreedyFAS");o(zR,"removeNode");o(tFe,"buildState");o(GR,"assignBucket")});function ase(t){var e=t.graph().acyclicer==="greedy"?nse(t,r(t)):rFe(t);Ae(e,function(n){var i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,lp("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function rFe(t){var e=[],r={},n={};function i(a){Object.prototype.hasOwnProperty.call(n,a)||(n[a]=!0,r[a]=!0,Ae(t.outEdges(a),function(s){Object.prototype.hasOwnProperty.call(r,s.w)?e.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Ae(t.nodes(),i),e}function sse(t){Ae(t.edges(),function(e){var r=t.edge(e);if(r.reversed){t.removeEdge(e);var n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}var VR=M(()=>{"use strict";Yt();ise();o(ase,"run");o(rFe,"dfsFAS");o(sse,"undo")});function Lc(t,e,r,n){var i;do i=lp(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function lse(t){var e=new cn().setGraph(t.graph());return Ae(t.nodes(),function(r){e.setNode(r,t.node(r))}),Ae(t.edges(),function(r){var n=e.edge(r.v,r.w)||{weight:0,minlen:1},i=t.edge(r);e.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),e}function bk(t){var e=new cn({multigraph:t.isMultigraph()}).setGraph(t.graph());return Ae(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),Ae(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function UR(t,e){var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=l*i/a,h=l):(i<0&&(s=-s),u=s,h=s*a/i),{x:r+u,y:n+h}}function uf(t){var e=rt(Ho(qR(t)+1),function(){return[]});return Ae(t.nodes(),function(r){var n=t.node(r),i=n.rank;xr(i)||(e[i][n.order]=r)}),e}function cse(t){var e=Rl(rt(t.nodes(),function(r){return t.node(r).rank}));Ae(t.nodes(),function(r){var n=t.node(r);Ft(n,"rank")&&(n.rank-=e)})}function use(t){var e=Rl(rt(t.nodes(),function(a){return t.node(a).rank})),r=[];Ae(t.nodes(),function(a){var s=t.node(a).rank-e;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=t.graph().nodeRankFactor;Ae(r,function(a,s){xr(a)&&s%i!==0?--n:n&&Ae(a,function(l){t.node(l).rank+=n})})}function HR(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),Lc(t,"border",i,e)}function qR(t){return Gs(rt(t.nodes(),function(e){var r=t.node(e).rank;if(!xr(r))return r}))}function hse(t,e){var r={lhs:[],rhs:[]};return Ae(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function fse(t,e){var r=nk();try{return e()}finally{console.log(t+" time: "+(nk()-r)+"ms")}}function dse(t,e){return e()}var Rc=M(()=>{"use strict";Yt();qo();o(Lc,"addDummyNode");o(lse,"simplify");o(bk,"asNonCompoundGraph");o(UR,"intersectRect");o(uf,"buildLayerMatrix");o(cse,"normalizeRanks");o(use,"removeEmptyRanks");o(HR,"addBorderNode");o(qR,"maxRank");o(hse,"partition");o(fse,"time");o(dse,"notime")});function mse(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&Ae(n,e),Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a{"use strict";Yt();Rc();o(mse,"addBorderSegments");o(pse,"addBorderNode")});function vse(t){var e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&bse(t)}function xse(t){var e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&nFe(t),(e==="lr"||e==="rl")&&(iFe(t),bse(t))}function bse(t){Ae(t.nodes(),function(e){yse(t.node(e))}),Ae(t.edges(),function(e){yse(t.edge(e))})}function yse(t){var e=t.width;t.width=t.height,t.height=e}function nFe(t){Ae(t.nodes(),function(e){WR(t.node(e))}),Ae(t.edges(),function(e){var r=t.edge(e);Ae(r.points,WR),Object.prototype.hasOwnProperty.call(r,"y")&&WR(r)})}function WR(t){t.y=-t.y}function iFe(t){Ae(t.nodes(),function(e){YR(t.node(e))}),Ae(t.edges(),function(e){var r=t.edge(e);Ae(r.points,YR),Object.prototype.hasOwnProperty.call(r,"x")&&YR(r)})}function YR(t){var e=t.x;t.x=t.y,t.y=e}var Tse=M(()=>{"use strict";Yt();o(vse,"adjust");o(xse,"undo");o(bse,"swapWidthHeight");o(yse,"swapWidthHeightOne");o(nFe,"reverseY");o(WR,"reverseYOne");o(iFe,"swapXY");o(YR,"swapXYOne")});function wse(t){t.graph().dummyChains=[],Ae(t.edges(),function(e){sFe(t,e)})}function sFe(t,e){var r=e.v,n=t.node(r).rank,i=e.w,a=t.node(i).rank,s=e.name,l=t.edge(e),u=l.labelRank;if(a!==n+1){t.removeEdge(e);var h=void 0,f,d;for(d=0,++n;n{"use strict";Yt();Rc();o(wse,"run");o(sFe,"normalizeEdge");o(kse,"undo")});function U2(t){var e={};function r(n){var i=t.node(n);if(Object.prototype.hasOwnProperty.call(e,n))return i.rank;e[n]=!0;var a=Rl(rt(t.outEdges(n),function(s){return r(s.w)-t.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Ae(t.sources(),r)}function up(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var Tk=M(()=>{"use strict";Yt();o(U2,"longestPath");o(up,"slack")});function wk(t){var e=new cn({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;oFe(e,t){"use strict";Yt();qo();Tk();o(wk,"feasibleTree");o(oFe,"tightTree");o(lFe,"findMinSlackEdge");o(cFe,"shiftRanks")});var Sse=M(()=>{"use strict"});var KR=M(()=>{"use strict"});var pjt,QR=M(()=>{"use strict";Yt();KR();pjt=Ns(1)});var Cse=M(()=>{"use strict";QR()});var ZR=M(()=>{"use strict"});var Ase=M(()=>{"use strict";ZR()});var Sjt,_se=M(()=>{"use strict";Yt();Sjt=Ns(1)});function JR(t){var e={},r={},n=[];function i(a){if(Object.prototype.hasOwnProperty.call(r,a))throw new H2;Object.prototype.hasOwnProperty.call(e,a)||(r[a]=!0,e[a]=!0,Ae(t.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Ae(t.sinks(),i),BR(e)!==t.nodeCount())throw new H2;return n}function H2(){}var eN=M(()=>{"use strict";Yt();JR.CycleException=H2;o(JR,"topsort");o(H2,"CycleException");H2.prototype=new Error});var Dse=M(()=>{"use strict";eN()});function kk(t,e,r){Bt(e)||(e=[e]);var n=(t.isDirected()?t.successors:t.neighbors).bind(t),i=[],a={};return Ae(e,function(s){if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);Lse(t,s,r==="post",a,n,i)}),i}function Lse(t,e,r,n,i,a){Object.prototype.hasOwnProperty.call(n,e)||(n[e]=!0,r||a.push(e),Ae(i(e),function(s){Lse(t,s,r,n,i,a)}),r&&a.push(e))}var tN=M(()=>{"use strict";Yt();o(kk,"dfs");o(Lse,"doDfs")});function rN(t,e){return kk(t,e,"post")}var Rse=M(()=>{"use strict";tN();o(rN,"postorder")});function nN(t,e){return kk(t,e,"pre")}var Nse=M(()=>{"use strict";tN();o(nN,"preorder")});var Mse=M(()=>{"use strict";KR();yk()});var Ise=M(()=>{"use strict";Sse();QR();Cse();Ase();_se();Dse();Rse();Nse();Mse();ZR();eN()});function ff(t){t=lse(t),U2(t);var e=wk(t);aN(e),iN(e,t);for(var r,n;r=Fse(e);)n=$se(e,t,r),zse(e,t,r,n)}function iN(t,e){var r=rN(t,t.nodes());r=r.slice(0,r.length-1),Ae(r,function(n){pFe(t,e,n)})}function pFe(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=Pse(t,e,r)}function Pse(t,e,r){var n=t.node(r),i=n.parent,a=!0,s=e.edge(r,i),l=0;return s||(a=!1,s=e.edge(i,r)),l=s.weight,Ae(e.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=e.edge(u).weight;if(l+=d?p:-p,gFe(t,r,f)){var m=t.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function aN(t,e){arguments.length<2&&(e=t.nodes()[0]),Bse(t,{},1,e)}function Bse(t,e,r,n,i){var a=r,s=t.node(n);return e[n]=!0,Ae(t.neighbors(n),function(l){Object.prototype.hasOwnProperty.call(e,l)||(r=Bse(t,e,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function Fse(t){return os(t.edges(),function(e){return t.edge(e).cutvalue<0})}function $se(t,e,r){var n=r.v,i=r.w;e.hasEdge(n,i)||(n=r.w,i=r.v);var a=t.node(n),s=t.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=Zr(e.edges(),function(f){return u===Ose(t,t.node(f.v),l)&&u!==Ose(t,t.node(f.w),l)});return sp(h,function(f){return up(e,f)})}function zse(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),aN(t),iN(t,e),mFe(t,e)}function mFe(t,e){var r=os(t.nodes(),function(i){return!e.node(i).parent}),n=nN(t,r);n=n.slice(1),Ae(n,function(i){var a=t.node(i).parent,s=e.edge(i,a),l=!1;s||(s=e.edge(a,i),l=!0),e.node(i).rank=e.node(a).rank+(l?s.minlen:-s.minlen)})}function gFe(t,e,r){return t.hasEdge(e,r)}function Ose(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}var Gse=M(()=>{"use strict";Yt();Ise();Rc();jR();Tk();ff.initLowLimValues=aN;ff.initCutValues=iN;ff.calcCutValue=Pse;ff.leaveEdge=Fse;ff.enterEdge=$se;ff.exchangeEdges=zse;o(ff,"networkSimplex");o(iN,"initCutValues");o(pFe,"assignCutValue");o(Pse,"calcCutValue");o(aN,"initLowLimValues");o(Bse,"dfsAssignLowLim");o(Fse,"leaveEdge");o($se,"enterEdge");o(zse,"exchangeEdges");o(mFe,"updateRanks");o(gFe,"isTreeEdge");o(Ose,"isDescendant")});function sN(t){switch(t.graph().ranker){case"network-simplex":Vse(t);break;case"tight-tree":vFe(t);break;case"longest-path":yFe(t);break;default:Vse(t)}}function vFe(t){U2(t),wk(t)}function Vse(t){ff(t)}var yFe,oN=M(()=>{"use strict";jR();Gse();Tk();o(sN,"rank");yFe=U2;o(vFe,"tightTreeRanker");o(Vse,"networkSimplexRanker")});function Use(t){var e=Lc(t,"root",{},"_root"),r=xFe(t),n=Gs(kr(r))-1,i=2*n+1;t.graph().nestingRoot=e,Ae(t.edges(),function(s){t.edge(s).minlen*=i});var a=bFe(t)+1;Ae(t.children(),function(s){Hse(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function Hse(t,e,r,n,i,a,s){var l=t.children(s);if(!l.length){s!==e&&t.setEdge(e,s,{weight:0,minlen:r});return}var u=HR(t,"_bt"),h=HR(t,"_bb"),f=t.node(s);t.setParent(u,s),f.borderTop=u,t.setParent(h,s),f.borderBottom=h,Ae(l,function(d){Hse(t,e,r,n,i,a,d);var p=t.node(d),m=p.borderTop?p.borderTop:d,g=p.borderBottom?p.borderBottom:d,y=p.borderTop?n:2*n,v=m!==g?1:i-a[s]+1;t.setEdge(u,m,{weight:y,minlen:v,nestingEdge:!0}),t.setEdge(g,h,{weight:y,minlen:v,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,u,{weight:0,minlen:i+a[s]})}function xFe(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&Ae(a,function(s){r(s,i+1)}),e[n]=i}return o(r,"dfs"),Ae(t.children(),function(n){r(n,1)}),e}function bFe(t){return Jr(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function qse(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,Ae(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}var Wse=M(()=>{"use strict";Yt();Rc();o(Use,"run");o(Hse,"dfs");o(xFe,"treeDepths");o(bFe,"sumWeights");o(qse,"cleanup")});function Yse(t,e,r){var n={},i;Ae(r,function(a){for(var s=t.parent(a),l,u;s;){if(l=t.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){e.setEdge(u,s);return}s=l}})}var Xse=M(()=>{"use strict";Yt();o(Yse,"addSubgraphConstraints")});function jse(t,e,r){var n=wFe(t),i=new cn({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return Ae(t.nodes(),function(a){var s=t.node(a),l=t.parent(a);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Ae(t[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=xr(f)?0:f.weight;i.setEdge(h,a,{weight:t.edge(u).weight+d})}),Object.prototype.hasOwnProperty.call(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),i}function wFe(t){for(var e;t.hasNode(e=lp("_root")););return e}var Kse=M(()=>{"use strict";Yt();qo();o(jse,"buildLayerGraph");o(wFe,"createRootNode")});function Qse(t,e){for(var r=0,n=1;n0;)f%2&&(d+=l[f+1]),f=f-1>>1,l[f]+=h.weight;u+=h.weight*d})),u}var Zse=M(()=>{"use strict";Yt();o(Qse,"crossCount");o(kFe,"twoLayerCrossCount")});function Jse(t){var e={},r=Zr(t.nodes(),function(l){return!t.children(l).length}),n=Gs(rt(r,function(l){return t.node(l).rank})),i=rt(Ho(n+1),function(){return[]});function a(l){if(!Ft(e,l)){e[l]=!0;var u=t.node(l);i[u.rank].push(l),Ae(t.successors(l),a)}}o(a,"dfs");var s=Dc(r,function(l){return t.node(l).rank});return Ae(s,a),i}var eoe=M(()=>{"use strict";Yt();o(Jse,"initOrder")});function toe(t,e){return rt(e,function(r){var n=t.inEdges(r);if(n.length){var i=Jr(n,function(a,s){var l=t.edge(s),u=t.node(s.v);return{sum:a.sum+l.weight*u.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}var roe=M(()=>{"use strict";Yt();o(toe,"barycenter")});function noe(t,e){var r={};Ae(t,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};xr(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Ae(e.edges(),function(i){var a=r[i.v],s=r[i.w];!xr(a)&&!xr(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Zr(r,function(i){return!i.indegree});return EFe(n)}function EFe(t){var e=[];function r(a){return function(s){s.merged||(xr(s.barycenter)||xr(a.barycenter)||s.barycenter>=a.barycenter)&&SFe(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&t.push(s)}}for(o(n,"handleOut");t.length;){var i=t.pop();e.push(i),Ae(i.in.reverse(),r(i)),Ae(i.out,n(i))}return rt(Zr(e,function(a){return!a.merged}),function(a){return op(a,["vs","i","barycenter","weight"])})}function SFe(t,e){var r=0,n=0;t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=r/n,t.weight=n,t.i=Math.min(e.i,t.i),e.merged=!0}var ioe=M(()=>{"use strict";Yt();o(noe,"resolveConflicts");o(EFe,"doResolveConflicts");o(SFe,"mergeEntries")});function soe(t,e){var r=hse(t,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),n=r.lhs,i=Dc(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(CFe(!!e)),u=aoe(a,i,u),Ae(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=aoe(a,i,u)});var h={vs:Qr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function aoe(t,e,r){for(var n;e.length&&(n=ga(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function CFe(t){return function(e,r){return e.barycenterr.barycenter?1:t?r.i-e.i:e.i-r.i}}var ooe=M(()=>{"use strict";Yt();Rc();o(soe,"sort");o(aoe,"consumeUnsortable");o(CFe,"compareWithBias")});function lN(t,e,r,n){var i=t.children(e),a=t.node(e),s=a?a.borderLeft:void 0,l=a?a.borderRight:void 0,u={};s&&(i=Zr(i,function(g){return g!==s&&g!==l}));var h=toe(t,i);Ae(h,function(g){if(t.children(g.v).length){var y=lN(t,g.v,r,n);u[g.v]=y,Object.prototype.hasOwnProperty.call(y,"barycenter")&&_Fe(g,y)}});var f=noe(h,r);AFe(f,u);var d=soe(f,n);if(s&&(d.vs=Qr([s,d.vs,l]),t.predecessors(s).length)){var p=t.node(t.predecessors(s)[0]),m=t.node(t.predecessors(l)[0]);Object.prototype.hasOwnProperty.call(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function AFe(t,e){Ae(t,function(r){r.vs=Qr(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function _Fe(t,e){xr(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}var loe=M(()=>{"use strict";Yt();roe();ioe();ooe();o(lN,"sortSubgraph");o(AFe,"expandSubgraphs");o(_Fe,"mergeBarycenters")});function hoe(t){var e=qR(t),r=coe(t,Ho(1,e+1),"inEdges"),n=coe(t,Ho(e-1,-1,-1),"outEdges"),i=Jse(t);uoe(t,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){DFe(l%2?r:n,l%4>=2),i=uf(t);var h=Qse(t,i);h{"use strict";Yt();qo();Rc();Xse();Kse();Zse();eoe();loe();o(hoe,"order");o(coe,"buildLayerGraphs");o(DFe,"sweepLayerGraphs");o(uoe,"assignOrder")});function doe(t){var e=RFe(t);Ae(t.graph().dummyChains,function(r){for(var n=t.node(r),i=n.edgeObj,a=LFe(t,e,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=t.node(r),f){for(;(h=s[u])!==l&&t.node(h).maxRanks||l>e[u].lim));for(h=u,u=n;(u=t.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function RFe(t){var e={},r=0;function n(i){var a=r;Ae(t.children(i),n),e[i]={low:a,lim:r++}}return o(n,"dfs"),Ae(t.children(),n),e}var poe=M(()=>{"use strict";Yt();o(doe,"parentDummyChains");o(LFe,"findPath");o(RFe,"postorder")});function NFe(t,e){var r={};function n(i,a){var s=0,l=0,u=i.length,h=ga(a);return Ae(a,function(f,d){var p=IFe(t,f),m=p?t.node(p).order:u;(p||f===h)&&(Ae(a.slice(l,d+1),function(g){Ae(t.predecessors(g),function(y){var v=t.node(y),x=v.order;(xh)&&moe(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Ae(s,function(f,d){if(t.node(f).dummy==="border"){var p=t.predecessors(f);p.length&&(u=t.node(p[0]).order,n(s,h,d,l,u),h=d,l=u)}n(s,h,s.length,u,a.length)}),s}return o(i,"visitLayer"),Jr(e,i),r}function IFe(t,e){if(t.node(e).dummy)return os(t.predecessors(e),function(r){return t.node(r).dummy})}function moe(t,e,r){if(e>r){var n=e;e=r,r=n}Object.prototype.hasOwnProperty.call(t,e)||Object.defineProperty(t,e,{enumerable:!0,configurable:!0,value:{},writable:!0});var i=t[e];Object.defineProperty(i,r,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function OFe(t,e,r){if(e>r){var n=e;e=r,r=n}return!!t[e]&&Object.prototype.hasOwnProperty.call(t[e],r)}function PFe(t,e,r,n){var i={},a={},s={};return Ae(e,function(l){Ae(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Ae(e,function(l){var u=-1;Ae(l,function(h){var f=n(h);if(f.length){f=Dc(f,function(y){return s[y]});for(var d=(f.length-1)/2,p=Math.floor(d),m=Math.ceil(d);p<=m;++p){var g=f[p];a[h]===h&&u{"use strict";Yt();qo();Rc();o(NFe,"findType1Conflicts");o(MFe,"findType2Conflicts");o(IFe,"findOtherInnerSegmentNode");o(moe,"addConflict");o(OFe,"hasConflict");o(PFe,"verticalAlignment");o(BFe,"horizontalCompaction");o(FFe,"buildBlockGraph");o($Fe,"findSmallestWidthAlignment");o(zFe,"alignCoordinates");o(GFe,"balance");o(goe,"positionX");o(VFe,"sep");o(UFe,"width")});function voe(t){t=bk(t),HFe(t),_R(goe(t),function(e,r){t.node(r).x=e})}function HFe(t){var e=uf(t),r=t.graph().ranksep,n=0;Ae(e,function(i){var a=Gs(rt(i,function(s){return t.node(s).height}));Ae(i,function(s){t.node(s).y=n+a/2}),n+=a+r})}var xoe=M(()=>{"use strict";Yt();Rc();yoe();o(voe,"position");o(HFe,"positionY")});function q2(t,e){var r=e&&e.debugTiming?fse:dse;r("layout",()=>{var n=r(" buildLayoutGraph",()=>t$e(t));r(" runLayout",()=>qFe(n,r)),r(" updateInputGraph",()=>WFe(t,n))})}function qFe(t,e){e(" makeSpaceForEdgeLabels",()=>r$e(t)),e(" removeSelfEdges",()=>h$e(t)),e(" acyclic",()=>ase(t)),e(" nestingGraph.run",()=>Use(t)),e(" rank",()=>sN(bk(t))),e(" injectEdgeLabelProxies",()=>n$e(t)),e(" removeEmptyRanks",()=>use(t)),e(" nestingGraph.cleanup",()=>qse(t)),e(" normalizeRanks",()=>cse(t)),e(" assignRankMinMax",()=>i$e(t)),e(" removeEdgeLabelProxies",()=>a$e(t)),e(" normalize.run",()=>wse(t)),e(" parentDummyChains",()=>doe(t)),e(" addBorderSegments",()=>mse(t)),e(" order",()=>hoe(t)),e(" insertSelfEdges",()=>f$e(t)),e(" adjustCoordinateSystem",()=>vse(t)),e(" position",()=>voe(t)),e(" positionSelfEdges",()=>d$e(t)),e(" removeBorderNodes",()=>u$e(t)),e(" normalize.undo",()=>kse(t)),e(" fixupEdgeLabelCoords",()=>l$e(t)),e(" undoCoordinateSystem",()=>xse(t)),e(" translateGraph",()=>s$e(t)),e(" assignNodeIntersects",()=>o$e(t)),e(" reversePoints",()=>c$e(t)),e(" acyclic.undo",()=>sse(t))}function WFe(t,e){Ae(t.nodes(),function(r){var n=t.node(r),i=e.node(r);n&&(n.x=i.x,n.y=i.y,e.children(r).length&&(n.width=i.width,n.height=i.height))}),Ae(t.edges(),function(r){var n=t.edge(r),i=e.edge(r);n.points=i.points,Object.prototype.hasOwnProperty.call(i,"x")&&(n.x=i.x,n.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function t$e(t){var e=new cn({multigraph:!0,compound:!0}),r=uN(t.graph());return e.setGraph(Wh({},XFe,cN(r,YFe),op(r,jFe))),Ae(t.nodes(),function(n){var i=uN(t.node(n));e.setNode(n,of(cN(i,KFe),QFe)),e.setParent(n,t.parent(n))}),Ae(t.edges(),function(n){var i=uN(t.edge(n));e.setEdge(n,Wh({},JFe,cN(i,ZFe),op(i,e$e)))}),e}function r$e(t){var e=t.graph();e.ranksep/=2,Ae(t.edges(),function(r){var n=t.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function n$e(t){Ae(t.edges(),function(e){var r=t.edge(e);if(r.width&&r.height){var n=t.node(e.v),i=t.node(e.w),a={rank:(i.rank-n.rank)/2+n.rank,e};Lc(t,"edge-proxy",a,"_ep")}})}function i$e(t){var e=0;Ae(t.nodes(),function(r){var n=t.node(r);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,e=Gs(e,n.maxRank))}),t.graph().maxRank=e}function a$e(t){Ae(t.nodes(),function(e){var r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function s$e(t){var e=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=t.graph(),s=a.marginx||0,l=a.marginy||0;function u(h){var f=h.x,d=h.y,p=h.width,m=h.height;e=Math.min(e,f-p/2),r=Math.max(r,f+p/2),n=Math.min(n,d-m/2),i=Math.max(i,d+m/2)}o(u,"getExtremes"),Ae(t.nodes(),function(h){u(t.node(h))}),Ae(t.edges(),function(h){var f=t.edge(h);Object.prototype.hasOwnProperty.call(f,"x")&&u(f)}),e-=s,n-=l,Ae(t.nodes(),function(h){var f=t.node(h);f.x-=e,f.y-=n}),Ae(t.edges(),function(h){var f=t.edge(h);Ae(f.points,function(d){d.x-=e,d.y-=n}),Object.prototype.hasOwnProperty.call(f,"x")&&(f.x-=e),Object.prototype.hasOwnProperty.call(f,"y")&&(f.y-=n)}),a.width=r-e+s,a.height=i-n+l}function o$e(t){Ae(t.edges(),function(e){var r=t.edge(e),n=t.node(e.v),i=t.node(e.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=i,s=n),r.points.unshift(UR(n,a)),r.points.push(UR(i,s))})}function l$e(t){Ae(t.edges(),function(e){var r=t.edge(e);if(Object.prototype.hasOwnProperty.call(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function c$e(t){Ae(t.edges(),function(e){var r=t.edge(e);r.reversed&&r.points.reverse()})}function u$e(t){Ae(t.nodes(),function(e){if(t.children(e).length){var r=t.node(e),n=t.node(r.borderTop),i=t.node(r.borderBottom),a=t.node(ga(r.borderLeft)),s=t.node(ga(r.borderRight));r.width=Math.abs(s.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),Ae(t.nodes(),function(e){t.node(e).dummy==="border"&&t.removeNode(e)})}function h$e(t){Ae(t.edges(),function(e){if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function f$e(t){var e=uf(t);Ae(e,function(r){var n=0;Ae(r,function(i,a){var s=t.node(i);s.order=a+n,Ae(s.selfEdges,function(l){Lc(t,"selfedge",{width:l.label.width,height:l.label.height,rank:s.rank,order:a+ ++n,e:l.e,label:l.label},"_se")}),delete s.selfEdges})})}function d$e(t){Ae(t.nodes(),function(e){var r=t.node(e);if(r.dummy==="selfedge"){var n=t.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:i+2*s/3,y:a-l},{x:i+5*s/6,y:a-l},{x:i+s,y:a},{x:i+5*s/6,y:a+l},{x:i+2*s/3,y:a+l}],r.label.x=r.x,r.label.y=r.y}})}function cN(t,e){return ap(op(t,e),Number)}function uN(t){var e={};return Ae(t,function(r,n){e[n.toLowerCase()]=r}),e}var YFe,XFe,jFe,KFe,QFe,ZFe,JFe,e$e,boe=M(()=>{"use strict";Yt();qo();gse();Tse();VR();XR();oN();Wse();foe();poe();xoe();Rc();o(q2,"layout");o(qFe,"runLayout");o(WFe,"updateInputGraph");YFe=["nodesep","edgesep","ranksep","marginx","marginy"],XFe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},jFe=["acyclicer","ranker","rankdir","align"],KFe=["width","height"],QFe={width:0,height:0},ZFe=["minlen","weight","width","height","labeloffset"],JFe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},e$e=["labelpos"];o(t$e,"buildLayoutGraph");o(r$e,"makeSpaceForEdgeLabels");o(n$e,"injectEdgeLabelProxies");o(i$e,"assignRankMinMax");o(a$e,"removeEdgeLabelProxies");o(s$e,"translateGraph");o(o$e,"assignNodeIntersects");o(l$e,"fixupEdgeLabelCoords");o(c$e,"reversePointsForReversedEdges");o(u$e,"removeBorderNodes");o(h$e,"removeSelfEdges");o(f$e,"insertSelfEdges");o(d$e,"positionSelfEdges");o(cN,"selectNumberAttrs");o(uN,"canonicalize")});var hN=M(()=>{"use strict";VR();boe();XR();oN()});function Wo(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:p$e(t),edges:m$e(t)};return xr(t.graph())||(e.value=ln(t.graph())),e}function p$e(t){return rt(t.nodes(),function(e){var r=t.node(e),n=t.parent(e),i={v:e};return xr(r)||(i.value=r),xr(n)||(i.parent=n),i})}function m$e(t){return rt(t.edges(),function(e){var r=t.edge(e),n={v:e.v,w:e.w};return xr(e.name)||(n.name=e.name),xr(r)||(n.value=r),n})}var fN=M(()=>{"use strict";Yt();yk();o(Wo,"write");o(p$e,"writeNodes");o(m$e,"writeEdges")});var Er,hp,koe,Eoe,Ek,g$e,Soe,Coe,y$e,Wm,woe,Aoe,_oe,Doe,Loe,Roe=M(()=>{"use strict";pt();qo();fN();Er=new Map,hp=new Map,koe=new Map,Eoe=o(()=>{hp.clear(),koe.clear(),Er.clear()},"clear"),Ek=o((t,e)=>{let r=hp.get(e)||[];return X.trace("In isDescendant",e," ",t," = ",r.includes(t)),r.includes(t)},"isDescendant"),g$e=o((t,e)=>{let r=hp.get(e)||[];return X.info("Descendants of ",e," is ",r),X.info("Edge is ",t),t.v===e||t.w===e?!1:r?r.includes(t.v)||Ek(t.v,e)||Ek(t.w,e)||r.includes(t.w):(X.debug("Tilt, ",e,",not in descendants"),!1)},"edgeInCluster"),Soe=o((t,e,r,n)=>{X.warn("Copying children of ",t,"root",n,"data",e.node(t),n);let i=e.children(t)||[];t!==n&&i.push(t),X.warn("Copying (nodes) clusterId",t,"nodes",i),i.forEach(a=>{if(e.children(a).length>0)Soe(a,e,r,n);else{let s=e.node(a);X.info("cp ",a," to ",n," with parent ",t),r.setNode(a,s),n!==e.parent(a)&&(X.warn("Setting parent",a,e.parent(a)),r.setParent(a,e.parent(a))),t!==n&&a!==t?(X.debug("Setting parent",a,t),r.setParent(a,t)):(X.info("In copy ",t,"root",n,"data",e.node(t),n),X.debug("Not Setting parent for node=",a,"cluster!==rootId",t!==n,"node!==clusterId",a!==t));let l=e.edges(a);X.debug("Copying Edges",l),l.forEach(u=>{X.info("Edge",u);let h=e.edge(u.v,u.w,u.name);X.info("Edge data",h,n);try{g$e(u,n)?(X.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),X.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):X.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",t)}catch(f){X.error(f)}})}X.debug("Removing node",a),e.removeNode(a)})},"copy"),Coe=o((t,e)=>{let r=e.children(t),n=[...r];for(let i of r)koe.set(i,t),n=[...n,...Coe(i,e)];return n},"extractDescendants"),y$e=o((t,e,r)=>{let n=t.edges().filter(u=>u.v===e||u.w===e),i=t.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===e?r:u.v,w:u.w===e?e:u.w})),s=i.map(u=>({v:u.v,w:u.w}));return a.filter(u=>s.some(h=>u.v===h.v&&u.w===h.w))},"findCommonEdges"),Wm=o((t,e,r)=>{let n=e.children(t);if(X.trace("Searching children of id ",t,n),n.length<1)return t;let i;for(let a of n){let s=Wm(a,e,r),l=y$e(e,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),woe=o(t=>!Er.has(t)||!Er.get(t).externalConnections?t:Er.has(t)?Er.get(t).id:t,"getAnchorId"),Aoe=o((t,e)=>{if(!t||e>10){X.debug("Opting out, no graph ");return}else X.debug("Opting in, graph ");t.nodes().forEach(function(r){t.children(r).length>0&&(X.warn("Cluster identified",r," Replacement id in edges: ",Wm(r,t,r)),hp.set(r,Coe(r,t)),Er.set(r,{id:Wm(r,t,r),clusterData:t.node(r)}))}),t.nodes().forEach(function(r){let n=t.children(r),i=t.edges();n.length>0?(X.debug("Cluster identified",r,hp),i.forEach(a=>{let s=Ek(a.v,r),l=Ek(a.w,r);s^l&&(X.warn("Edge: ",a," leaves cluster ",r),X.warn("Descendants of XXX ",r,": ",hp.get(r)),Er.get(r).externalConnections=!0)})):X.debug("Not a cluster ",r,hp)});for(let r of Er.keys()){let n=Er.get(r).id,i=t.parent(n);i!==r&&Er.has(i)&&!Er.get(i).externalConnections&&(Er.get(r).id=i)}t.edges().forEach(function(r){let n=t.edge(r);X.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),X.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(t.edge(r)));let i=r.v,a=r.w;if(X.warn("Fix XXX",Er,"ids:",r.v,r.w,"Translating: ",Er.get(r.v)," --- ",Er.get(r.w)),Er.get(r.v)||Er.get(r.w)){if(X.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=woe(r.v),a=woe(r.w),t.removeEdge(r.v,r.w,r.name),i!==r.v){let s=t.parent(i);Er.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=t.parent(a);Er.get(s).externalConnections=!0,n.toCluster=r.w}X.warn("Fix Replacing with XXX",i,a,r.name),t.setEdge(i,a,n,r.name)}}),X.warn("Adjusted Graph",Wo(t)),_oe(t,0),X.trace(Er)},"adjustClustersAndEdges"),_oe=o((t,e)=>{if(X.warn("extractor - ",e,Wo(t),t.children("D")),e>10){X.error("Bailing out");return}let r=t.nodes(),n=!1;for(let i of r){let a=t.children(i);n=n||a.length>0}if(!n){X.debug("Done, no node has children",t.nodes());return}X.debug("Nodes = ",r,e);for(let i of r)if(X.debug("Extracting node",i,Er,Er.has(i)&&!Er.get(i).externalConnections,!t.parent(i),t.node(i),t.children("D")," Depth ",e),!Er.has(i))X.debug("Not a cluster",i,e);else if(!Er.get(i).externalConnections&&t.children(i)&&t.children(i).length>0){X.warn("Cluster without external connections, without a parent and with children",i,e);let s=t.graph().rankdir==="TB"?"LR":"TB";Er.get(i)?.clusterData?.dir&&(s=Er.get(i).clusterData.dir,X.warn("Fixing dir",Er.get(i).clusterData.dir,s));let l=new cn({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});X.warn("Old graph before copy",Wo(t)),Soe(i,t,l,i),t.setNode(i,{clusterNode:!0,id:i,clusterData:Er.get(i).clusterData,label:Er.get(i).label,graph:l}),X.warn("New graph after copy node: (",i,")",Wo(l)),X.debug("Old graph after copy",Wo(t))}else X.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!Er.get(i).externalConnections," no parent: ",!t.parent(i)," children ",t.children(i)&&t.children(i).length>0,t.children("D"),e),X.debug(Er);r=t.nodes(),X.warn("New list of nodes",r);for(let i of r){let a=t.node(i);X.warn(" Now next level",i,a),a?.clusterNode&&_oe(a.graph,e+1)}},"extractor"),Doe=o((t,e)=>{if(e.length===0)return[];let r=Object.assign([],e);return e.forEach(n=>{let i=t.children(n),a=Doe(t,i);r=[...r,...a]}),r},"sorter"),Loe=o(t=>Doe(t,t.children()),"sortNodesByHierarchy")});var Moe={};dr(Moe,{render:()=>v$e});var Noe,v$e,Ioe=M(()=>{"use strict";hN();fN();qo();K9();It();Roe();Tw();uw();j9();pt();P2();Xt();Noe=o(async(t,e,r,n,i,a)=>{X.warn("Graph in recursive render:XAX",Wo(e),i);let s=e.graph().rankdir;X.trace("Dir in recursive render - dir:",s);let l=t.insert("g").attr("class","root");e.nodes()?X.info("Recursive render XXX",e.nodes()):X.info("No nodes found for",e),e.edges().length>0&&X.info("Recursive edges",e.edge(e.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(e.nodes().map(async function(y){let v=e.node(y);if(i!==void 0){let x=JSON.parse(JSON.stringify(i.clusterData));X.trace(`Setting data for parent cluster XXX + L0,20`)},"requirement_arrow"),f$e=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),d$e={extension:ZFe,composition:JFe,aggregation:e$e,dependency:t$e,lollipop:r$e,point:n$e,circle:i$e,cross:a$e,barb:s$e,only_one:o$e,zero_or_one:l$e,one_or_more:c$e,zero_or_more:u$e,requirement_arrow:h$e,requirement_contains:f$e},rS=QFe});async function c1(t,e,r){let n,i;e.shape==="rect"&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect");let a=e.shape?bM[e.shape]:void 0;if(!a)throw new Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let s;r.config.securityLevel==="sandbox"?s="_top":e.linkTarget&&(s=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",s??null),i=await a(n,e,r)}else i=await a(t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),nS.set(e.id,n),e.haveCallback&&n.attr("class",n.attr("class")+" clickable"),n}var nS,Ose,Pse,sb,iS=I(()=>{"use strict";gt();TM();nS=new Map;o(c1,"insertNode");Ose=o((t,e)=>{nS.set(e.id,t)},"setNodeElem"),Pse=o(()=>{nS.clear()},"clear"),sb=o(t=>{let e=nS.get(t.id);X.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});var Bse,Fse=I(()=>{"use strict";ti();wr();gt();Yk();SM();EM();iS();Bt();sr();Bse={common:nt,getConfig:tr,insertCluster:l1,insertEdge:tS,insertEdgeLabel:Jk,insertMarkers:rS,insertNode:c1,interpolateToCurve:dN,labelHelper:ft,log:X,positionEdgeLabel:eS}});function m$e(t){return typeof t=="symbol"||gi(t)&&Ma(t)==p$e}var p$e,Fo,v0=I(()=>{"use strict";yh();fl();p$e="[object Symbol]";o(m$e,"isSymbol");Fo=m$e});function g$e(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r{"use strict";o(g$e,"arrayMap");oo=g$e});function Gse(t){if(typeof t=="string")return t;if(zt(t))return oo(t,Gse)+"";if(Fo(t))return zse?zse.call(t):"";var e=t+"";return e=="0"&&1/t==-y$e?"-0":e}var y$e,$se,zse,Vse,qse=I(()=>{"use strict";r0();x0();ni();v0();y$e=1/0,$se=da?da.prototype:void 0,zse=$se?$se.toString:void 0;o(Gse,"baseToString");Vse=Gse});function x$e(t){for(var e=t.length;e--&&v$e.test(t.charAt(e)););return e}var v$e,Use,Wse=I(()=>{"use strict";v$e=/\s/;o(x$e,"trimmedEndIndex");Use=x$e});function T$e(t){return t&&t.slice(0,Use(t)+1).replace(b$e,"")}var b$e,Hse,Yse=I(()=>{"use strict";Wse();b$e=/^\s+/;o(T$e,"baseTrim");Hse=T$e});function C$e(t){if(typeof t=="number")return t;if(Fo(t))return jse;if(In(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=In(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=Hse(t);var r=k$e.test(t);return r||S$e.test(t)?E$e(t.slice(2),r?2:8):w$e.test(t)?jse:+t}var jse,w$e,k$e,S$e,E$e,Xse,Kse=I(()=>{"use strict";Yse();Oo();v0();jse=NaN,w$e=/^[-+]0x[0-9a-f]+$/i,k$e=/^0b[01]+$/i,S$e=/^0o[0-7]+$/i,E$e=parseInt;o(C$e,"toNumber");Xse=C$e});function _$e(t){if(!t)return t===0?t:0;if(t=Xse(t),t===Qse||t===-Qse){var e=t<0?-1:1;return e*A$e}return t===t?t:0}var Qse,A$e,u1,CM=I(()=>{"use strict";Kse();Qse=1/0,A$e=17976931348623157e292;o(_$e,"toFinite");u1=_$e});function D$e(t){var e=u1(t),r=e%1;return e===e?r?e-r:e:0}var lu,h1=I(()=>{"use strict";CM();o(D$e,"toInteger");lu=D$e});var R$e,aS,Zse=I(()=>{"use strict";Mf();ul();R$e=Zs(Ei,"WeakMap"),aS=R$e});function L$e(){}var yi,AM=I(()=>{"use strict";o(L$e,"noop");yi=L$e});function N$e(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(N$e,"arrayEach");sS=N$e});function M$e(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(M$e,"baseFindIndex");oS=M$e});function I$e(t){return t!==t}var Jse,eoe=I(()=>{"use strict";o(I$e,"baseIsNaN");Jse=I$e});function O$e(t,e,r){for(var n=r-1,i=t.length;++n{"use strict";o(O$e,"strictIndexOf");toe=O$e});function P$e(t,e,r){return e===e?toe(t,e,r):oS(t,Jse,r)}var f1,lS=I(()=>{"use strict";DM();eoe();roe();o(P$e,"baseIndexOf");f1=P$e});function B$e(t,e){var r=t==null?0:t.length;return!!r&&f1(t,e,0)>-1}var cS,RM=I(()=>{"use strict";lS();o(B$e,"arrayIncludes");cS=B$e});var F$e,noe,ioe=I(()=>{"use strict";eN();F$e=nk(Object.keys,Object),noe=F$e});function G$e(t){if(!Jc(t))return noe(t);var e=[];for(var r in Object(t))z$e.call(t,r)&&r!="constructor"&&e.push(r);return e}var $$e,z$e,d1,uS=I(()=>{"use strict";Kg();ioe();$$e=Object.prototype,z$e=$$e.hasOwnProperty;o(G$e,"baseKeys");d1=G$e});function V$e(t){return Ci(t)?lk(t):d1(t)}var en,cu=I(()=>{"use strict";aN();uS();dl();o(V$e,"keys");en=V$e});var q$e,U$e,W$e,Pa,aoe=I(()=>{"use strict";e1();o0();cN();dl();Kg();cu();q$e=Object.prototype,U$e=q$e.hasOwnProperty,W$e=hk(function(t,e){if(Jc(e)||Ci(e)){gl(e,en(e),t);return}for(var r in e)U$e.call(e,r)&&eu(t,r,e[r])}),Pa=W$e});function j$e(t,e){if(zt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||Fo(t)?!0:Y$e.test(t)||!H$e.test(t)||e!=null&&t in Object(e)}var H$e,Y$e,p1,hS=I(()=>{"use strict";ni();v0();H$e=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Y$e=/^\w*$/;o(j$e,"isKey");p1=j$e});function K$e(t){var e=Vg(t,function(n){return r.size===X$e&&r.clear(),n}),r=e.cache;return e}var X$e,soe,ooe=I(()=>{"use strict";Y9();X$e=500;o(K$e,"memoizeCapped");soe=K$e});var Q$e,Z$e,J$e,loe,coe=I(()=>{"use strict";ooe();Q$e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Z$e=/\\(\\)?/g,J$e=soe(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(Q$e,function(r,n,i,a){e.push(i?a.replace(Z$e,"$1"):n||r)}),e}),loe=J$e});function eze(t){return t==null?"":Vse(t)}var fS,LM=I(()=>{"use strict";qse();o(eze,"toString");fS=eze});function tze(t,e){return zt(t)?t:p1(t,e)?[t]:loe(fS(t))}var Qf,ob=I(()=>{"use strict";ni();hS();coe();LM();o(tze,"castPath");Qf=tze});function nze(t){if(typeof t=="string"||Fo(t))return t;var e=t+"";return e=="0"&&1/t==-rze?"-0":e}var rze,uu,m1=I(()=>{"use strict";v0();rze=1/0;o(nze,"toKey");uu=nze});function ize(t,e){e=Qf(e,t);for(var r=0,n=e.length;t!=null&&r{"use strict";ob();m1();o(ize,"baseGet");Zf=ize});function aze(t,e,r){var n=t==null?void 0:Zf(t,e);return n===void 0?r:n}var uoe,hoe=I(()=>{"use strict";lb();o(aze,"get");uoe=aze});function sze(t,e){for(var r=-1,n=e.length,i=t.length;++r{"use strict";o(sze,"arrayPush");g1=sze});function oze(t){return zt(t)||oc(t)||!!(foe&&t&&t[foe])}var foe,doe,poe=I(()=>{"use strict";r0();Qg();ni();foe=da?da.isConcatSpreadable:void 0;o(oze,"isFlattenable");doe=oze});function moe(t,e,r,n,i){var a=-1,s=t.length;for(r||(r=doe),i||(i=[]);++a0&&r(l)?e>1?moe(l,e-1,r,n,i):g1(i,l):n||(i[i.length]=l)}return i}var hu,y1=I(()=>{"use strict";dS();poe();o(moe,"baseFlatten");hu=moe});function lze(t){var e=t==null?0:t.length;return e?hu(t,1):[]}var ln,pS=I(()=>{"use strict";y1();o(lze,"flatten");ln=lze});function cze(t){return uk(ck(t,void 0,ln),t+"")}var goe,yoe=I(()=>{"use strict";pS();sN();lN();o(cze,"flatRest");goe=cze});function uze(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(i);++n{"use strict";o(uze,"baseSlice");mS=uze});function xze(t){return vze.test(t)}var hze,fze,dze,pze,mze,gze,yze,vze,voe,xoe=I(()=>{"use strict";hze="\\ud800-\\udfff",fze="\\u0300-\\u036f",dze="\\ufe20-\\ufe2f",pze="\\u20d0-\\u20ff",mze=fze+dze+pze,gze="\\ufe0e\\ufe0f",yze="\\u200d",vze=RegExp("["+yze+hze+mze+gze+"]");o(xze,"hasUnicode");voe=xze});function bze(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i{"use strict";o(bze,"arrayReduce");boe=bze});function Tze(t,e){return t&&gl(e,en(e),t)}var woe,koe=I(()=>{"use strict";o0();cu();o(Tze,"baseAssign");woe=Tze});function wze(t,e){return t&&gl(e,Js(e),t)}var Soe,Eoe=I(()=>{"use strict";o0();zf();o(wze,"baseAssignIn");Soe=wze});function kze(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r{"use strict";o(kze,"arrayFilter");v1=kze});function Sze(){return[]}var yS,MM=I(()=>{"use strict";o(Sze,"stubArray");yS=Sze});var Eze,Cze,Coe,Aze,x1,vS=I(()=>{"use strict";gS();MM();Eze=Object.prototype,Cze=Eze.propertyIsEnumerable,Coe=Object.getOwnPropertySymbols,Aze=Coe?function(t){return t==null?[]:(t=Object(t),v1(Coe(t),function(e){return Cze.call(t,e)}))}:yS,x1=Aze});function _ze(t,e){return gl(t,x1(t),e)}var Aoe,_oe=I(()=>{"use strict";o0();vS();o(_ze,"copySymbols");Aoe=_ze});var Dze,Rze,xS,IM=I(()=>{"use strict";dS();ik();vS();MM();Dze=Object.getOwnPropertySymbols,Rze=Dze?function(t){for(var e=[];t;)g1(e,x1(t)),t=Xg(t);return e}:yS,xS=Rze});function Lze(t,e){return gl(t,xS(t),e)}var Doe,Roe=I(()=>{"use strict";o0();IM();o(Lze,"copySymbolsIn");Doe=Lze});function Nze(t,e,r){var n=e(t);return zt(t)?n:g1(n,r(t))}var bS,OM=I(()=>{"use strict";dS();ni();o(Nze,"baseGetAllKeys");bS=Nze});function Mze(t){return bS(t,en,x1)}var cb,PM=I(()=>{"use strict";OM();vS();cu();o(Mze,"getAllKeys");cb=Mze});function Ize(t){return bS(t,Js,xS)}var TS,BM=I(()=>{"use strict";OM();IM();zf();o(Ize,"getAllKeysIn");TS=Ize});var Oze,wS,Loe=I(()=>{"use strict";Mf();ul();Oze=Zs(Ei,"DataView"),wS=Oze});var Pze,kS,Noe=I(()=>{"use strict";Mf();ul();Pze=Zs(Ei,"Promise"),kS=Pze});var Bze,Jf,FM=I(()=>{"use strict";Mf();ul();Bze=Zs(Ei,"Set"),Jf=Bze});var Moe,Fze,Ioe,Ooe,Poe,Boe,$ze,zze,Gze,Vze,qze,b0,$o,T0=I(()=>{"use strict";Loe();K5();Noe();FM();Zse();yh();U9();Moe="[object Map]",Fze="[object Object]",Ioe="[object Promise]",Ooe="[object Set]",Poe="[object WeakMap]",Boe="[object DataView]",$ze=vh(wS),zze=vh(Pf),Gze=vh(kS),Vze=vh(Jf),qze=vh(aS),b0=Ma;(wS&&b0(new wS(new ArrayBuffer(1)))!=Boe||Pf&&b0(new Pf)!=Moe||kS&&b0(kS.resolve())!=Ioe||Jf&&b0(new Jf)!=Ooe||aS&&b0(new aS)!=Poe)&&(b0=o(function(t){var e=Ma(t),r=e==Fze?t.constructor:void 0,n=r?vh(r):"";if(n)switch(n){case $ze:return Boe;case zze:return Moe;case Gze:return Ioe;case Vze:return Ooe;case qze:return Poe}return e},"getTag"));$o=b0});function Hze(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&Wze.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var Uze,Wze,Foe,$oe=I(()=>{"use strict";Uze=Object.prototype,Wze=Uze.hasOwnProperty;o(Hze,"initCloneArray");Foe=Hze});function Yze(t,e){var r=e?jg(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var zoe,Goe=I(()=>{"use strict";ek();o(Yze,"cloneDataView");zoe=Yze});function Xze(t){var e=new t.constructor(t.source,jze.exec(t));return e.lastIndex=t.lastIndex,e}var jze,Voe,qoe=I(()=>{"use strict";jze=/\w*$/;o(Xze,"cloneRegExp");Voe=Xze});function Kze(t){return Woe?Object(Woe.call(t)):{}}var Uoe,Woe,Hoe,Yoe=I(()=>{"use strict";r0();Uoe=da?da.prototype:void 0,Woe=Uoe?Uoe.valueOf:void 0;o(Kze,"cloneSymbol");Hoe=Kze});function gGe(t,e,r){var n=t.constructor;switch(e){case aGe:return jg(t);case Qze:case Zze:return new n(+t);case sGe:return zoe(t,r);case oGe:case lGe:case cGe:case uGe:case hGe:case fGe:case dGe:case pGe:case mGe:return tk(t,r);case Jze:return new n;case eGe:case nGe:return new n(t);case tGe:return Voe(t);case rGe:return new n;case iGe:return Hoe(t)}}var Qze,Zze,Jze,eGe,tGe,rGe,nGe,iGe,aGe,sGe,oGe,lGe,cGe,uGe,hGe,fGe,dGe,pGe,mGe,joe,Xoe=I(()=>{"use strict";ek();Goe();qoe();Yoe();Z9();Qze="[object Boolean]",Zze="[object Date]",Jze="[object Map]",eGe="[object Number]",tGe="[object RegExp]",rGe="[object Set]",nGe="[object String]",iGe="[object Symbol]",aGe="[object ArrayBuffer]",sGe="[object DataView]",oGe="[object Float32Array]",lGe="[object Float64Array]",cGe="[object Int8Array]",uGe="[object Int16Array]",hGe="[object Int32Array]",fGe="[object Uint8Array]",dGe="[object Uint8ClampedArray]",pGe="[object Uint16Array]",mGe="[object Uint32Array]";o(gGe,"initCloneByTag");joe=gGe});function vGe(t){return gi(t)&&$o(t)==yGe}var yGe,Koe,Qoe=I(()=>{"use strict";T0();fl();yGe="[object Map]";o(vGe,"baseIsMap");Koe=vGe});var Zoe,xGe,Joe,ele=I(()=>{"use strict";Qoe();s0();Px();Zoe=ml&&ml.isMap,xGe=Zoe?pl(Zoe):Koe,Joe=xGe});function TGe(t){return gi(t)&&$o(t)==bGe}var bGe,tle,rle=I(()=>{"use strict";T0();fl();bGe="[object Set]";o(TGe,"baseIsSet");tle=TGe});var nle,wGe,ile,ale=I(()=>{"use strict";rle();s0();Px();nle=ml&&ml.isSet,wGe=nle?pl(nle):tle,ile=wGe});function SS(t,e,r,n,i,a){var s,l=e&kGe,u=e&SGe,h=e&EGe;if(r&&(s=i?r(t,n,i,a):r(t)),s!==void 0)return s;if(!In(t))return t;var f=zt(t);if(f){if(s=Foe(t),!l)return rk(t,s)}else{var d=$o(t),p=d==ole||d==RGe;if(lc(t))return J5(t,l);if(d==lle||d==sle||p&&!i){if(s=u||p?{}:ak(t),!l)return u?Doe(t,Soe(s,t)):Aoe(t,woe(s,t))}else{if(!Gn[d])return i?t:{};s=joe(t,d,l)}}a||(a=new Qc);var m=a.get(t);if(m)return m;a.set(t,s),ile(t)?t.forEach(function(v){s.add(SS(v,e,r,v,t,a))}):Joe(t)&&t.forEach(function(v,x){s.set(x,SS(v,e,r,x,t,a))});var g=h?u?TS:cb:u?Js:en,y=f?void 0:g(t);return sS(y||t,function(v,x){y&&(x=v,v=t[x]),eu(s,x,SS(v,e,r,x,t,a))}),s}var kGe,SGe,EGe,sle,CGe,AGe,_Ge,DGe,ole,RGe,LGe,NGe,lle,MGe,IGe,OGe,PGe,BGe,FGe,$Ge,zGe,GGe,VGe,qGe,UGe,WGe,HGe,YGe,jGe,Gn,ES,$M=I(()=>{"use strict";Mx();_M();e1();koe();Eoe();K9();J9();_oe();Roe();PM();BM();T0();$oe();Xoe();tN();ni();Jg();ele();Oo();ale();cu();zf();kGe=1,SGe=2,EGe=4,sle="[object Arguments]",CGe="[object Array]",AGe="[object Boolean]",_Ge="[object Date]",DGe="[object Error]",ole="[object Function]",RGe="[object GeneratorFunction]",LGe="[object Map]",NGe="[object Number]",lle="[object Object]",MGe="[object RegExp]",IGe="[object Set]",OGe="[object String]",PGe="[object Symbol]",BGe="[object WeakMap]",FGe="[object ArrayBuffer]",$Ge="[object DataView]",zGe="[object Float32Array]",GGe="[object Float64Array]",VGe="[object Int8Array]",qGe="[object Int16Array]",UGe="[object Int32Array]",WGe="[object Uint8Array]",HGe="[object Uint8ClampedArray]",YGe="[object Uint16Array]",jGe="[object Uint32Array]",Gn={};Gn[sle]=Gn[CGe]=Gn[FGe]=Gn[$Ge]=Gn[AGe]=Gn[_Ge]=Gn[zGe]=Gn[GGe]=Gn[VGe]=Gn[qGe]=Gn[UGe]=Gn[LGe]=Gn[NGe]=Gn[lle]=Gn[MGe]=Gn[IGe]=Gn[OGe]=Gn[PGe]=Gn[WGe]=Gn[HGe]=Gn[YGe]=Gn[jGe]=!0;Gn[DGe]=Gn[ole]=Gn[BGe]=!1;o(SS,"baseClone");ES=SS});function KGe(t){return ES(t,XGe)}var XGe,yn,zM=I(()=>{"use strict";$M();XGe=4;o(KGe,"clone");yn=KGe});function JGe(t){return ES(t,QGe|ZGe)}var QGe,ZGe,GM,cle=I(()=>{"use strict";$M();QGe=1,ZGe=4;o(JGe,"cloneDeep");GM=JGe});function eVe(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e{"use strict";o(eVe,"compact");fu=eVe});function rVe(t){return this.__data__.set(t,tVe),this}var tVe,hle,fle=I(()=>{"use strict";tVe="__lodash_hash_undefined__";o(rVe,"setCacheAdd");hle=rVe});function nVe(t){return this.__data__.has(t)}var dle,ple=I(()=>{"use strict";o(nVe,"setCacheHas");dle=nVe});function CS(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new i0;++e{"use strict";Q5();fle();ple();o(CS,"SetCache");CS.prototype.add=CS.prototype.push=hle;CS.prototype.has=dle;b1=CS});function iVe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(iVe,"arraySome");_S=iVe});function aVe(t,e){return t.has(e)}var T1,DS=I(()=>{"use strict";o(aVe,"cacheHas");T1=aVe});function lVe(t,e,r,n,i,a){var s=r&sVe,l=t.length,u=e.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(t),f=a.get(e);if(h&&f)return h==e&&f==t;var d=-1,p=!0,m=r&oVe?new b1:void 0;for(a.set(t,e),a.set(e,t);++d{"use strict";AS();VM();DS();sVe=1,oVe=2;o(lVe,"equalArrays");RS=lVe});function cVe(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}var mle,gle=I(()=>{"use strict";o(cVe,"mapToArray");mle=cVe});function uVe(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var w1,LS=I(()=>{"use strict";o(uVe,"setToArray");w1=uVe});function SVe(t,e,r,n,i,a,s){switch(r){case kVe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case wVe:return!(t.byteLength!=e.byteLength||!a(new Yg(t),new Yg(e)));case dVe:case pVe:case yVe:return hl(+t,+e);case mVe:return t.name==e.name&&t.message==e.message;case vVe:case bVe:return t==e+"";case gVe:var l=mle;case xVe:var u=n&hVe;if(l||(l=w1),t.size!=e.size&&!u)return!1;var h=s.get(t);if(h)return h==e;n|=fVe,s.set(t,e);var f=RS(l(t),l(e),n,i,a,s);return s.delete(t),f;case TVe:if(UM)return UM.call(t)==UM.call(e)}return!1}var hVe,fVe,dVe,pVe,mVe,gVe,yVe,vVe,xVe,bVe,TVe,wVe,kVe,yle,UM,vle,xle=I(()=>{"use strict";r0();Q9();n0();qM();gle();LS();hVe=1,fVe=2,dVe="[object Boolean]",pVe="[object Date]",mVe="[object Error]",gVe="[object Map]",yVe="[object Number]",vVe="[object RegExp]",xVe="[object Set]",bVe="[object String]",TVe="[object Symbol]",wVe="[object ArrayBuffer]",kVe="[object DataView]",yle=da?da.prototype:void 0,UM=yle?yle.valueOf:void 0;o(SVe,"equalByTag");vle=SVe});function _Ve(t,e,r,n,i,a){var s=r&EVe,l=cb(t),u=l.length,h=cb(e),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in e:AVe.call(e,p)))return!1}var m=a.get(t),g=a.get(e);if(m&&g)return m==e&&g==t;var y=!0;a.set(t,e),a.set(e,t);for(var v=s;++d{"use strict";PM();EVe=1,CVe=Object.prototype,AVe=CVe.hasOwnProperty;o(_Ve,"equalObjects");ble=_Ve});function LVe(t,e,r,n,i,a){var s=zt(t),l=zt(e),u=s?kle:$o(t),h=l?kle:$o(e);u=u==wle?NS:u,h=h==wle?NS:h;var f=u==NS,d=h==NS,p=u==h;if(p&&lc(t)){if(!lc(e))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new Qc),s||Ff(t)?RS(t,e,r,n,i,a):vle(t,e,u,r,n,i,a);if(!(r&DVe)){var m=f&&Sle.call(t,"__wrapped__"),g=d&&Sle.call(e,"__wrapped__");if(m||g){var y=m?t.value():t,v=g?e.value():e;return a||(a=new Qc),i(y,v,r,n,a)}}return p?(a||(a=new Qc),ble(t,e,r,n,i,a)):!1}var DVe,wle,kle,NS,RVe,Sle,Ele,Cle=I(()=>{"use strict";Mx();qM();xle();Tle();T0();ni();Jg();Bx();DVe=1,wle="[object Arguments]",kle="[object Array]",NS="[object Object]",RVe=Object.prototype,Sle=RVe.hasOwnProperty;o(LVe,"baseIsEqualDeep");Ele=LVe});function Ale(t,e,r,n,i){return t===e?!0:t==null||e==null||!gi(t)&&!gi(e)?t!==t&&e!==e:Ele(t,e,r,n,Ale,i)}var MS,WM=I(()=>{"use strict";Cle();fl();o(Ale,"baseIsEqual");MS=Ale});function IVe(t,e,r,n){var i=r.length,a=i,s=!n;if(t==null)return!a;for(t=Object(t);i--;){var l=r[i];if(s&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++i{"use strict";Mx();WM();NVe=1,MVe=2;o(IVe,"baseIsMatch");_le=IVe});function OVe(t){return t===t&&!In(t)}var IS,HM=I(()=>{"use strict";Oo();o(OVe,"isStrictComparable");IS=OVe});function PVe(t){for(var e=en(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,IS(i)]}return e}var Rle,Lle=I(()=>{"use strict";HM();cu();o(PVe,"getMatchData");Rle=PVe});function BVe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}var OS,YM=I(()=>{"use strict";o(BVe,"matchesStrictComparable");OS=BVe});function FVe(t){var e=Rle(t);return e.length==1&&e[0][2]?OS(e[0][0],e[0][1]):function(r){return r===t||_le(r,t,e)}}var Nle,Mle=I(()=>{"use strict";Dle();Lle();YM();o(FVe,"baseMatches");Nle=FVe});function $Ve(t,e){return t!=null&&e in Object(t)}var Ile,Ole=I(()=>{"use strict";o($Ve,"baseHasIn");Ile=$Ve});function zVe(t,e,r){e=Qf(e,t);for(var n=-1,i=e.length,a=!1;++n{"use strict";ob();Qg();ni();$x();sk();m1();o(zVe,"hasPath");PS=zVe});function GVe(t,e){return t!=null&&PS(t,e,Ile)}var BS,XM=I(()=>{"use strict";Ole();jM();o(GVe,"hasIn");BS=GVe});function UVe(t,e){return p1(t)&&IS(e)?OS(uu(t),e):function(r){var n=uoe(r,t);return n===void 0&&n===e?BS(r,t):MS(e,n,VVe|qVe)}}var VVe,qVe,Ple,Ble=I(()=>{"use strict";WM();hoe();XM();hS();HM();YM();m1();VVe=1,qVe=2;o(UVe,"baseMatchesProperty");Ple=UVe});function WVe(t){return function(e){return e?.[t]}}var FS,KM=I(()=>{"use strict";o(WVe,"baseProperty");FS=WVe});function HVe(t){return function(e){return Zf(e,t)}}var Fle,$le=I(()=>{"use strict";lb();o(HVe,"basePropertyDeep");Fle=HVe});function YVe(t){return p1(t)?FS(uu(t)):Fle(t)}var zle,Gle=I(()=>{"use strict";KM();$le();hS();m1();o(YVe,"property");zle=YVe});function jVe(t){return typeof t=="function"?t:t==null?pa:typeof t=="object"?zt(t)?Ple(t[0],t[1]):Nle(t):zle(t)}var An,_s=I(()=>{"use strict";Mle();Ble();bh();ni();Gle();o(jVe,"baseIteratee");An=jVe});function XVe(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i{"use strict";o(XVe,"arrayAggregator");Vle=XVe});function KVe(t,e){return t&&Hg(t,e,en)}var k1,$S=I(()=>{"use strict";Z5();cu();o(KVe,"baseForOwn");k1=KVe});function QVe(t,e){return function(r,n){if(r==null)return r;if(!Ci(r))return t(r,n);for(var i=r.length,a=e?i:-1,s=Object(r);(e?a--:++a{"use strict";dl();o(QVe,"createBaseEach");Ule=QVe});var ZVe,lo,ed=I(()=>{"use strict";$S();Wle();ZVe=Ule(k1),lo=ZVe});function JVe(t,e,r,n){return lo(t,function(i,a,s){e(n,i,r(i),s)}),n}var Hle,Yle=I(()=>{"use strict";ed();o(JVe,"baseAggregator");Hle=JVe});function eqe(t,e){return function(r,n){var i=zt(r)?Vle:Hle,a=e?e():{};return i(r,t,An(n,2),a)}}var jle,Xle=I(()=>{"use strict";qle();Yle();_s();ni();o(eqe,"createAggregator");jle=eqe});var tqe,zS,Kle=I(()=>{"use strict";ul();tqe=o(function(){return Ei.Date.now()},"now"),zS=tqe});var Qle,rqe,nqe,td,Zle=I(()=>{"use strict";t1();n0();l0();zf();Qle=Object.prototype,rqe=Qle.hasOwnProperty,nqe=tu(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&Po(e[0],e[1],i)&&(n=1);++r{"use strict";o(iqe,"arrayIncludesWith");GS=iqe});function sqe(t,e,r,n){var i=-1,a=cS,s=!0,l=t.length,u=[],h=e.length;if(!l)return u;r&&(e=oo(e,pl(r))),n?(a=GS,s=!1):e.length>=aqe&&(a=T1,s=!1,e=new b1(e));e:for(;++i{"use strict";AS();RM();QM();x0();s0();DS();aqe=200;o(sqe,"baseDifference");Jle=sqe});var oqe,rd,tce=I(()=>{"use strict";ece();y1();t1();ok();oqe=tu(function(t,e){return a0(t)?Jle(t,hu(e,1,a0,!0)):[]}),rd=oqe});function lqe(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var ya,rce=I(()=>{"use strict";o(lqe,"last");ya=lqe});function cqe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:lu(e),mS(t,e<0?0:e,n)):[]}var Ni,nce=I(()=>{"use strict";NM();h1();o(cqe,"drop");Ni=cqe});function uqe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:lu(e),e=n-e,mS(t,0,e<0?0:e)):[]}var Ch,ice=I(()=>{"use strict";NM();h1();o(uqe,"dropRight");Ch=uqe});function hqe(t){return typeof t=="function"?t:pa}var S1,VS=I(()=>{"use strict";bh();o(hqe,"castFunction");S1=hqe});function fqe(t,e){var r=zt(t)?sS:lo;return r(t,S1(e))}var Re,qS=I(()=>{"use strict";_M();ed();VS();ni();o(fqe,"forEach");Re=fqe});var ace=I(()=>{"use strict";qS()});function dqe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(dqe,"arrayEvery");sce=dqe});function pqe(t,e){var r=!0;return lo(t,function(n,i,a){return r=!!e(n,i,a),r}),r}var lce,cce=I(()=>{"use strict";ed();o(pqe,"baseEvery");lce=pqe});function mqe(t,e,r){var n=zt(t)?sce:lce;return r&&Po(t,e,r)&&(e=void 0),n(t,An(e,3))}var rs,uce=I(()=>{"use strict";oce();cce();_s();ni();l0();o(mqe,"every");rs=mqe});function gqe(t,e){var r=[];return lo(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}var US,ZM=I(()=>{"use strict";ed();o(gqe,"baseFilter");US=gqe});function yqe(t,e){var r=zt(t)?v1:US;return r(t,An(e,3))}var cn,JM=I(()=>{"use strict";gS();ZM();_s();ni();o(yqe,"filter");cn=yqe});function vqe(t){return function(e,r,n){var i=Object(e);if(!Ci(e)){var a=An(r,3);e=en(e),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=t(e,r,n);return s>-1?i[a?e[s]:s]:void 0}}var hce,fce=I(()=>{"use strict";_s();dl();cu();o(vqe,"createFind");hce=vqe});function bqe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:lu(r);return i<0&&(i=xqe(n+i,0)),oS(t,An(e,3),i)}var xqe,dce,pce=I(()=>{"use strict";DM();_s();h1();xqe=Math.max;o(bqe,"findIndex");dce=bqe});var Tqe,Ds,mce=I(()=>{"use strict";fce();pce();Tqe=hce(dce),Ds=Tqe});function wqe(t){return t&&t.length?t[0]:void 0}var va,gce=I(()=>{"use strict";o(wqe,"head");va=wqe});var yce=I(()=>{"use strict";gce()});function kqe(t,e){var r=-1,n=Ci(t)?Array(t.length):[];return lo(t,function(i,a,s){n[++r]=e(i,a,s)}),n}var WS,eI=I(()=>{"use strict";ed();dl();o(kqe,"baseMap");WS=kqe});function Sqe(t,e){var r=zt(t)?oo:WS;return r(t,An(e,3))}var it,E1=I(()=>{"use strict";x0();_s();eI();ni();o(Sqe,"map");it=Sqe});function Eqe(t,e){return hu(it(t,e),1)}var Ba,tI=I(()=>{"use strict";y1();E1();o(Eqe,"flatMap");Ba=Eqe});function Cqe(t,e){return t==null?t:Hg(t,S1(e),Js)}var rI,vce=I(()=>{"use strict";Z5();VS();zf();o(Cqe,"forIn");rI=Cqe});function Aqe(t,e){return t&&k1(t,S1(e))}var nI,xce=I(()=>{"use strict";$S();VS();o(Aqe,"forOwn");nI=Aqe});var _qe,Dqe,Rqe,iI,bce=I(()=>{"use strict";Wg();Xle();_qe=Object.prototype,Dqe=_qe.hasOwnProperty,Rqe=jle(function(t,e,r){Dqe.call(t,r)?t[r].push(e):Zc(t,r,[e])}),iI=Rqe});function Lqe(t,e){return t>e}var Tce,wce=I(()=>{"use strict";o(Lqe,"baseGt");Tce=Lqe});function Iqe(t,e){return t!=null&&Mqe.call(t,e)}var Nqe,Mqe,kce,Sce=I(()=>{"use strict";Nqe=Object.prototype,Mqe=Nqe.hasOwnProperty;o(Iqe,"baseHas");kce=Iqe});function Oqe(t,e){return t!=null&&PS(t,e,kce)}var Gt,Ece=I(()=>{"use strict";Sce();jM();o(Oqe,"has");Gt=Oqe});function Bqe(t){return typeof t=="string"||!zt(t)&&gi(t)&&Ma(t)==Pqe}var Pqe,Mi,HS=I(()=>{"use strict";yh();ni();fl();Pqe="[object String]";o(Bqe,"isString");Mi=Bqe});function Fqe(t,e){return oo(e,function(r){return t[r]})}var Cce,Ace=I(()=>{"use strict";x0();o(Fqe,"baseValues");Cce=Fqe});function $qe(t){return t==null?[]:Cce(t,en(t))}var Rr,aI=I(()=>{"use strict";Ace();cu();o($qe,"values");Rr=$qe});function Gqe(t,e,r,n){t=Ci(t)?t:Rr(t),r=r&&!n?lu(r):0;var i=t.length;return r<0&&(r=zqe(i+r,0)),Mi(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&f1(t,e,r)>-1}var zqe,ai,_ce=I(()=>{"use strict";lS();dl();HS();h1();aI();zqe=Math.max;o(Gqe,"includes");ai=Gqe});function qqe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:lu(r);return i<0&&(i=Vqe(n+i,0)),f1(t,e,i)}var Vqe,YS,Dce=I(()=>{"use strict";lS();h1();Vqe=Math.max;o(qqe,"indexOf");YS=qqe});function jqe(t){if(t==null)return!0;if(Ci(t)&&(zt(t)||typeof t=="string"||typeof t.splice=="function"||lc(t)||Ff(t)||oc(t)))return!t.length;var e=$o(t);if(e==Uqe||e==Wqe)return!t.size;if(Jc(t))return!d1(t).length;for(var r in t)if(Yqe.call(t,r))return!1;return!0}var Uqe,Wqe,Hqe,Yqe,Tr,jS=I(()=>{"use strict";uS();T0();Qg();ni();dl();Jg();Kg();Bx();Uqe="[object Map]",Wqe="[object Set]",Hqe=Object.prototype,Yqe=Hqe.hasOwnProperty;o(jqe,"isEmpty");Tr=jqe});function Kqe(t){return gi(t)&&Ma(t)==Xqe}var Xqe,Rce,Lce=I(()=>{"use strict";yh();fl();Xqe="[object RegExp]";o(Kqe,"baseIsRegExp");Rce=Kqe});var Nce,Qqe,bl,Mce=I(()=>{"use strict";Lce();s0();Px();Nce=ml&&ml.isRegExp,Qqe=Nce?pl(Nce):Rce,bl=Qqe});function Zqe(t){return t===void 0}var Er,Ice=I(()=>{"use strict";o(Zqe,"isUndefined");Er=Zqe});function Jqe(t,e){return t{"use strict";o(Jqe,"baseLt");XS=Jqe});function eUe(t,e){var r={};return e=An(e,3),k1(t,function(n,i,a){Zc(r,i,e(n,i,a))}),r}var w0,Oce=I(()=>{"use strict";Wg();$S();_s();o(eUe,"mapValues");w0=eUe});function tUe(t,e,r){for(var n=-1,i=t.length;++n{"use strict";v0();o(tUe,"baseExtremum");C1=tUe});function rUe(t){return t&&t.length?C1(t,pa,Tce):void 0}var co,Pce=I(()=>{"use strict";KS();wce();bh();o(rUe,"max");co=rUe});function nUe(t){return t&&t.length?C1(t,pa,XS):void 0}var uc,oI=I(()=>{"use strict";KS();sI();bh();o(nUe,"min");uc=nUe});function iUe(t,e){return t&&t.length?C1(t,An(e,2),XS):void 0}var k0,Bce=I(()=>{"use strict";KS();_s();sI();o(iUe,"minBy");k0=iUe});function sUe(t){if(typeof t!="function")throw new TypeError(aUe);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}var aUe,Fce,$ce=I(()=>{"use strict";aUe="Expected a function";o(sUe,"negate");Fce=sUe});function oUe(t,e,r,n){if(!In(t))return t;e=Qf(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i{"use strict";e1();ob();$x();Oo();m1();o(oUe,"baseSet");zce=oUe});function lUe(t,e,r){for(var n=-1,i=e.length,a={};++n{"use strict";lb();Gce();ob();o(lUe,"basePickBy");QS=lUe});function cUe(t,e){if(t==null)return{};var r=oo(TS(t),function(n){return[n]});return e=An(e),QS(t,r,function(n,i){return e(n,i[0])})}var uo,Vce=I(()=>{"use strict";x0();_s();lI();BM();o(cUe,"pickBy");uo=cUe});function uUe(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}var qce,Uce=I(()=>{"use strict";o(uUe,"baseSortBy");qce=uUe});function hUe(t,e){if(t!==e){var r=t!==void 0,n=t===null,i=t===t,a=Fo(t),s=e!==void 0,l=e===null,u=e===e,h=Fo(e);if(!l&&!h&&!a&&t>e||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&t{"use strict";v0();o(hUe,"compareAscending");Wce=hUe});function fUe(t,e,r){for(var n=-1,i=t.criteria,a=e.criteria,s=i.length,l=r.length;++n=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return t.index-e.index}var Yce,jce=I(()=>{"use strict";Hce();o(fUe,"compareMultiple");Yce=fUe});function dUe(t,e,r){e.length?e=oo(e,function(a){return zt(a)?function(s){return Zf(s,a.length===1?a[0]:a)}:a}):e=[pa];var n=-1;e=oo(e,pl(An));var i=WS(t,function(a,s,l){var u=oo(e,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return qce(i,function(a,s){return Yce(a,s,r)})}var Xce,Kce=I(()=>{"use strict";x0();lb();_s();eI();Uce();s0();jce();bh();ni();o(dUe,"baseOrderBy");Xce=dUe});var pUe,Qce,Zce=I(()=>{"use strict";KM();pUe=FS("length"),Qce=pUe});function CUe(t){for(var e=Jce.lastIndex=0;Jce.test(t);)++e;return e}var eue,mUe,gUe,yUe,vUe,xUe,bUe,cI,uI,TUe,tue,rue,nue,wUe,iue,aue,kUe,SUe,EUe,Jce,sue,oue=I(()=>{"use strict";eue="\\ud800-\\udfff",mUe="\\u0300-\\u036f",gUe="\\ufe20-\\ufe2f",yUe="\\u20d0-\\u20ff",vUe=mUe+gUe+yUe,xUe="\\ufe0e\\ufe0f",bUe="["+eue+"]",cI="["+vUe+"]",uI="\\ud83c[\\udffb-\\udfff]",TUe="(?:"+cI+"|"+uI+")",tue="[^"+eue+"]",rue="(?:\\ud83c[\\udde6-\\uddff]){2}",nue="[\\ud800-\\udbff][\\udc00-\\udfff]",wUe="\\u200d",iue=TUe+"?",aue="["+xUe+"]?",kUe="(?:"+wUe+"(?:"+[tue,rue,nue].join("|")+")"+aue+iue+")*",SUe=aue+iue+kUe,EUe="(?:"+[tue+cI+"?",cI,rue,nue,bUe].join("|")+")",Jce=RegExp(uI+"(?="+uI+")|"+EUe+SUe,"g");o(CUe,"unicodeSize");sue=CUe});function AUe(t){return voe(t)?sue(t):Qce(t)}var lue,cue=I(()=>{"use strict";Zce();xoe();oue();o(AUe,"stringSize");lue=AUe});function _Ue(t,e){return QS(t,e,function(r,n){return BS(t,n)})}var uue,hue=I(()=>{"use strict";lI();XM();o(_Ue,"basePick");uue=_Ue});var DUe,S0,fue=I(()=>{"use strict";hue();yoe();DUe=goe(function(t,e){return t==null?{}:uue(t,e)}),S0=DUe});function NUe(t,e,r,n){for(var i=-1,a=LUe(RUe((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}var RUe,LUe,due,pue=I(()=>{"use strict";RUe=Math.ceil,LUe=Math.max;o(NUe,"baseRange");due=NUe});function MUe(t){return function(e,r,n){return n&&typeof n!="number"&&Po(e,r,n)&&(r=n=void 0),e=u1(e),r===void 0?(r=e,e=0):r=u1(r),n=n===void 0?e{"use strict";pue();l0();CM();o(MUe,"createRange");mue=MUe});var IUe,Tl,yue=I(()=>{"use strict";gue();IUe=mue(),Tl=IUe});function OUe(t,e,r,n,i){return i(t,function(a,s,l){r=n?(n=!1,a):e(r,a,s,l)}),r}var vue,xue=I(()=>{"use strict";o(OUe,"baseReduce");vue=OUe});function PUe(t,e,r){var n=zt(t)?boe:vue,i=arguments.length<3;return n(t,An(e,4),r,i,lo)}var un,hI=I(()=>{"use strict";Toe();ed();_s();xue();ni();o(PUe,"reduce");un=PUe});function BUe(t,e){var r=zt(t)?v1:US;return r(t,Fce(An(e,3)))}var nd,bue=I(()=>{"use strict";gS();ZM();_s();ni();$ce();o(BUe,"reject");nd=BUe});function zUe(t){if(t==null)return 0;if(Ci(t))return Mi(t)?lue(t):t.length;var e=$o(t);return e==FUe||e==$Ue?t.size:d1(t).length}var FUe,$Ue,fI,Tue=I(()=>{"use strict";uS();T0();dl();HS();cue();FUe="[object Map]",$Ue="[object Set]";o(zUe,"size");fI=zUe});function GUe(t,e){var r;return lo(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}var wue,kue=I(()=>{"use strict";ed();o(GUe,"baseSome");wue=GUe});function VUe(t,e,r){var n=zt(t)?_S:wue;return r&&Po(t,e,r)&&(e=void 0),n(t,An(e,3))}var ub,Sue=I(()=>{"use strict";VM();_s();kue();ni();l0();o(VUe,"some");ub=VUe});var qUe,du,Eue=I(()=>{"use strict";y1();Kce();t1();l0();qUe=tu(function(t,e){if(t==null)return[];var r=e.length;return r>1&&Po(t,e[0],e[1])?e=[]:r>2&&Po(e[0],e[1],e[2])&&(e=[e[0]]),Xce(t,hu(e,1),[])}),du=qUe});var UUe,WUe,Cue,Aue=I(()=>{"use strict";FM();AM();LS();UUe=1/0,WUe=Jf&&1/w1(new Jf([,-0]))[1]==UUe?function(t){return new Jf(t)}:yi,Cue=WUe});function YUe(t,e,r){var n=-1,i=cS,a=t.length,s=!0,l=[],u=l;if(r)s=!1,i=GS;else if(a>=HUe){var h=e?null:Cue(t);if(h)return w1(h);s=!1,i=T1,u=new b1}else u=e?[]:l;e:for(;++n{"use strict";AS();RM();QM();DS();Aue();LS();HUe=200;o(YUe,"baseUniq");A1=YUe});var jUe,dI,_ue=I(()=>{"use strict";y1();t1();ZS();ok();jUe=tu(function(t){return A1(hu(t,1,a0,!0))}),dI=jUe});function XUe(t){return t&&t.length?A1(t):[]}var _1,Due=I(()=>{"use strict";ZS();o(XUe,"uniq");_1=XUe});function KUe(t,e){return t&&t.length?A1(t,An(e,2)):[]}var Rue,Lue=I(()=>{"use strict";_s();ZS();o(KUe,"uniqBy");Rue=KUe});function ZUe(t){var e=++QUe;return fS(t)+e}var QUe,E0,Nue=I(()=>{"use strict";LM();QUe=0;o(ZUe,"uniqueId");E0=ZUe});function JUe(t,e,r){for(var n=-1,i=t.length,a=e.length,s={};++n{"use strict";o(JUe,"baseZipObject");Mue=JUe});function eWe(t,e){return Mue(t||[],e||[],eu)}var JS,Oue=I(()=>{"use strict";e1();Iue();o(eWe,"zipObject");JS=eWe});var Kt=I(()=>{"use strict";aoe();zM();cle();ule();oN();Zle();tce();nce();ice();ace();uce();JM();mce();yce();tI();pS();qS();vce();xce();bce();Ece();bh();_ce();Dce();ni();jS();_x();Oo();Mce();HS();Ice();cu();rce();E1();Oce();Pce();uN();oI();Bce();AM();Kle();fue();Vce();yue();hI();bue();Tue();Sue();Eue();_ue();Due();Nue();aI();Oue();});function Bue(t,e){t[e]?t[e]++:t[e]=1}function Fue(t,e){--t[e]||delete t[e]}function hb(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+Pue+a+Pue+(Er(n)?tWe:n)}function rWe(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function pI(t,e){return hb(t,e.v,e.w,e.name)}var tWe,C0,Pue,vn,eE=I(()=>{"use strict";Kt();tWe="\0",C0="\0",Pue="",vn=class{static{o(this,"Graph")}constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=eo(void 0),this._defaultEdgeLabelFn=eo(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[C0]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return $i(e)||(e=eo(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return en(this._nodes)}sources(){var e=this;return cn(this.nodes(),function(r){return Tr(e._in[r])})}sinks(){var e=this;return cn(this.nodes(),function(r){return Tr(e._out[r])})}setNodes(e,r){var n=arguments,i=this;return Re(e,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=C0,this._children[e]={},this._children[C0][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var r=o(n=>this.removeEdge(this._edgeObjs[n]),"removeEdge");delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],Re(this.children(e),n=>{this.setParent(n)}),delete this._children[e]),Re(en(this._in[e]),r),delete this._in[e],delete this._preds[e],Re(en(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Er(r))r=C0;else{r+="";for(var n=r;!Er(n);n=this.parent(n))if(n===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==C0)return r}}children(e){if(Er(e)&&(e=C0),this._isCompound){var r=this._children[e];if(r)return en(r)}else{if(e===C0)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return en(r)}successors(e){var r=this._sucs[e];if(r)return en(r)}neighbors(e){var r=this.predecessors(e);if(r)return dI(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Re(this._nodes,function(s,l){e(l)&&r.setNode(l,s)}),Re(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var l=n.parent(s);return l===void 0||r.hasNode(l)?(i[s]=l,l):l in i?i[l]:a(l)}return o(a,"findParent"),this._isCompound&&Re(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return $i(e)||(e=eo(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return Rr(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return un(e,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var e,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(e=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,Er(n)||(n=""+n);var l=hb(this._isDirected,e,r,n);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!Er(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(e,r,n);var u=rWe(this._isDirected,e,r,n);return e=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,Bue(this._preds[r],e),Bue(this._sucs[e],r),this._in[r][l]=u,this._out[e][l]=u,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?pI(this._isDirected,arguments[0]):hb(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?pI(this._isDirected,arguments[0]):hb(this._isDirected,e,r,n);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?pI(this._isDirected,arguments[0]):hb(this._isDirected,e,r,n),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],Fue(this._preds[r],e),Fue(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var n=this._in[e];if(n){var i=Rr(n);return r?cn(i,function(a){return a.v===r}):i}}outEdges(e,r){var n=this._out[e];if(n){var i=Rr(n);return r?cn(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}};vn.prototype._nodeCount=0;vn.prototype._edgeCount=0;o(Bue,"incrementOrInitEntry");o(Fue,"decrementOrRemoveEntry");o(hb,"edgeArgsToId");o(rWe,"edgeArgsToObj");o(pI,"edgeObjToId")});var wl=I(()=>{"use strict";eE()});function $ue(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function nWe(t,e){if(t!=="_next"&&t!=="_prev")return e}var rE,zue=I(()=>{"use strict";rE=class{static{o(this,"List")}constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return $ue(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&$ue(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,n=r._prev;n!==r;)e.push(JSON.stringify(n,nWe)),n=n._prev;return"["+e.join(", ")+"]"}};o($ue,"unlink");o(nWe,"filterOutLinks")});function Gue(t,e){if(t.nodeCount()<=1)return[];var r=sWe(t,e||iWe),n=aWe(r.graph,r.buckets,r.zeroIdx);return ln(it(n,function(i){return t.outEdges(i.v,i.w)}))}function aWe(t,e,r){for(var n=[],i=e[e.length-1],a=e[0],s;t.nodeCount();){for(;s=a.dequeue();)mI(t,e,r,s);for(;s=i.dequeue();)mI(t,e,r,s);if(t.nodeCount()){for(var l=e.length-2;l>0;--l)if(s=e[l].dequeue(),s){n=n.concat(mI(t,e,r,s,!0));break}}}return n}function mI(t,e,r,n,i){var a=i?[]:void 0;return Re(t.inEdges(n.v),function(s){var l=t.edge(s),u=t.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,gI(e,r,u)}),Re(t.outEdges(n.v),function(s){var l=t.edge(s),u=s.w,h=t.node(u);h.in-=l,gI(e,r,h)}),t.removeNode(n.v),a}function sWe(t,e){var r=new vn,n=0,i=0;Re(t.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Re(t.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=e(l),f=u+h;r.setEdge(l.v,l.w,f),i=Math.max(i,r.node(l.v).out+=h),n=Math.max(n,r.node(l.w).in+=h)});var a=Tl(i+n+3).map(function(){return new rE}),s=n+1;return Re(r.nodes(),function(l){gI(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function gI(t,e,r){r.out?r.in?t[r.out-r.in+e].enqueue(r):t[t.length-1].enqueue(r):t[0].enqueue(r)}var iWe,Vue=I(()=>{"use strict";Kt();wl();zue();iWe=eo(1);o(Gue,"greedyFAS");o(aWe,"doGreedyFAS");o(mI,"removeNode");o(sWe,"buildState");o(gI,"assignBucket")});function que(t){var e=t.graph().acyclicer==="greedy"?Gue(t,r(t)):oWe(t);Re(e,function(n){var i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,E0("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function oWe(t){var e=[],r={},n={};function i(a){Object.prototype.hasOwnProperty.call(n,a)||(n[a]=!0,r[a]=!0,Re(t.outEdges(a),function(s){Object.prototype.hasOwnProperty.call(r,s.w)?e.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Re(t.nodes(),i),e}function Uue(t){Re(t.edges(),function(e){var r=t.edge(e);if(r.reversed){t.removeEdge(e);var n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}var yI=I(()=>{"use strict";Kt();Vue();o(que,"run");o(oWe,"dfsFAS");o(Uue,"undo")});function pu(t,e,r,n){var i;do i=E0(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function Hue(t){var e=new vn().setGraph(t.graph());return Re(t.nodes(),function(r){e.setNode(r,t.node(r))}),Re(t.edges(),function(r){var n=e.edge(r.v,r.w)||{weight:0,minlen:1},i=t.edge(r);e.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),e}function nE(t){var e=new vn({multigraph:t.isMultigraph()}).setGraph(t.graph());return Re(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),Re(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function vI(t,e){var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=l*i/a,h=l):(i<0&&(s=-s),u=s,h=s*a/i),{x:r+u,y:n+h}}function id(t){var e=it(Tl(bI(t)+1),function(){return[]});return Re(t.nodes(),function(r){var n=t.node(r),i=n.rank;Er(i)||(e[i][n.order]=r)}),e}function Yue(t){var e=uc(it(t.nodes(),function(r){return t.node(r).rank}));Re(t.nodes(),function(r){var n=t.node(r);Gt(n,"rank")&&(n.rank-=e)})}function jue(t){var e=uc(it(t.nodes(),function(a){return t.node(a).rank})),r=[];Re(t.nodes(),function(a){var s=t.node(a).rank-e;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=t.graph().nodeRankFactor;Re(r,function(a,s){Er(a)&&s%i!==0?--n:n&&Re(a,function(l){t.node(l).rank+=n})})}function xI(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),pu(t,"border",i,e)}function bI(t){return co(it(t.nodes(),function(e){var r=t.node(e).rank;if(!Er(r))return r}))}function Xue(t,e){var r={lhs:[],rhs:[]};return Re(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function Kue(t,e){var r=zS();try{return e()}finally{console.log(t+" time: "+(zS()-r)+"ms")}}function Que(t,e){return e()}var mu=I(()=>{"use strict";Kt();wl();o(pu,"addDummyNode");o(Hue,"simplify");o(nE,"asNonCompoundGraph");o(vI,"intersectRect");o(id,"buildLayerMatrix");o(Yue,"normalizeRanks");o(jue,"removeEmptyRanks");o(xI,"addBorderNode");o(bI,"maxRank");o(Xue,"partition");o(Kue,"time");o(Que,"notime")});function Jue(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&Re(n,e),Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a{"use strict";Kt();mu();o(Jue,"addBorderSegments");o(Zue,"addBorderNode")});function rhe(t){var e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&ihe(t)}function nhe(t){var e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&lWe(t),(e==="lr"||e==="rl")&&(cWe(t),ihe(t))}function ihe(t){Re(t.nodes(),function(e){the(t.node(e))}),Re(t.edges(),function(e){the(t.edge(e))})}function the(t){var e=t.width;t.width=t.height,t.height=e}function lWe(t){Re(t.nodes(),function(e){TI(t.node(e))}),Re(t.edges(),function(e){var r=t.edge(e);Re(r.points,TI),Object.prototype.hasOwnProperty.call(r,"y")&&TI(r)})}function TI(t){t.y=-t.y}function cWe(t){Re(t.nodes(),function(e){wI(t.node(e))}),Re(t.edges(),function(e){var r=t.edge(e);Re(r.points,wI),Object.prototype.hasOwnProperty.call(r,"x")&&wI(r)})}function wI(t){var e=t.x;t.x=t.y,t.y=e}var ahe=I(()=>{"use strict";Kt();o(rhe,"adjust");o(nhe,"undo");o(ihe,"swapWidthHeight");o(the,"swapWidthHeightOne");o(lWe,"reverseY");o(TI,"reverseYOne");o(cWe,"swapXY");o(wI,"swapXYOne")});function she(t){t.graph().dummyChains=[],Re(t.edges(),function(e){hWe(t,e)})}function hWe(t,e){var r=e.v,n=t.node(r).rank,i=e.w,a=t.node(i).rank,s=e.name,l=t.edge(e),u=l.labelRank;if(a!==n+1){t.removeEdge(e);var h=void 0,f,d;for(d=0,++n;n{"use strict";Kt();mu();o(she,"run");o(hWe,"normalizeEdge");o(ohe,"undo")});function fb(t){var e={};function r(n){var i=t.node(n);if(Object.prototype.hasOwnProperty.call(e,n))return i.rank;e[n]=!0;var a=uc(it(t.outEdges(n),function(s){return r(s.w)-t.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Re(t.sources(),r)}function A0(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var iE=I(()=>{"use strict";Kt();o(fb,"longestPath");o(A0,"slack")});function aE(t){var e=new vn({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;fWe(e,t){"use strict";Kt();wl();iE();o(aE,"feasibleTree");o(fWe,"tightTree");o(dWe,"findMinSlackEdge");o(pWe,"shiftRanks")});var che=I(()=>{"use strict"});var EI=I(()=>{"use strict"});var fnr,CI=I(()=>{"use strict";Kt();EI();fnr=eo(1)});var uhe=I(()=>{"use strict";CI()});var AI=I(()=>{"use strict"});var hhe=I(()=>{"use strict";AI()});var knr,fhe=I(()=>{"use strict";Kt();knr=eo(1)});function _I(t){var e={},r={},n=[];function i(a){if(Object.prototype.hasOwnProperty.call(r,a))throw new db;Object.prototype.hasOwnProperty.call(e,a)||(r[a]=!0,e[a]=!0,Re(t.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Re(t.sinks(),i),fI(e)!==t.nodeCount())throw new db;return n}function db(){}var DI=I(()=>{"use strict";Kt();_I.CycleException=db;o(_I,"topsort");o(db,"CycleException");db.prototype=new Error});var dhe=I(()=>{"use strict";DI()});function sE(t,e,r){zt(e)||(e=[e]);var n=(t.isDirected()?t.successors:t.neighbors).bind(t),i=[],a={};return Re(e,function(s){if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);phe(t,s,r==="post",a,n,i)}),i}function phe(t,e,r,n,i,a){Object.prototype.hasOwnProperty.call(n,e)||(n[e]=!0,r||a.push(e),Re(i(e),function(s){phe(t,s,r,n,i,a)}),r&&a.push(e))}var RI=I(()=>{"use strict";Kt();o(sE,"dfs");o(phe,"doDfs")});function LI(t,e){return sE(t,e,"post")}var mhe=I(()=>{"use strict";RI();o(LI,"postorder")});function NI(t,e){return sE(t,e,"pre")}var ghe=I(()=>{"use strict";RI();o(NI,"preorder")});var yhe=I(()=>{"use strict";EI();eE()});var vhe=I(()=>{"use strict";che();CI();uhe();hhe();fhe();dhe();mhe();ghe();yhe();AI();DI()});function sd(t){t=Hue(t),fb(t);var e=aE(t);II(e),MI(e,t);for(var r,n;r=whe(e);)n=khe(e,t,r),She(e,t,r,n)}function MI(t,e){var r=LI(t,t.nodes());r=r.slice(0,r.length-1),Re(r,function(n){xWe(t,e,n)})}function xWe(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=bhe(t,e,r)}function bhe(t,e,r){var n=t.node(r),i=n.parent,a=!0,s=e.edge(r,i),l=0;return s||(a=!1,s=e.edge(i,r)),l=s.weight,Re(e.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=e.edge(u).weight;if(l+=d?p:-p,TWe(t,r,f)){var m=t.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function II(t,e){arguments.length<2&&(e=t.nodes()[0]),The(t,{},1,e)}function The(t,e,r,n,i){var a=r,s=t.node(n);return e[n]=!0,Re(t.neighbors(n),function(l){Object.prototype.hasOwnProperty.call(e,l)||(r=The(t,e,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function whe(t){return Ds(t.edges(),function(e){return t.edge(e).cutvalue<0})}function khe(t,e,r){var n=r.v,i=r.w;e.hasEdge(n,i)||(n=r.w,i=r.v);var a=t.node(n),s=t.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=cn(e.edges(),function(f){return u===xhe(t,t.node(f.v),l)&&u!==xhe(t,t.node(f.w),l)});return k0(h,function(f){return A0(e,f)})}function She(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),II(t),MI(t,e),bWe(t,e)}function bWe(t,e){var r=Ds(t.nodes(),function(i){return!e.node(i).parent}),n=NI(t,r);n=n.slice(1),Re(n,function(i){var a=t.node(i).parent,s=e.edge(i,a),l=!1;s||(s=e.edge(a,i),l=!0),e.node(i).rank=e.node(a).rank+(l?s.minlen:-s.minlen)})}function TWe(t,e,r){return t.hasEdge(e,r)}function xhe(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}var Ehe=I(()=>{"use strict";Kt();vhe();mu();SI();iE();sd.initLowLimValues=II;sd.initCutValues=MI;sd.calcCutValue=bhe;sd.leaveEdge=whe;sd.enterEdge=khe;sd.exchangeEdges=She;o(sd,"networkSimplex");o(MI,"initCutValues");o(xWe,"assignCutValue");o(bhe,"calcCutValue");o(II,"initLowLimValues");o(The,"dfsAssignLowLim");o(whe,"leaveEdge");o(khe,"enterEdge");o(She,"exchangeEdges");o(bWe,"updateRanks");o(TWe,"isTreeEdge");o(xhe,"isDescendant")});function OI(t){switch(t.graph().ranker){case"network-simplex":Che(t);break;case"tight-tree":kWe(t);break;case"longest-path":wWe(t);break;default:Che(t)}}function kWe(t){fb(t),aE(t)}function Che(t){sd(t)}var wWe,PI=I(()=>{"use strict";SI();Ehe();iE();o(OI,"rank");wWe=fb;o(kWe,"tightTreeRanker");o(Che,"networkSimplexRanker")});function Ahe(t){var e=pu(t,"root",{},"_root"),r=SWe(t),n=co(Rr(r))-1,i=2*n+1;t.graph().nestingRoot=e,Re(t.edges(),function(s){t.edge(s).minlen*=i});var a=EWe(t)+1;Re(t.children(),function(s){_he(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function _he(t,e,r,n,i,a,s){var l=t.children(s);if(!l.length){s!==e&&t.setEdge(e,s,{weight:0,minlen:r});return}var u=xI(t,"_bt"),h=xI(t,"_bb"),f=t.node(s);t.setParent(u,s),f.borderTop=u,t.setParent(h,s),f.borderBottom=h,Re(l,function(d){_he(t,e,r,n,i,a,d);var p=t.node(d),m=p.borderTop?p.borderTop:d,g=p.borderBottom?p.borderBottom:d,y=p.borderTop?n:2*n,v=m!==g?1:i-a[s]+1;t.setEdge(u,m,{weight:y,minlen:v,nestingEdge:!0}),t.setEdge(g,h,{weight:y,minlen:v,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,u,{weight:0,minlen:i+a[s]})}function SWe(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&Re(a,function(s){r(s,i+1)}),e[n]=i}return o(r,"dfs"),Re(t.children(),function(n){r(n,1)}),e}function EWe(t){return un(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function Dhe(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,Re(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}var Rhe=I(()=>{"use strict";Kt();mu();o(Ahe,"run");o(_he,"dfs");o(SWe,"treeDepths");o(EWe,"sumWeights");o(Dhe,"cleanup")});function Lhe(t,e,r){var n={},i;Re(r,function(a){for(var s=t.parent(a),l,u;s;){if(l=t.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){e.setEdge(u,s);return}s=l}})}var Nhe=I(()=>{"use strict";Kt();o(Lhe,"addSubgraphConstraints")});function Mhe(t,e,r){var n=AWe(t),i=new vn({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return Re(t.nodes(),function(a){var s=t.node(a),l=t.parent(a);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Re(t[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=Er(f)?0:f.weight;i.setEdge(h,a,{weight:t.edge(u).weight+d})}),Object.prototype.hasOwnProperty.call(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),i}function AWe(t){for(var e;t.hasNode(e=E0("_root")););return e}var Ihe=I(()=>{"use strict";Kt();wl();o(Mhe,"buildLayerGraph");o(AWe,"createRootNode")});function Ohe(t,e){for(var r=0,n=1;n0;)f%2&&(d+=l[f+1]),f=f-1>>1,l[f]+=h.weight;u+=h.weight*d})),u}var Phe=I(()=>{"use strict";Kt();o(Ohe,"crossCount");o(_We,"twoLayerCrossCount")});function Bhe(t){var e={},r=cn(t.nodes(),function(l){return!t.children(l).length}),n=co(it(r,function(l){return t.node(l).rank})),i=it(Tl(n+1),function(){return[]});function a(l){if(!Gt(e,l)){e[l]=!0;var u=t.node(l);i[u.rank].push(l),Re(t.successors(l),a)}}o(a,"dfs");var s=du(r,function(l){return t.node(l).rank});return Re(s,a),i}var Fhe=I(()=>{"use strict";Kt();o(Bhe,"initOrder")});function $he(t,e){return it(e,function(r){var n=t.inEdges(r);if(n.length){var i=un(n,function(a,s){var l=t.edge(s),u=t.node(s.v);return{sum:a.sum+l.weight*u.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}var zhe=I(()=>{"use strict";Kt();o($he,"barycenter")});function Ghe(t,e){var r={};Re(t,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};Er(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Re(e.edges(),function(i){var a=r[i.v],s=r[i.w];!Er(a)&&!Er(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=cn(r,function(i){return!i.indegree});return DWe(n)}function DWe(t){var e=[];function r(a){return function(s){s.merged||(Er(s.barycenter)||Er(a.barycenter)||s.barycenter>=a.barycenter)&&RWe(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&t.push(s)}}for(o(n,"handleOut");t.length;){var i=t.pop();e.push(i),Re(i.in.reverse(),r(i)),Re(i.out,n(i))}return it(cn(e,function(a){return!a.merged}),function(a){return S0(a,["vs","i","barycenter","weight"])})}function RWe(t,e){var r=0,n=0;t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=r/n,t.weight=n,t.i=Math.min(e.i,t.i),e.merged=!0}var Vhe=I(()=>{"use strict";Kt();o(Ghe,"resolveConflicts");o(DWe,"doResolveConflicts");o(RWe,"mergeEntries")});function Uhe(t,e){var r=Xue(t,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),n=r.lhs,i=du(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(LWe(!!e)),u=qhe(a,i,u),Re(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=qhe(a,i,u)});var h={vs:ln(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function qhe(t,e,r){for(var n;e.length&&(n=ya(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function LWe(t){return function(e,r){return e.barycenterr.barycenter?1:t?r.i-e.i:e.i-r.i}}var Whe=I(()=>{"use strict";Kt();mu();o(Uhe,"sort");o(qhe,"consumeUnsortable");o(LWe,"compareWithBias")});function BI(t,e,r,n){var i=t.children(e),a=t.node(e),s=a?a.borderLeft:void 0,l=a?a.borderRight:void 0,u={};s&&(i=cn(i,function(g){return g!==s&&g!==l}));var h=$he(t,i);Re(h,function(g){if(t.children(g.v).length){var y=BI(t,g.v,r,n);u[g.v]=y,Object.prototype.hasOwnProperty.call(y,"barycenter")&&MWe(g,y)}});var f=Ghe(h,r);NWe(f,u);var d=Uhe(f,n);if(s&&(d.vs=ln([s,d.vs,l]),t.predecessors(s).length)){var p=t.node(t.predecessors(s)[0]),m=t.node(t.predecessors(l)[0]);Object.prototype.hasOwnProperty.call(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function NWe(t,e){Re(t,function(r){r.vs=ln(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function MWe(t,e){Er(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}var Hhe=I(()=>{"use strict";Kt();zhe();Vhe();Whe();o(BI,"sortSubgraph");o(NWe,"expandSubgraphs");o(MWe,"mergeBarycenters")});function Xhe(t){var e=bI(t),r=Yhe(t,Tl(1,e+1),"inEdges"),n=Yhe(t,Tl(e-1,-1,-1),"outEdges"),i=Bhe(t);jhe(t,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){IWe(l%2?r:n,l%4>=2),i=id(t);var h=Ohe(t,i);h{"use strict";Kt();wl();mu();Nhe();Ihe();Phe();Fhe();Hhe();o(Xhe,"order");o(Yhe,"buildLayerGraphs");o(IWe,"sweepLayerGraphs");o(jhe,"assignOrder")});function Qhe(t){var e=PWe(t);Re(t.graph().dummyChains,function(r){for(var n=t.node(r),i=n.edgeObj,a=OWe(t,e,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=t.node(r),f){for(;(h=s[u])!==l&&t.node(h).maxRanks||l>e[u].lim));for(h=u,u=n;(u=t.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function PWe(t){var e={},r=0;function n(i){var a=r;Re(t.children(i),n),e[i]={low:a,lim:r++}}return o(n,"dfs"),Re(t.children(),n),e}var Zhe=I(()=>{"use strict";Kt();o(Qhe,"parentDummyChains");o(OWe,"findPath");o(PWe,"postorder")});function BWe(t,e){var r={};function n(i,a){var s=0,l=0,u=i.length,h=ya(a);return Re(a,function(f,d){var p=$We(t,f),m=p?t.node(p).order:u;(p||f===h)&&(Re(a.slice(l,d+1),function(g){Re(t.predecessors(g),function(y){var v=t.node(y),x=v.order;(xh)&&Jhe(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Re(s,function(f,d){if(t.node(f).dummy==="border"){var p=t.predecessors(f);p.length&&(u=t.node(p[0]).order,n(s,h,d,l,u),h=d,l=u)}n(s,h,s.length,u,a.length)}),s}return o(i,"visitLayer"),un(e,i),r}function $We(t,e){if(t.node(e).dummy)return Ds(t.predecessors(e),function(r){return t.node(r).dummy})}function Jhe(t,e,r){if(e>r){var n=e;e=r,r=n}Object.prototype.hasOwnProperty.call(t,e)||Object.defineProperty(t,e,{enumerable:!0,configurable:!0,value:{},writable:!0});var i=t[e];Object.defineProperty(i,r,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function zWe(t,e,r){if(e>r){var n=e;e=r,r=n}return!!t[e]&&Object.prototype.hasOwnProperty.call(t[e],r)}function GWe(t,e,r,n){var i={},a={},s={};return Re(e,function(l){Re(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Re(e,function(l){var u=-1;Re(l,function(h){var f=n(h);if(f.length){f=du(f,function(y){return s[y]});for(var d=(f.length-1)/2,p=Math.floor(d),m=Math.ceil(d);p<=m;++p){var g=f[p];a[h]===h&&u{"use strict";Kt();wl();mu();o(BWe,"findType1Conflicts");o(FWe,"findType2Conflicts");o($We,"findOtherInnerSegmentNode");o(Jhe,"addConflict");o(zWe,"hasConflict");o(GWe,"verticalAlignment");o(VWe,"horizontalCompaction");o(qWe,"buildBlockGraph");o(UWe,"findSmallestWidthAlignment");o(WWe,"alignCoordinates");o(HWe,"balance");o(efe,"positionX");o(YWe,"sep");o(jWe,"width")});function rfe(t){t=nE(t),XWe(t),nI(efe(t),function(e,r){t.node(r).x=e})}function XWe(t){var e=id(t),r=t.graph().ranksep,n=0;Re(e,function(i){var a=co(it(i,function(s){return t.node(s).height}));Re(i,function(s){t.node(s).y=n+a/2}),n+=a+r})}var nfe=I(()=>{"use strict";Kt();mu();tfe();o(rfe,"position");o(XWe,"positionY")});function pb(t,e){var r=e&&e.debugTiming?Kue:Que;r("layout",()=>{var n=r(" buildLayoutGraph",()=>sHe(t));r(" runLayout",()=>KWe(n,r)),r(" updateInputGraph",()=>QWe(t,n))})}function KWe(t,e){e(" makeSpaceForEdgeLabels",()=>oHe(t)),e(" removeSelfEdges",()=>gHe(t)),e(" acyclic",()=>que(t)),e(" nestingGraph.run",()=>Ahe(t)),e(" rank",()=>OI(nE(t))),e(" injectEdgeLabelProxies",()=>lHe(t)),e(" removeEmptyRanks",()=>jue(t)),e(" nestingGraph.cleanup",()=>Dhe(t)),e(" normalizeRanks",()=>Yue(t)),e(" assignRankMinMax",()=>cHe(t)),e(" removeEdgeLabelProxies",()=>uHe(t)),e(" normalize.run",()=>she(t)),e(" parentDummyChains",()=>Qhe(t)),e(" addBorderSegments",()=>Jue(t)),e(" order",()=>Xhe(t)),e(" insertSelfEdges",()=>yHe(t)),e(" adjustCoordinateSystem",()=>rhe(t)),e(" position",()=>rfe(t)),e(" positionSelfEdges",()=>vHe(t)),e(" removeBorderNodes",()=>mHe(t)),e(" normalize.undo",()=>ohe(t)),e(" fixupEdgeLabelCoords",()=>dHe(t)),e(" undoCoordinateSystem",()=>nhe(t)),e(" translateGraph",()=>hHe(t)),e(" assignNodeIntersects",()=>fHe(t)),e(" reversePoints",()=>pHe(t)),e(" acyclic.undo",()=>Uue(t))}function QWe(t,e){Re(t.nodes(),function(r){var n=t.node(r),i=e.node(r);n&&(n.x=i.x,n.y=i.y,e.children(r).length&&(n.width=i.width,n.height=i.height))}),Re(t.edges(),function(r){var n=t.edge(r),i=e.edge(r);n.points=i.points,Object.prototype.hasOwnProperty.call(i,"x")&&(n.x=i.x,n.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function sHe(t){var e=new vn({multigraph:!0,compound:!0}),r=$I(t.graph());return e.setGraph(Gf({},JWe,FI(r,ZWe),S0(r,eHe))),Re(t.nodes(),function(n){var i=$I(t.node(n));e.setNode(n,td(FI(i,tHe),rHe)),e.setParent(n,t.parent(n))}),Re(t.edges(),function(n){var i=$I(t.edge(n));e.setEdge(n,Gf({},iHe,FI(i,nHe),S0(i,aHe)))}),e}function oHe(t){var e=t.graph();e.ranksep/=2,Re(t.edges(),function(r){var n=t.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function lHe(t){Re(t.edges(),function(e){var r=t.edge(e);if(r.width&&r.height){var n=t.node(e.v),i=t.node(e.w),a={rank:(i.rank-n.rank)/2+n.rank,e};pu(t,"edge-proxy",a,"_ep")}})}function cHe(t){var e=0;Re(t.nodes(),function(r){var n=t.node(r);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,e=co(e,n.maxRank))}),t.graph().maxRank=e}function uHe(t){Re(t.nodes(),function(e){var r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function hHe(t){var e=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=t.graph(),s=a.marginx||0,l=a.marginy||0;function u(h){var f=h.x,d=h.y,p=h.width,m=h.height;e=Math.min(e,f-p/2),r=Math.max(r,f+p/2),n=Math.min(n,d-m/2),i=Math.max(i,d+m/2)}o(u,"getExtremes"),Re(t.nodes(),function(h){u(t.node(h))}),Re(t.edges(),function(h){var f=t.edge(h);Object.prototype.hasOwnProperty.call(f,"x")&&u(f)}),e-=s,n-=l,Re(t.nodes(),function(h){var f=t.node(h);f.x-=e,f.y-=n}),Re(t.edges(),function(h){var f=t.edge(h);Re(f.points,function(d){d.x-=e,d.y-=n}),Object.prototype.hasOwnProperty.call(f,"x")&&(f.x-=e),Object.prototype.hasOwnProperty.call(f,"y")&&(f.y-=n)}),a.width=r-e+s,a.height=i-n+l}function fHe(t){Re(t.edges(),function(e){var r=t.edge(e),n=t.node(e.v),i=t.node(e.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=i,s=n),r.points.unshift(vI(n,a)),r.points.push(vI(i,s))})}function dHe(t){Re(t.edges(),function(e){var r=t.edge(e);if(Object.prototype.hasOwnProperty.call(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function pHe(t){Re(t.edges(),function(e){var r=t.edge(e);r.reversed&&r.points.reverse()})}function mHe(t){Re(t.nodes(),function(e){if(t.children(e).length){var r=t.node(e),n=t.node(r.borderTop),i=t.node(r.borderBottom),a=t.node(ya(r.borderLeft)),s=t.node(ya(r.borderRight));r.width=Math.abs(s.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),Re(t.nodes(),function(e){t.node(e).dummy==="border"&&t.removeNode(e)})}function gHe(t){Re(t.edges(),function(e){if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function yHe(t){var e=id(t);Re(e,function(r){var n=0;Re(r,function(i,a){var s=t.node(i);s.order=a+n,Re(s.selfEdges,function(l){pu(t,"selfedge",{width:l.label.width,height:l.label.height,rank:s.rank,order:a+ ++n,e:l.e,label:l.label},"_se")}),delete s.selfEdges})})}function vHe(t){Re(t.nodes(),function(e){var r=t.node(e);if(r.dummy==="selfedge"){var n=t.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:i+2*s/3,y:a-l},{x:i+5*s/6,y:a-l},{x:i+s,y:a},{x:i+5*s/6,y:a+l},{x:i+2*s/3,y:a+l}],r.label.x=r.x,r.label.y=r.y}})}function FI(t,e){return w0(S0(t,e),Number)}function $I(t){var e={};return Re(t,function(r,n){e[n.toLowerCase()]=r}),e}var ZWe,JWe,eHe,tHe,rHe,nHe,iHe,aHe,ife=I(()=>{"use strict";Kt();wl();ehe();ahe();yI();kI();PI();Rhe();Khe();Zhe();nfe();mu();o(pb,"layout");o(KWe,"runLayout");o(QWe,"updateInputGraph");ZWe=["nodesep","edgesep","ranksep","marginx","marginy"],JWe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},eHe=["acyclicer","ranker","rankdir","align"],tHe=["width","height"],rHe={width:0,height:0},nHe=["minlen","weight","width","height","labeloffset"],iHe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},aHe=["labelpos"];o(sHe,"buildLayoutGraph");o(oHe,"makeSpaceForEdgeLabels");o(lHe,"injectEdgeLabelProxies");o(cHe,"assignRankMinMax");o(uHe,"removeEdgeLabelProxies");o(hHe,"translateGraph");o(fHe,"assignNodeIntersects");o(dHe,"fixupEdgeLabelCoords");o(pHe,"reversePointsForReversedEdges");o(mHe,"removeBorderNodes");o(gHe,"removeSelfEdges");o(yHe,"insertSelfEdges");o(vHe,"positionSelfEdges");o(FI,"selectNumberAttrs");o($I,"canonicalize")});var zI=I(()=>{"use strict";yI();ife();kI();PI()});function kl(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:xHe(t),edges:bHe(t)};return Er(t.graph())||(e.value=yn(t.graph())),e}function xHe(t){return it(t.nodes(),function(e){var r=t.node(e),n=t.parent(e),i={v:e};return Er(r)||(i.value=r),Er(n)||(i.parent=n),i})}function bHe(t){return it(t.edges(),function(e){var r=t.edge(e),n={v:e.v,w:e.w};return Er(e.name)||(n.name=e.name),Er(r)||(n.value=r),n})}var GI=I(()=>{"use strict";Kt();eE();o(kl,"write");o(xHe,"writeNodes");o(bHe,"writeEdges")});var Lr,_0,ofe,lfe,oE,THe,cfe,ufe,wHe,D1,sfe,hfe,ffe,dfe,pfe,mfe=I(()=>{"use strict";gt();wl();GI();Lr=new Map,_0=new Map,ofe=new Map,lfe=o(()=>{_0.clear(),ofe.clear(),Lr.clear()},"clear"),oE=o((t,e)=>{let r=_0.get(e)||[];return X.trace("In isDescendant",e," ",t," = ",r.includes(t)),r.includes(t)},"isDescendant"),THe=o((t,e)=>{let r=_0.get(e)||[];return X.info("Descendants of ",e," is ",r),X.info("Edge is ",t),t.v===e||t.w===e?!1:r?r.includes(t.v)||oE(t.v,e)||oE(t.w,e)||r.includes(t.w):(X.debug("Tilt, ",e,",not in descendants"),!1)},"edgeInCluster"),cfe=o((t,e,r,n)=>{X.warn("Copying children of ",t,"root",n,"data",e.node(t),n);let i=e.children(t)||[];t!==n&&i.push(t),X.warn("Copying (nodes) clusterId",t,"nodes",i),i.forEach(a=>{if(e.children(a).length>0)cfe(a,e,r,n);else{let s=e.node(a);X.info("cp ",a," to ",n," with parent ",t),r.setNode(a,s),n!==e.parent(a)&&(X.warn("Setting parent",a,e.parent(a)),r.setParent(a,e.parent(a))),t!==n&&a!==t?(X.debug("Setting parent",a,t),r.setParent(a,t)):(X.info("In copy ",t,"root",n,"data",e.node(t),n),X.debug("Not Setting parent for node=",a,"cluster!==rootId",t!==n,"node!==clusterId",a!==t));let l=e.edges(a);X.debug("Copying Edges",l),l.forEach(u=>{X.info("Edge",u);let h=e.edge(u.v,u.w,u.name);X.info("Edge data",h,n);try{THe(u,n)?(X.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),X.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):X.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",t)}catch(f){X.error(f)}})}X.debug("Removing node",a),e.removeNode(a)})},"copy"),ufe=o((t,e)=>{let r=e.children(t),n=[...r];for(let i of r)ofe.set(i,t),n=[...n,...ufe(i,e)];return n},"extractDescendants"),wHe=o((t,e,r)=>{let n=t.edges().filter(u=>u.v===e||u.w===e),i=t.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===e?r:u.v,w:u.w===e?e:u.w})),s=i.map(u=>({v:u.v,w:u.w}));return a.filter(u=>s.some(h=>u.v===h.v&&u.w===h.w))},"findCommonEdges"),D1=o((t,e,r)=>{let n=e.children(t);if(X.trace("Searching children of id ",t,n),n.length<1)return t;let i;for(let a of n){let s=D1(a,e,r),l=wHe(e,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),sfe=o(t=>!Lr.has(t)||!Lr.get(t).externalConnections?t:Lr.has(t)?Lr.get(t).id:t,"getAnchorId"),hfe=o((t,e)=>{if(!t||e>10){X.debug("Opting out, no graph ");return}else X.debug("Opting in, graph ");t.nodes().forEach(function(r){t.children(r).length>0&&(X.warn("Cluster identified",r," Replacement id in edges: ",D1(r,t,r)),_0.set(r,ufe(r,t)),Lr.set(r,{id:D1(r,t,r),clusterData:t.node(r)}))}),t.nodes().forEach(function(r){let n=t.children(r),i=t.edges();n.length>0?(X.debug("Cluster identified",r,_0),i.forEach(a=>{let s=oE(a.v,r),l=oE(a.w,r);s^l&&(X.warn("Edge: ",a," leaves cluster ",r),X.warn("Descendants of XXX ",r,": ",_0.get(r)),Lr.get(r).externalConnections=!0)})):X.debug("Not a cluster ",r,_0)});for(let r of Lr.keys()){let n=Lr.get(r).id,i=t.parent(n);i!==r&&Lr.has(i)&&!Lr.get(i).externalConnections&&(Lr.get(r).id=i)}t.edges().forEach(function(r){let n=t.edge(r);X.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),X.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(t.edge(r)));let i=r.v,a=r.w;if(X.warn("Fix XXX",Lr,"ids:",r.v,r.w,"Translating: ",Lr.get(r.v)," --- ",Lr.get(r.w)),Lr.get(r.v)||Lr.get(r.w)){if(X.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=sfe(r.v),a=sfe(r.w),t.removeEdge(r.v,r.w,r.name),i!==r.v){let s=t.parent(i);Lr.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=t.parent(a);Lr.get(s).externalConnections=!0,n.toCluster=r.w}X.warn("Fix Replacing with XXX",i,a,r.name),t.setEdge(i,a,n,r.name)}}),X.warn("Adjusted Graph",kl(t)),ffe(t,0),X.trace(Lr)},"adjustClustersAndEdges"),ffe=o((t,e)=>{if(X.warn("extractor - ",e,kl(t),t.children("D")),e>10){X.error("Bailing out");return}let r=t.nodes(),n=!1;for(let i of r){let a=t.children(i);n=n||a.length>0}if(!n){X.debug("Done, no node has children",t.nodes());return}X.debug("Nodes = ",r,e);for(let i of r)if(X.debug("Extracting node",i,Lr,Lr.has(i)&&!Lr.get(i).externalConnections,!t.parent(i),t.node(i),t.children("D")," Depth ",e),!Lr.has(i))X.debug("Not a cluster",i,e);else if(!Lr.get(i).externalConnections&&t.children(i)&&t.children(i).length>0){X.warn("Cluster without external connections, without a parent and with children",i,e);let s=t.graph().rankdir==="TB"?"LR":"TB";Lr.get(i)?.clusterData?.dir&&(s=Lr.get(i).clusterData.dir,X.warn("Fixing dir",Lr.get(i).clusterData.dir,s));let l=new vn({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});X.warn("Old graph before copy",kl(t)),cfe(i,t,l,i),t.setNode(i,{clusterNode:!0,id:i,clusterData:Lr.get(i).clusterData,label:Lr.get(i).label,graph:l}),X.warn("New graph after copy node: (",i,")",kl(l)),X.debug("Old graph after copy",kl(t))}else X.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!Lr.get(i).externalConnections," no parent: ",!t.parent(i)," children ",t.children(i)&&t.children(i).length>0,t.children("D"),e),X.debug(Lr);r=t.nodes(),X.warn("New list of nodes",r);for(let i of r){let a=t.node(i);X.warn(" Now next level",i,a),a?.clusterNode&&ffe(a.graph,e+1)}},"extractor"),dfe=o((t,e)=>{if(e.length===0)return[];let r=Object.assign([],e);return e.forEach(n=>{let i=t.children(n),a=dfe(t,i);r=[...r,...a]}),r},"sorter"),pfe=o(t=>dfe(t,t.children()),"sortNodesByHierarchy")});var yfe={};vr(yfe,{render:()=>kHe});var gfe,kHe,vfe=I(()=>{"use strict";zI();GI();wl();EM();Bt();mfe();iS();Yk();SM();gt();ab();Qt();gfe=o(async(t,e,r,n,i,a)=>{X.warn("Graph in recursive render:XAX",kl(e),i);let s=e.graph().rankdir;X.trace("Dir in recursive render - dir:",s);let l=t.insert("g").attr("class","root");e.nodes()?X.info("Recursive render XXX",e.nodes()):X.info("No nodes found for",e),e.edges().length>0&&X.info("Recursive edges",e.edge(e.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(e.nodes().map(async function(y){let v=e.node(y);if(i!==void 0){let x=JSON.parse(JSON.stringify(i.clusterData));X.trace(`Setting data for parent cluster XXX Node.id = `,y,` data=`,x.height,` -Parent cluster`,i.height),e.setNode(i.id,x),e.parent(y)||(X.trace("Setting parent",y,i.id),e.setParent(y,i.id,x))}if(X.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),v?.clusterNode){X.info("Cluster identified XBX",y,v.width,e.node(y));let{ranksep:x,nodesep:b}=e.graph();v.graph.setGraph({...v.graph.graph(),ranksep:x+25,nodesep:b});let T=await Noe(d,v.graph,r,n,e.node(y),a),S=T.elem;Qe(v,S),v.diff=T.diff||0,X.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),Qte(S,v)}else e.children(y).length>0?(X.trace("Cluster - the non recursive path XBX",y,v.id,v,v.width,"Graph:",e),X.trace(Wm(v.id,e)),Er.set(v.id,{id:Wm(v.id,e),node:v})):(X.trace("Node - the non recursive path XAX",y,d,e.node(y),s),await Cm(d,e.node(y),{config:a,dir:s}))})),await o(async()=>{let y=e.edges().map(async function(v){let x=e.edge(v.v,v.w,v.name);X.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),X.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(e.edge(v))),X.info("Fix",Er,"ids:",v.v,v.w,"Translating: ",Er.get(v.v),Er.get(v.w)),await gw(f,x)});await Promise.all(y)},"processEdges")(),X.info("Graph before layout:",JSON.stringify(Wo(e))),X.info("############################################# XXX"),X.info("### Layout ### XXX"),X.info("############################################# XXX"),q2(e),X.info("Graph after layout:",JSON.stringify(Wo(e)));let m=0,{subGraphTitleTotalMargin:g}=Pu(a);return await Promise.all(Loe(e).map(async function(y){let v=e.node(y);if(X.info("Position XBX => "+y+": ("+v.x,","+v.y,") width: ",v.width," height: ",v.height),v?.clusterNode)v.y+=g,X.info("A tainted cluster node XBX1",y,v.id,v.width,v.height,v.x,v.y,e.parent(y)),Er.get(v.id).node=v,B2(v);else if(e.children(y).length>0){X.info("A pure cluster node XBX1",y,v.id,v.x,v.y,v.width,v.height,e.parent(y)),v.height+=g,e.node(v.parentId);let x=v?.padding/2||0,b=v?.labelBBox?.height||0,T=b-x||0;X.debug("OffsetY",T,"labelHeight",b,"halfPadding",x),await Sm(u,v),Er.get(v.id).node=v}else{let x=e.node(v.parentId);v.y+=g/2,X.info("A regular node XBX1 - using the padding",v.id,"parent",v.parentId,v.width,v.height,v.x,v.y,"offsetY",v.offsetY,"parent",x,x?.offsetY,v),B2(v)}})),e.edges().forEach(function(y){let v=e.edge(y);X.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(v),v),v.points.forEach(S=>S.y+=g/2);let x=e.node(y.v);var b=e.node(y.w);let T=vw(h,v,Er,r,x,b,n);yw(v,T)}),e.nodes().forEach(function(y){let v=e.node(y);X.info(y,v.type,v.diff),v.isGroup&&(m=v.diff)}),X.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),v$e=o(async(t,e)=>{let r=new cn({multigraph:!0,compound:!0}).setGraph({rankdir:t.direction,nodesep:t.config?.nodeSpacing||t.config?.flowchart?.nodeSpacing||t.nodeSpacing,ranksep:t.config?.rankSpacing||t.config?.flowchart?.rankSpacing||t.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=e.select("g");xw(n,t.markers,t.type,t.diagramId),Zte(),Kte(),Ute(),Eoe(),t.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),X.debug("Edges:",t.edges),t.edges.forEach(a=>{if(a.start===a.end){let s=a.start,l=s+"---"+s+"---1",u=s+"---"+s+"---2",h=r.node(s);r.setNode(l,{domId:l,id:l,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),r.setParent(l,h.parentId),r.setNode(u,{domId:u,id:u,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),r.setParent(u,h.parentId);let f=structuredClone(a),d=structuredClone(a),p=structuredClone(a);f.label="",f.arrowTypeEnd="none",f.id=s+"-cyclic-special-1",d.arrowTypeStart="none",d.arrowTypeEnd="none",d.id=s+"-cyclic-special-mid",p.label="",h.isGroup&&(f.fromCluster=s,p.toCluster=s),p.id=s+"-cyclic-special-2",p.arrowTypeStart="none",r.setEdge(s,l,f,s+"-cyclic-special-0"),r.setEdge(l,u,d,s+"-cyclic-special-1"),r.setEdge(u,s,p,s+"-cyct.length)&&(e=t.length);for(var r=0,n=Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},"n"),e:o(function(u){throw u},"e"),f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,s=!0,l=!1;return{s:o(function(){r=r.call(t)},"s"),n:o(function(){var u=r.next();return s=u.done,u},"n"),e:o(function(u){l=!0,a=u},"e"),f:o(function(){try{s||r.return==null||r.return()}finally{if(l)throw a}},"f")}}function cue(t,e,r){return(e=uue(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function w$e(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function k$e(t,e){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var n,i,a,s,l=[],u=!0,h=!1;try{if(a=(r=r.call(t)).next,e===0){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=a.call(r)).done)&&(l.push(n.value),l.length!==e);u=!0);}catch(f){h=!0,i=f}finally{try{if(!u&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(h)throw i}}return l}}function E$e(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function S$e(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _i(t,e){return x$e(t)||k$e(t,e)||cI(t,e)||E$e()}function jk(t){return b$e(t)||w$e(t)||cI(t)||S$e()}function C$e(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}function uue(t){var e=C$e(t,"string");return typeof e=="symbol"?e:e+""}function $i(t){"@babel/helpers - typeof";return $i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$i(t)}function cI(t,e){if(t){if(typeof t=="string")return UM(t,e);var r={}.toString.call(t).slice(8,-1);return r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set"?Array.from(t):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?UM(t,e):void 0}}function yx(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function vx(){if(Boe)return dN;Boe=1;function t(e){var r=typeof e;return e!=null&&(r=="object"||r=="function")}return o(t,"isObject"),dN=t,dN}function j$e(){if(Foe)return pN;Foe=1;var t=typeof Sk=="object"&&Sk&&Sk.Object===Object&&Sk;return pN=t,pN}function uE(){if($oe)return mN;$oe=1;var t=j$e(),e=typeof self=="object"&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return mN=r,mN}function K$e(){if(zoe)return gN;zoe=1;var t=uE(),e=o(function(){return t.Date.now()},"now");return gN=e,gN}function Q$e(){if(Goe)return yN;Goe=1;var t=/\s/;function e(r){for(var n=r.length;n--&&t.test(r.charAt(n)););return n}return o(e,"trimmedEndIndex"),yN=e,yN}function Z$e(){if(Voe)return vN;Voe=1;var t=Q$e(),e=/^\s+/;function r(n){return n&&n.slice(0,t(n)+1).replace(e,"")}return o(r,"baseTrim"),vN=r,vN}function fI(){if(Uoe)return xN;Uoe=1;var t=uE(),e=t.Symbol;return xN=e,xN}function J$e(){if(Hoe)return bN;Hoe=1;var t=fI(),e=Object.prototype,r=e.hasOwnProperty,n=e.toString,i=t?t.toStringTag:void 0;function a(s){var l=r.call(s,i),u=s[i];try{s[i]=void 0;var h=!0}catch{}var f=n.call(s);return h&&(l?s[i]=u:delete s[i]),f}return o(a,"getRawTag"),bN=a,bN}function eze(){if(qoe)return TN;qoe=1;var t=Object.prototype,e=t.toString;function r(n){return e.call(n)}return o(r,"objectToString"),TN=r,TN}function xue(){if(Woe)return wN;Woe=1;var t=fI(),e=J$e(),r=eze(),n="[object Null]",i="[object Undefined]",a=t?t.toStringTag:void 0;function s(l){return l==null?l===void 0?i:n:a&&a in Object(l)?e(l):r(l)}return o(s,"baseGetTag"),wN=s,wN}function tze(){if(Yoe)return kN;Yoe=1;function t(e){return e!=null&&typeof e=="object"}return o(t,"isObjectLike"),kN=t,kN}function xx(){if(Xoe)return EN;Xoe=1;var t=xue(),e=tze(),r="[object Symbol]";function n(i){return typeof i=="symbol"||e(i)&&t(i)==r}return o(n,"isSymbol"),EN=n,EN}function rze(){if(joe)return SN;joe=1;var t=Z$e(),e=vx(),r=xx(),n=NaN,i=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt;function u(h){if(typeof h=="number")return h;if(r(h))return n;if(e(h)){var f=typeof h.valueOf=="function"?h.valueOf():h;h=e(f)?f+"":f}if(typeof h!="string")return h===0?h:+h;h=t(h);var d=a.test(h);return d||s.test(h)?l(h.slice(2),d?2:8):i.test(h)?n:+h}return o(u,"toNumber"),SN=u,SN}function nze(){if(Koe)return CN;Koe=1;var t=vx(),e=K$e(),r=rze(),n="Expected a function",i=Math.max,a=Math.min;function s(l,u,h){var f,d,p,m,g,y,v=0,x=!1,b=!1,T=!0;if(typeof l!="function")throw new TypeError(n);u=r(u)||0,t(h)&&(x=!!h.leading,b="maxWait"in h,p=b?i(r(h.maxWait)||0,u):p,T="trailing"in h?!!h.trailing:T);function S(_){var D=f,O=d;return f=d=void 0,v=_,m=l.apply(O,D),m}o(S,"invokeFunc");function w(_){return v=_,g=setTimeout(A,u),x?S(_):m}o(w,"leadingEdge");function k(_){var D=_-y,O=_-v,N=u-D;return b?a(N,p-O):N}o(k,"remainingWait");function C(_){var D=_-y,O=_-v;return y===void 0||D>=u||D<0||b&&O>=p}o(C,"shouldInvoke");function A(){var _=e();if(C(_))return L(_);g=setTimeout(A,k(_))}o(A,"timerExpired");function L(_){return g=void 0,T&&f?S(_):(f=d=void 0,m)}o(L,"trailingEdge");function I(){g!==void 0&&clearTimeout(g),v=0,f=y=d=g=void 0}o(I,"cancel");function R(){return g===void 0?m:L(e())}o(R,"flush");function E(){var _=e(),D=C(_);if(f=arguments,d=this,y=_,D){if(g===void 0)return w(y);if(b)return clearTimeout(g),g=setTimeout(A,u),S(y)}return g===void 0&&(g=setTimeout(A,u)),m}return o(E,"debounced"),E.cancel=I,E.flush=R,E}return o(s,"debounce"),CN=s,CN}function lze(t,e,r,n,i){var a=i*Math.PI/180,s=Math.cos(a)*(t-r)-Math.sin(a)*(e-n)+r,l=Math.sin(a)*(t-r)+Math.cos(a)*(e-n)+n;return{x:s,y:l}}function uze(t,e,r){if(r===0)return t;var n=(e.x1+e.x2)/2,i=(e.y1+e.y2)/2,a=e.w/e.h,s=1/a,l=lze(t.x,t.y,n,i,r),u=cze(l.x,l.y,n,i,a,s);return{x:u.x,y:u.y}}function Tze(){return tle||(tle=1,(function(t,e){(function(){var r,n,i,a,s,l,u,h,f,d,p,m,g,y,v;i=Math.floor,d=Math.min,n=o(function(x,b){return xb?1:0},"defaultCmp"),f=o(function(x,b,T,S,w){var k;if(T==null&&(T=0),w==null&&(w=n),T<0)throw new Error("lo must be non-negative");for(S==null&&(S=x.length);TI;0<=I?L++:L--)A.push(L);return A}).apply(this).reverse(),C=[],S=0,w=k.length;SR;0<=R?++A:--A)E.push(s(x,T));return E},"nsmallest"),y=o(function(x,b,T,S){var w,k,C;for(S==null&&(S=n),w=x[T];T>b;){if(C=T-1>>1,k=x[C],S(w,k)<0){x[T]=k,T=C;continue}break}return x[T]=w},"_siftdown"),v=o(function(x,b,T){var S,w,k,C,A;for(T==null&&(T=n),w=x.length,A=b,k=x[b],S=2*b+1;S-1}return o(e,"listCacheHas"),tM=e,tM}function pVe(){if(Vle)return rM;Vle=1;var t=gE();function e(r,n){var i=this.__data__,a=t(i,r);return a<0?(++this.size,i.push([r,n])):i[a][1]=n,this}return o(e,"listCacheSet"),rM=e,rM}function mVe(){if(Ule)return nM;Ule=1;var t=uVe(),e=hVe(),r=fVe(),n=dVe(),i=pVe();function a(s){var l=-1,u=s==null?0:s.length;for(this.clear();++l-1&&n%1==0&&n0;){var f=i.shift();e(f),a.add(f.id()),l&&n(i,a,f)}return t}function Kue(t,e,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:SUe,e=arguments.length>1?arguments[1]:void 0,r=0;r0?E=D:R=D;while(Math.abs(_)>s&&++O=a?b(I,O):N===0?O:S(I,R,R+h)}o(w,"getTForX");var k=!1;function C(){k=!0,(t!==e||r!==n)&&T()}o(C,"precompute");var A=o(function(R){return k||C(),t===e&&r===n?R:R===0?0:R===1?1:v(w(R),e,n)},"f");A.getControlPoints=function(){return[{x:t,y:e},{x:r,y:n}]};var L="generateBezier("+[t,e,r,n]+")";return A.toString=function(){return L},A}function Nce(t,e,r,n,i){if(n===1||e===r)return r;var a=i(e,r,n);return t==null||((t.roundValue||t.color)&&(a=Math.round(a)),t.min!==void 0&&(a=Math.max(a,t.min)),t.max!==void 0&&(a=Math.min(a,t.max))),a}function Mce(t,e){return t.pfValue!=null||t.value!=null?t.pfValue!=null&&(e==null||e.type.units!=="%")?t.pfValue:t.value:t}function jm(t,e,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=Mce(t,i),l=Mce(e,i);if(At(s)&&At(l))return Nce(a,s,l,r,n);if(An(s)&&An(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=Uk[m].apply(null,g)):s.easingImpl=Uk[m]}var y=s.easingImpl,v;if(s.duration===0?v=1:v=(r-u)/s.duration,s.applying&&(v=s.progress),v<0?v=0:v>1&&(v=1),s.delay==null){var x=s.startPosition,b=s.position;if(b&&i&&!t.locked()){var T={};j2(x.x,b.x)&&(T.x=jm(x.x,b.x,v,y)),j2(x.y,b.y)&&(T.y=jm(x.y,b.y,v,y)),t.position(T)}var S=s.startPan,w=s.pan,k=a.pan,C=w!=null&&n;C&&(j2(S.x,w.x)&&(k.x=jm(S.x,w.x,v,y)),j2(S.y,w.y)&&(k.y=jm(S.y,w.y,v,y)),t.emit("pan"));var A=s.startZoom,L=s.zoom,I=L!=null&&n;I&&(j2(A,L)&&(a.zoom=lx(a.minZoom,jm(A,L,v,y),a.maxZoom)),t.emit("zoom")),(C||I)&&t.emit("viewport");var R=s.style;if(R&&R.length>0&&i){for(var E=0;E=0;C--){var A=k[C];A()}k.splice(0,k.length)},"callbacks"),b=m.length-1;b>=0;b--){var T=m[b],S=T._private;if(S.stopped){m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,x(S.frames);continue}!S.playing&&!S.applying||(S.playing&&S.applying&&(S.applying=!1),S.started||$Ue(f,T,t),FUe(f,T,t,d),S.applying&&(S.applying=!1),x(S.frames),S.step!=null&&S.step(t),T.completed()&&(m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,x(S.completes)),y=!0)}return!d&&m.length===0&&g.length===0&&n.push(f),y}o(i,"stepOne");for(var a=!1,s=0;s0?e.notify("draw",r):e.notify("draw")),r.unmerge(n),e.emit("step")}function phe(t){this.options=ir({},YUe,XUe,t)}function mhe(t){this.options=ir({},jUe,t)}function ghe(t){this.options=ir({},KUe,t)}function EE(t){this.options=ir({},QUe,t),this.options.layout=this;var e=this.options.eles.nodes(),r=this.options.eles.edges(),n=r.filter(function(i){var a=i.source().data("id"),s=i.target().data("id"),l=e.some(function(h){return h.data("id")===a}),u=e.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function bhe(t){this.options=ir({},fHe,t)}function _I(t){this.options=ir({},dHe,t)}function The(t){this.options=ir({},pHe,t)}function whe(t){this.options=ir({},mHe,t)}function khe(t){this.options=t,this.notifications=0}function Che(t,e){e.radius===0?t.lineTo(e.cx,e.cy):t.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function LI(t,e,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||e.radius===0?{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(vHe(t,e,r,n,i),{cx:eI,cy:tI,radius:gp,startX:Ehe,startY:She,stopX:rI,stopY:nI,startAngle:Ic.ang+Math.PI/2*vp,endAngle:Yo.ang-Math.PI/2*vp,counterClockwise:Wk})}function Ahe(t){var e=[];if(t!=null){for(var r=0;r5&&arguments[5]!==void 0?arguments[5]:5,s=Math.min(a,n/2,i/2);t.beginPath(),t.moveTo(e+s,r),t.lineTo(e+n-s,r),t.quadraticCurveTo(e+n,r,e+n,r+s),t.lineTo(e+n,r+i-s),t.quadraticCurveTo(e+n,r+i,e+n-s,r+i),t.lineTo(e+s,r+i),t.quadraticCurveTo(e,r+i,e,r+i-s),t.lineTo(e,r+s),t.quadraticCurveTo(e,r,e+s,r),t.closePath()}function eue(t,e,r){var n=t.createShader(e);if(t.shaderSource(n,r),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error(t.getShaderInfoLog(n));return n}function oqe(t,e,r){var n=eue(t,t.VERTEX_SHADER,e),i=eue(t,t.FRAGMENT_SHADER,r),a=t.createProgram();if(t.attachShader(a,n),t.attachShader(a,i),t.linkProgram(a),!t.getProgramParameter(a,t.LINK_STATUS))throw new Error("Could not initialize shaders");return a}function lqe(t,e,r){r===void 0&&(r=e);var n=t.makeOffscreenCanvas(e,r),i=n.context=n.getContext("2d");return n.clear=function(){return i.clearRect(0,0,n.width,n.height)},n.clear(),n}function MI(t){var e=t.pixelRatio,r=t.cy.zoom(),n=t.cy.pan();return{zoom:r*e,pan:{x:n.x*e,y:n.y*e}}}function cqe(t){var e=t.pixelRatio,r=t.cy.zoom();return r*e}function uqe(t,e,r,n,i){var a=n*r+e.x,s=i*r+e.y;return s=Math.round(t.canvasHeight-s),[a,s]}function hqe(t){return t.pstyle("background-fill").value!=="solid"||t.pstyle("background-image").strValue!=="none"?!1:t.pstyle("border-width").value===0||t.pstyle("border-opacity").value===0?!0:t.pstyle("border-style").value==="solid"}function fqe(t,e){if(t.length!==e.length)return!1;for(var r=0;r>0&255)/255,r[1]=(t>>8&255)/255,r[2]=(t>>16&255)/255,r[3]=(t>>24&255)/255,r}function dqe(t){return t[0]+(t[1]<<8)+(t[2]<<16)+(t[3]<<24)}function pqe(t,e){var r=t.createTexture();return r.buffer=function(n){t.bindTexture(t.TEXTURE_2D,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR_MIPMAP_NEAREST),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,n),t.generateMipmap(t.TEXTURE_2D),t.bindTexture(t.TEXTURE_2D,null)},r.deleteTexture=function(){t.deleteTexture(r)},r}function zhe(t,e){switch(e){case"float":return[1,t.FLOAT,4];case"vec2":return[2,t.FLOAT,4];case"vec3":return[3,t.FLOAT,4];case"vec4":return[4,t.FLOAT,4];case"int":return[1,t.INT,4];case"ivec2":return[2,t.INT,4]}}function Ghe(t,e,r){switch(e){case t.FLOAT:return new Float32Array(r);case t.INT:return new Int32Array(r)}}function mqe(t,e,r,n,i,a){switch(e){case t.FLOAT:return new Float32Array(r.buffer,a*n,i);case t.INT:return new Int32Array(r.buffer,a*n,i)}}function gqe(t,e,r,n){var i=zhe(t,e),a=_i(i,2),s=a[0],l=a[1],u=Ghe(t,l,n),h=t.createBuffer();return t.bindBuffer(t.ARRAY_BUFFER,h),t.bufferData(t.ARRAY_BUFFER,u,t.STATIC_DRAW),l===t.FLOAT?t.vertexAttribPointer(r,s,l,!1,0,0):l===t.INT&&t.vertexAttribIPointer(r,s,l,0,0),t.enableVertexAttribArray(r),t.bindBuffer(t.ARRAY_BUFFER,null),h}function Mc(t,e,r,n){var i=zhe(t,r),a=_i(i,3),s=a[0],l=a[1],u=a[2],h=Ghe(t,l,e*s),f=s*u,d=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,d),t.bufferData(t.ARRAY_BUFFER,e*f,t.DYNAMIC_DRAW),t.enableVertexAttribArray(n),l===t.FLOAT?t.vertexAttribPointer(n,s,l,!1,f,0):l===t.INT&&t.vertexAttribIPointer(n,s,l,f,0),t.vertexAttribDivisor(n,1),t.bindBuffer(t.ARRAY_BUFFER,null);for(var p=new Array(e),m=0;mOhe?(Mqe(t),e.call(t,a)):(Iqe(t),qhe(t,a,ix.SCREEN)))}}{var r=t.matchCanvasSize;t.matchCanvasSize=function(a){r.call(t,a),t.pickingFrameBuffer.setFramebufferAttachmentSizes(t.canvasWidth,t.canvasHeight),t.pickingFrameBuffer.needsDraw=!0}}t.findNearestElements=function(a,s,l,u){return zqe(t,a,s)};{var n=t.invalidateCachedZSortedEles;t.invalidateCachedZSortedEles=function(){n.call(t),t.pickingFrameBuffer.needsDraw=!0}}{var i=t.notify;t.notify=function(a,s){i.call(t,a,s),a==="viewport"||a==="bounds"?t.pickingFrameBuffer.needsDraw=!0:a==="background"&&t.drawing.invalidate(s,{type:"node-body"})}}}function Mqe(t){var e=t.data.contexts[t.WEBGL];e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}function Iqe(t){var e=o(function(n){n.save(),n.setTransform(1,0,0,1,0,0),n.clearRect(0,0,t.canvasWidth,t.canvasHeight),n.restore()},"clear");e(t.data.contexts[t.NODE]),e(t.data.contexts[t.DRAG])}function Oqe(t){var e=t.canvasWidth,r=t.canvasHeight,n=MI(t),i=n.pan,a=n.zoom,s=BM();Xk(s,s,[i.x,i.y]),aI(s,s,[a,a]);var l=BM();bqe(l,e,r);var u=BM();return xqe(u,l,s),u}function Hhe(t,e){var r=t.canvasWidth,n=t.canvasHeight,i=MI(t),a=i.pan,s=i.zoom;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,r,n),e.translate(a.x,a.y),e.scale(s,s)}function Pqe(t,e){t.drawSelectionRectangle(e,function(r){return Hhe(t,r)})}function Bqe(t){var e=t.data.contexts[t.NODE];e.save(),Hhe(t,e),e.strokeStyle="rgba(0, 0, 0, 0.3)",e.beginPath(),e.moveTo(-1e3,0),e.lineTo(1e3,0),e.stroke(),e.beginPath(),e.moveTo(0,-1e3),e.lineTo(0,1e3),e.stroke(),e.restore()}function Fqe(t){var e=o(function(i,a,s){for(var l=i.atlasManager.getAtlasCollection(a),u=t.data.contexts[t.NODE],h=l.atlases,f=0;f=0&&S.add(C)}return S}function zqe(t,e,r){var n=$qe(t,e,r),i=t.getCachedZSortedEles(),a,s,l=qs(n),u;try{for(l.s();!(u=l.n()).done;){var h=u.value,f=i[h];if(!a&&f.isNode()&&(a=f),!s&&f.isEdge()&&(s=f),a&&s)break}}catch(d){l.e(d)}finally{l.f()}return[a,s].filter(Boolean)}function VM(t,e,r){var n=t.drawing;e+=1,r.isNode()?(n.drawNode(r,e,"node-underlay"),n.drawNode(r,e,"node-body"),n.drawTexture(r,e,"label"),n.drawNode(r,e,"node-overlay")):(n.drawEdgeLine(r,e),n.drawEdgeArrow(r,e,"source"),n.drawEdgeArrow(r,e,"target"),n.drawTexture(r,e,"label"),n.drawTexture(r,e,"edge-source-label"),n.drawTexture(r,e,"edge-target-label"))}function qhe(t,e,r){var n;t.webglDebug&&(n=performance.now());var i=t.drawing,a=0;if(r.screen&&t.data.canvasNeedsRedraw[t.SELECT_BOX]&&Pqe(t,e),t.data.canvasNeedsRedraw[t.NODE]||r.picking){var s=t.data.contexts[t.WEBGL];r.screen?(s.clearColor(0,0,0,0),s.enable(s.BLEND),s.blendFunc(s.ONE,s.ONE_MINUS_SRC_ALPHA)):s.disable(s.BLEND),s.clear(s.COLOR_BUFFER_BIT|s.DEPTH_BUFFER_BIT),s.viewport(0,0,s.canvas.width,s.canvas.height);var l=Oqe(t),u=t.getCachedZSortedEles();if(a=u.length,i.startFrame(l,r),r.screen){for(var h=0;h{"use strict";o(UM,"_arrayLikeToArray");o(x$e,"_arrayWithHoles");o(b$e,"_arrayWithoutHoles");o(Af,"_classCallCheck");o(T$e,"_defineProperties");o(_f,"_createClass");o(qs,"_createForOfIteratorHelper");o(cue,"_defineProperty$1");o(w$e,"_iterableToArray");o(k$e,"_iterableToArrayLimit");o(E$e,"_nonIterableRest");o(S$e,"_nonIterableSpread");o(_i,"_slicedToArray");o(jk,"_toConsumableArray");o(C$e,"_toPrimitive");o(uue,"_toPropertyKey");o($i,"_typeof");o(cI,"_unsupportedIterableToArray");Bi=typeof window>"u"?null:window,Ooe=Bi?Bi.navigator:null;Bi&&Bi.document;A$e=$i(""),hue=$i({}),_$e=$i(function(){}),D$e=typeof HTMLElement>"u"?"undefined":$i(HTMLElement),mx=o(function(e){return e&&e.instanceString&&oi(e.instanceString)?e.instanceString():null},"instanceStr"),Jt=o(function(e){return e!=null&&$i(e)==A$e},"string"),oi=o(function(e){return e!=null&&$i(e)===_$e},"fn"),An=o(function(e){return!fo(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},"array"),Yr=o(function(e){return e!=null&&$i(e)===hue&&!An(e)&&e.constructor===Object},"plainObject"),L$e=o(function(e){return e!=null&&$i(e)===hue},"object"),At=o(function(e){return e!=null&&$i(e)===$i(1)&&!isNaN(e)},"number"),R$e=o(function(e){return At(e)&&Math.floor(e)===e},"integer"),Kk=o(function(e){if(D$e!=="undefined")return e!=null&&e instanceof HTMLElement},"htmlElement"),fo=o(function(e){return gx(e)||fue(e)},"elementOrCollection"),gx=o(function(e){return mx(e)==="collection"&&e._private.single},"element"),fue=o(function(e){return mx(e)==="collection"&&!e._private.single},"collection"),uI=o(function(e){return mx(e)==="core"},"core"),due=o(function(e){return mx(e)==="stylesheet"},"stylesheet"),N$e=o(function(e){return mx(e)==="event"},"event"),Tf=o(function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},"emptyString"),M$e=o(function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},"domElement"),I$e=o(function(e){return Yr(e)&&At(e.x1)&&At(e.x2)&&At(e.y1)&&At(e.y2)},"boundingBox"),O$e=o(function(e){return L$e(e)&&oi(e.then)},"promise"),P$e=o(function(){return Ooe&&Ooe.userAgent.match(/msie|trident|edge/i)},"ms"),lg=o(function(e,r){r||(r=o(function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var a=[],s=0;sr?1:0},"ascending"),U$e=o(function(e,r){return-1*mue(e,r)},"descending"),ir=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r1&&(v-=1),v<1/6?g+(y-g)*6*v:v<1/2?y:v<2/3?g+(y-g)*(2/3-v)*6:g}o(f,"hue2rgb");var d=new RegExp("^"+$$e+"$").exec(e);if(d){if(n=parseInt(d[1]),n<0?n=(360- -1*n%360)%360:n>360&&(n=n%360),n/=360,i=parseFloat(d[2]),i<0||i>100||(i=i/100,a=parseFloat(d[3]),a<0||a>100)||(a=a/100,s=d[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(i===0)l=u=h=Math.round(a*255);else{var p=a<.5?a*(1+i):a+i-a*i,m=2*a-p;l=Math.round(255*f(m,p,n+1/3)),u=Math.round(255*f(m,p,n)),h=Math.round(255*f(m,p,n-1/3))}r=[l,u,h,s]}return r},"hsl2tuple"),W$e=o(function(e){var r,n=new RegExp("^"+B$e+"$").exec(e);if(n){r=[];for(var i=[],a=1;a<=3;a++){var s=n[a];if(s[s.length-1]==="%"&&(i[a]=!0),s=parseFloat(s),i[a]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var l=i[1]||i[2]||i[3],u=i[1]&&i[2]&&i[3];if(l&&!u)return;var h=n[4];if(h!==void 0){if(h=parseFloat(h),h<0||h>1)return;r.push(h)}}return r},"rgb2tuple"),Y$e=o(function(e){return X$e[e.toLowerCase()]},"colorname2tuple"),gue=o(function(e){return(An(e)?e:null)||Y$e(e)||H$e(e)||W$e(e)||q$e(e)},"color2tuple"),X$e={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},yue=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:yp,n=r,i;i=e.next(),!i.done;)n=n*Tue+i.value|0;return n},"hashIterableInts"),ax=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:yp;return r*Tue+e|0},"hashInt"),sx=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:eg;return(r<<5)+r+e|0},"hashIntAlt"),sze=o(function(e,r){return e*2097152+r},"combineHashes"),df=o(function(e){return e[0]*2097152+e[1]},"combineHashesArray"),Ck=o(function(e,r){return[ax(e[0],r[0]),sx(e[1],r[1])]},"hashArrays"),Qoe=o(function(e,r){var n={value:0,done:!1},i=0,a=e.length,s={next:o(function(){return i=0;i--)e[i]===r&&e.splice(i,1)},"removeFromArray"),mI=o(function(e){e.splice(0,e.length)},"clearArray"),gze=o(function(e,r){for(var n=0;n"u"?"undefined":$i(Set))!==vze?Set:xze,hE=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!uI(e)){Kn("An element must have a core reference and parameters set");return}var i=r.group;if(i==null&&(r.data&&r.data.source!=null&&r.data.target!=null?i="edges":i="nodes"),i!=="nodes"&&i!=="edges"){Kn("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?i==="edges":!!r.pannable,active:!1,classes:new hg,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(a.position.x==null&&(a.position.x=0),a.position.y==null&&(a.position.y=0),r.renderedPosition){var s=r.renderedPosition,l=e.pan(),u=e.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];An(r.classes)?h=r.classes:Jt(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;f0;){var k=b.pop(),C=v(k),A=k.id();if(p[A]=C,C!==1/0)for(var L=k.neighborhood().intersect(g),I=0;I0)for(B.unshift(P);d[V];){var $=d[V];B.unshift($.edge),B.unshift($.node),F=$.node,V=F.id()}return l.spawn(B)},"pathTo")}},"dijkstra")},Cze={kruskal:o(function(e){e=e||function(T){return 1};for(var r=this.byGroup(),n=r.nodes,i=r.edges,a=n.length,s=new Array(a),l=n,u=o(function(S){for(var w=0;w0;){if(w(),C++,S===f){for(var A=[],L=a,I=f,R=x[I];A.unshift(L),R!=null&&A.unshift(R),L=v[I],L!=null;)I=L.id(),R=x[I];return{found:!0,distance:d[S],path:this.spawn(A),steps:C}}m[S]=!0;for(var E=T._private.edges,_=0;_R&&(g[I]=R,b[I]=L,T[I]=w),!a){var E=L*f+A;!a&&g[E]>R&&(g[E]=R,b[E]=A,T[E]=w)}}}for(var _=0;_1&&arguments[1]!==void 0?arguments[1]:s,pe=T(W),Be=[],Ye=pe;;){if(Ye==null)return r.spawn();var He=b(Ye),Le=He.edge,Ie=He.pred;if(Be.unshift(Ye[0]),Ye.same(Ve)&&Be.length>0)break;Le!=null&&Be.unshift(Le),Ye=Ie}return u.spawn(Be)},"pathTo"),k=0;k=0;f--){var d=h[f],p=d[1],m=d[2];(r[p]===l&&r[m]===u||r[p]===u&&r[m]===l)&&h.splice(f,1)}for(var g=0;gi;){var a=Math.floor(Math.random()*r.length);r=Ize(a,e,r),n--}return r},"contractUntil"),Oze={kargerStein:o(function(){var e=this,r=this.byGroup(),n=r.nodes,i=r.edges;i.unmergeBy(function(B){return B.isLoop()});var a=n.length,s=i.length,l=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),u=Math.floor(a/Mze);if(a<2){Kn("At least 2 nodes are required for Karger-Stein algorithm");return}for(var h=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,a=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;i?e=e.slice(r,n):(n0&&e.splice(0,r));for(var l=0,u=e.length-1;u>=0;u--){var h=e[u];s?isFinite(h)||(e[u]=-1/0,l++):e.splice(u,1)}a&&e.sort(function(p,m){return p-m});var f=e.length,d=Math.floor(f/2);return f%2!==0?e[d+1+l]:(e[d-1+l]+e[d+l])/2},"median"),Gze=o(function(e){return Math.PI*e/180},"deg2rad"),Ak=o(function(e,r){return Math.atan2(r,e)-Math.PI/2},"getAngleFromDisp"),gI=Math.log2||function(t){return Math.log(t)/Math.log(2)},yI=o(function(e){return e>0?1:e<0?-1:0},"signum"),Tp=o(function(e,r){return Math.sqrt(mp(e,r))},"dist"),mp=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return n*n+i*i},"sqdist"),Vze=o(function(e){for(var r=e.length,n=0,i=0;i=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},"makeBoundingBox"),Hze=o(function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},"copyBoundingBox"),qze=o(function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},"clearBoundingBox"),Wze=o(function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},"updateBoundingBox"),Due=o(function(e,r,n){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},"expandBoundingBoxByPoint"),$k=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBox"),zk=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],n,i,a,s;if(r.length===1)n=i=a=s=r[0];else if(r.length===2)n=a=r[0],s=i=r[1];else if(r.length===4){var l=_i(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return e.x1-=s,e.x2+=i,e.y1-=n,e.y2+=a,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBoxSides"),nle=o(function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},"assignBoundingBox"),vI=o(function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},"boundingBoxesIntersect"),yf=o(function(e,r,n){return e.x1<=r&&r<=e.x2&&e.y1<=n&&n<=e.y2},"inBoundingBox"),ile=o(function(e,r){return yf(e,r.x,r.y)},"pointInBoundingBox"),Lue=o(function(e,r){return yf(e,r.x1,r.y1)&&yf(e,r.x2,r.y2)},"boundingBoxInBoundingBox"),Yze=(LN=Math.hypot)!==null&&LN!==void 0?LN:function(t,e){return Math.sqrt(t*t+e*e)};o(Xze,"inflatePolygon");o(jze,"miterBox");Rue=o(function(e,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?kf(a,s):u,f=a/2,d=s/2;h=Math.min(h,f,d);var p=h!==f,m=h!==d,g;if(p){var y=n-f+h-l,v=i-d-l,x=n+f-h+l,b=v;if(g=vf(e,r,n,i,y,v,x,b,!1),g.length>0)return g}if(m){var T=n+f+l,S=i-d+h-l,w=T,k=i+d-h+l;if(g=vf(e,r,n,i,T,S,w,k,!1),g.length>0)return g}if(p){var C=n-f+h-l,A=i+d+l,L=n+f-h+l,I=A;if(g=vf(e,r,n,i,C,A,L,I,!1),g.length>0)return g}if(m){var R=n-f-l,E=i-d+h-l,_=R,D=i+d-h+l;if(g=vf(e,r,n,i,R,E,_,D,!1),g.length>0)return g}var O;{var N=n-f+h,P=i-d+h;if(O=J2(e,r,n,i,N,P,h+l),O.length>0&&O[0]<=N&&O[1]<=P)return[O[0],O[1]]}{var B=n+f-h,F=i-d+h;if(O=J2(e,r,n,i,B,F,h+l),O.length>0&&O[0]>=B&&O[1]<=F)return[O[0],O[1]]}{var V=n+f-h,$=i+d-h;if(O=J2(e,r,n,i,V,$,h+l),O.length>0&&O[0]>=V&&O[1]>=$)return[O[0],O[1]]}{var U=n-f+h,j=i+d-h;if(O=J2(e,r,n,i,U,j,h+l),O.length>0&&O[0]<=U&&O[1]>=j)return[O[0],O[1]]}return[]},"roundRectangleIntersectLine"),Kze=o(function(e,r,n,i,a,s,l){var u=l,h=Math.min(n,a),f=Math.max(n,a),d=Math.min(i,s),p=Math.max(i,s);return h-u<=e&&e<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),Qze=o(function(e,r,n,i,a,s,l,u,h){var f={x1:Math.min(n,l,a)-h,x2:Math.max(n,l,a)+h,y1:Math.min(i,u,s)-h,y2:Math.max(i,u,s)+h};return!(ef.x2||rf.y2)},"inBezierVicinity"),Zze=o(function(e,r,n,i){n-=i;var a=r*r-4*e*n;if(a<0)return[];var s=Math.sqrt(a),l=2*e,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),Jze=o(function(e,r,n,i,a){var s=1e-5;e===0&&(e=s),r/=e,n/=e,i/=e;var l,u,h,f,d,p,m,g;if(u=(3*n-r*r)/9,h=-(27*i)+r*(9*n-2*(r*r)),h/=54,l=u*u*u+h*h,a[1]=0,m=r/3,l>0){d=h+Math.sqrt(l),d=d<0?-Math.pow(-d,1/3):Math.pow(d,1/3),p=h-Math.sqrt(l),p=p<0?-Math.pow(-p,1/3):Math.pow(p,1/3),a[0]=-m+d+p,m+=(d+p)/2,a[4]=a[2]=-m,m=Math.sqrt(3)*(-p+d)/2,a[3]=m,a[5]=-m;return}if(a[5]=a[3]=0,l===0){g=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),a[0]=-m+2*g,a[4]=a[2]=-(g+m);return}u=-u,f=u*u*u,f=Math.acos(h/Math.sqrt(f)),g=2*Math.sqrt(u),a[0]=-m+g*Math.cos(f/3),a[2]=-m+g*Math.cos((f+2*Math.PI)/3),a[4]=-m+g*Math.cos((f+4*Math.PI)/3)},"solveCubic"),eGe=o(function(e,r,n,i,a,s,l,u){var h=1*n*n-4*n*a+2*n*l+4*a*a-4*a*l+l*l+i*i-4*i*s+2*i*u+4*s*s-4*s*u+u*u,f=9*n*a-3*n*n-3*n*l-6*a*a+3*a*l+9*i*s-3*i*i-3*i*u-6*s*s+3*s*u,d=3*n*n-6*n*a+n*l-n*e+2*a*a+2*a*e-l*e+3*i*i-6*i*s+i*u-i*r+2*s*s+2*s*r-u*r,p=1*n*a-n*n+n*e-a*e+i*s-i*i+i*r-s*r,m=[];Jze(h,f,d,p,m);for(var g=1e-7,y=[],v=0;v<6;v+=2)Math.abs(m[v+1])=0&&m[v]<=1&&y.push(m[v]);y.push(1),y.push(0);for(var x=-1,b,T,S,w=0;w=0?Sh?(e-a)*(e-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),Hs=o(function(e,r,n){for(var i,a,s,l,u,h=0,f=0;f=e&&e>=s||i<=e&&e<=s)u=(e-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),Vu=o(function(e,r,n,i,a,s,l,u,h){var f=new Array(n.length),d;u[0]!=null?(d=Math.atan(u[1]/u[0]),u[0]<0?d=d+Math.PI/2:d=-d-Math.PI/2):d=u;for(var p=Math.cos(-d),m=Math.sin(-d),g=0;g0){var v=eE(f,-h);y=Jk(v)}else y=f;return Hs(e,r,y)},"pointInsidePolygon"),rGe=o(function(e,r,n,i,a,s,l,u){for(var h=new Array(n.length*2),f=0;f=0&&v<=1&&b.push(v),x>=0&&x<=1&&b.push(x),b.length===0)return[];var T=b[0]*u[0]+e,S=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[T,S];var w=b[1]*u[0]+e,k=b[1]*u[1]+r;return[T,S,w,k]}else return[T,S]},"intersectLineCircle"),RN=o(function(e,r,n){return r<=e&&e<=n||n<=e&&e<=r?e:e<=r&&r<=n||n<=r&&r<=e?r:n},"midOfThree"),vf=o(function(e,r,n,i,a,s,l,u,h){var f=e-a,d=n-e,p=l-a,m=r-s,g=i-r,y=u-s,v=p*m-y*f,x=d*m-g*f,b=y*d-p*g;if(b!==0){var T=v/b,S=x/b,w=.001,k=0-w,C=1+w;return k<=T&&T<=C&&k<=S&&S<=C?[e+T*d,r+T*g]:h?[e+T*d,r+T*g]:[]}else return v===0||x===0?RN(e,n,l)===l?[l,u]:RN(e,n,a)===a?[a,s]:RN(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),iGe=o(function(e,r,n,i,a){var s=[],l=i/2,u=a/2,h=r,f=n;s.push({x:h+l*e[0],y:f+u*e[1]});for(var d=1;d0){var y=eE(d,-u);m=Jk(y)}else m=d}else m=n;for(var v,x,b,T,S=0;S2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-e,2)+Math.pow(g[1]-r,2),v=1;vf&&(f=S)},"set"),get:o(function(T){return h[T]},"get")},p=0;p0?O=D.edgesTo(_)[0]:O=_.edgesTo(D)[0];var N=i(O);_=_.id(),C[_]>C[R]+N&&(C[_]=C[R]+N,A.nodes.indexOf(_)<0?A.push(_):A.updateItem(_),k[_]=0,w[_]=[]),C[_]==C[R]+N&&(k[_]=k[_]+k[R],w[_].push(R))}else for(var P=0;P0;){for(var $=S.pop(),U=0;U0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),xGe=o(function(e,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:wGe,l=i,u,h,f=0;f=2?W2(e,r,n,0,cle,kGe):W2(e,r,n,0,lle)},"euclidean"),squaredEuclidean:o(function(e,r,n){return W2(e,r,n,0,cle)},"squaredEuclidean"),manhattan:o(function(e,r,n){return W2(e,r,n,0,lle)},"manhattan"),max:o(function(e,r,n){return W2(e,r,n,-1/0,EGe)},"max")};cg["squared-euclidean"]=cg.squaredEuclidean;cg.squaredeuclidean=cg.squaredEuclidean;o(dE,"clusteringDistance");SGe=ba({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),bI=o(function(e){return SGe(e)},"setOptions"),tE=o(function(e,r,n,i,a){var s=a!=="kMedoids",l=s?function(d){return n[d]}:function(d){return i[d](n)},u=o(function(p){return i[p](r)},"getQ"),h=n,f=r;return dE(e,i.length,l,u,h,f)},"getDist"),MN=o(function(e,r,n){for(var i=n.length,a=new Array(i),s=new Array(i),l=new Array(r),u=null,h=0;hn)return!1}return!0},"haveMatricesConverged"),_Ge=o(function(e,r,n){for(var i=0;il&&(l=r[h][f],u=f);a[u].push(e[h])}for(var d=0;d=a.threshold||a.mode==="dendrogram"&&e.length===1)return!1;var g=r[s],y=r[i[s]],v;a.mode==="dendrogram"?v={left:g,right:y,key:g.key}:v={value:g.value.concat(y.value),key:g.key},e[g.index]=v,e.splice(y.index,1),r[g.key]=v;for(var x=0;xn[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="max"?(u=n[g.key][b.key],n[g.key][b.key]0&&i.push(a);return i},"findExemplars"),mle=o(function(e,r,n){for(var i=[],a=0;al&&(s=h,l=r[a*e+h])}s>0&&i.push(s)}for(var f=0;fh&&(u=f,h=d)}n[a]=s[u]}return i=mle(e,r,n),i},"assign"),gle=o(function(e){for(var r=this.cy(),n=this.nodes(),i=zGe(e),a={},s=0;s=R?(E=R,R=D,_=O):D>E&&(E=D);for(var N=0;N0?1:0;C[L%i.minIterations*l+U]=j,$+=j}if($>0&&(L>=i.minIterations-1||L==i.maxIterations-1)){for(var ee=0,q=0;q1||k>1)&&(l=!0),d[T]=[],b.outgoers().forEach(function(A){A.isEdge()&&d[T].push(A.id())})}else p[T]=[void 0,b.target().id()]}):s.forEach(function(b){var T=b.id();if(b.isNode()){var S=b.degree(!0);S%2&&(u?h?l=!0:h=T:u=T),d[T]=[],b.connectedEdges().forEach(function(w){return d[T].push(w.id())})}else p[T]=[b.source().id(),b.target().id()]});var m={found:!1,trail:void 0};if(l)return m;if(h&&u)if(a){if(f&&h!=f)return m;f=h}else{if(f&&h!=f&&u!=f)return m;f||(f=h)}else f||(f=s[0].id());var g=o(function(T){for(var S=T,w=[T],k,C,A;d[S].length;)k=d[S].shift(),C=p[k][0],A=p[k][1],S!=A?(d[A]=d[A].filter(function(L){return L!=k}),S=A):!a&&S!=C&&(d[C]=d[C].filter(function(L){return L!=k}),S=C),w.unshift(k),w.unshift(S);return w},"walk"),y=[],v=[];for(v=g(f);v.length!=1;)d[v[0]].length==0?(y.unshift(s.getElementById(v.shift())),y.unshift(s.getElementById(v.shift()))):v=g(v.shift()).concat(v);y.unshift(s.getElementById(v.shift()));for(var x in d)if(d[x].length)return m;return m.found=!0,m.trail=this.spawn(y,!0),m},"hierholzer")},Dk=o(function(){var e=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],v=e.spawn();s[g].x!=p||s[g].y!=m;)y.push(s.pop().edge),g--;y.push(s.pop().edge),y.forEach(function(x){var b=x.connectedNodes().intersection(e);v.merge(x),b.forEach(function(T){var S=T.id(),w=T.connectedEdges().intersection(e);v.merge(T),r[S].cutVertex?v.merge(w.filter(function(k){return k.isLoop()})):v.merge(w)})}),a.push(v)},"buildComponent"),h=o(function(p,m,g){p===g&&(i+=1),r[m]={id:n,low:n++,cutVertex:!1};var y=e.getElementById(m).connectedEdges().intersection(e);if(y.size()===0)a.push(e.spawn(e.getElementById(m)));else{var v,x,b,T;y.forEach(function(S){v=S.source().id(),x=S.target().id(),b=v===m?x:v,b!==g&&(T=S.id(),l[T]||(l[T]=!0,s.push({x:m,y:b,edge:S})),b in r?r[m].low=Math.min(r[m].low,r[b].id):(h(p,b,m),r[m].low=Math.min(r[m].low,r[b].low),r[m].id<=r[b].low&&(r[m].cutVertex=!0,u(m,b))))})}},"biconnectedSearch");e.forEach(function(d){if(d.isNode()){var p=d.id();p in r||(i=0,h(p,p),r[p].cutVertex=i>1)}});var f=Object.keys(r).filter(function(d){return r[d].cutVertex}).map(function(d){return e.getElementById(d)});return{cut:e.spawn(f),components:a}},"hopcroftTarjanBiconnected"),XGe={hopcroftTarjanBiconnected:Dk,htbc:Dk,htb:Dk,hopcroftTarjanBiconnectedComponents:Dk},Lk=o(function(){var e=this,r={},n=0,i=[],a=[],s=e.spawn(e),l=o(function(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=e.getElementById(h).connectedEdges().intersection(e);if(f.forEach(function(y){var v=y.target().id();v!==h&&(v in r||l(v),r[v].explored||(r[h].low=Math.min(r[h].low,r[v].low)))}),r[h].index===r[h].low){for(var d=e.spawn();;){var p=a.pop();if(d.merge(e.getElementById(p)),r[p].low=r[h].index,r[p].explored=!0,p===h)break}var m=d.edgesWith(d),g=d.merge(m);i.push(g),s=s.difference(g)}},"stronglyConnectedSearch");return e.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),jGe={tarjanStronglyConnected:Lk,tsc:Lk,tscc:Lk,tarjanStronglyConnectedComponents:Lk},Fue={};[ox,Sze,Cze,_ze,Lze,Nze,Oze,lGe,ag,sg,WM,TGe,IGe,FGe,qGe,YGe,XGe,jGe].forEach(function(t){ir(Fue,t)});$ue=0,zue=1,Gue=2,Il=o(function(e){if(!(this instanceof Il))return new Il(e);this.id="Thenable/1.0.7",this.state=$ue,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e=="function"&&e.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");Il.prototype={fulfill:o(function(e){return yle(this,zue,"fulfillValue",e)},"fulfill"),reject:o(function(e){return yle(this,Gue,"rejectReason",e)},"reject"),then:o(function(e,r){var n=this,i=new Il;return n.onFulfilled.push(xle(e,i,"fulfill")),n.onRejected.push(xle(r,i,"reject")),Vue(n),i.proxy},"then")};yle=o(function(e,r,n,i){return e.state===$ue&&(e.state=r,e[n]=i,Vue(e)),e},"deliver"),Vue=o(function(e){e.state===zue?vle(e,"onFulfilled",e.fulfillValue):e.state===Gue&&vle(e,"onRejected",e.rejectReason)},"execute"),vle=o(function(e,r,n){if(e[r].length!==0){var i=e[r];e[r]=[];var a=o(function(){for(var l=0;l0},"animatedImpl")},"animated"),clearQueue:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return this;for(var s=0;s0&&this.spawn(i).updateStyle().emit("class"),r},"classes"),addClass:o(function(e){return this.toggleClass(e,!0)},"addClass"),hasClass:o(function(e){var r=this[0];return r!=null&&r._private.classes.has(e)},"hasClass"),toggleClass:o(function(e,r){An(e)||(e=e.match(/\S+/g)||[]);for(var n=this,i=r===void 0,a=[],s=0,l=n.length;s0&&this.spawn(a).updateStyle().emit("class"),n},"toggleClass"),removeClass:o(function(e){return this.toggleClass(e,!1)},"removeClass"),flashClass:o(function(e,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(e),setTimeout(function(){n.removeClass(e)},r),n},"flashClass")};Gk.className=Gk.classNames=Gk.classes;Wr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Fi,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Wr.variable="(?:[\\w-.]|(?:\\\\"+Wr.metaChar+"))+";Wr.className="(?:[\\w-]|(?:\\\\"+Wr.metaChar+"))+";Wr.value=Wr.string+"|"+Wr.number;Wr.id=Wr.variable;(function(){var t,e,r;for(t=Wr.comparatorOp.split("|"),r=0;r=0)&&e!=="="&&(Wr.comparatorOp+="|\\!"+e)})();xn=o(function(){return{checks:[]}},"newQuery"),zt={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},KM=[{selector:":selected",matches:o(function(e){return e.selected()},"matches")},{selector:":unselected",matches:o(function(e){return!e.selected()},"matches")},{selector:":selectable",matches:o(function(e){return e.selectable()},"matches")},{selector:":unselectable",matches:o(function(e){return!e.selectable()},"matches")},{selector:":locked",matches:o(function(e){return e.locked()},"matches")},{selector:":unlocked",matches:o(function(e){return!e.locked()},"matches")},{selector:":visible",matches:o(function(e){return e.visible()},"matches")},{selector:":hidden",matches:o(function(e){return!e.visible()},"matches")},{selector:":transparent",matches:o(function(e){return e.transparent()},"matches")},{selector:":grabbed",matches:o(function(e){return e.grabbed()},"matches")},{selector:":free",matches:o(function(e){return!e.grabbed()},"matches")},{selector:":removed",matches:o(function(e){return e.removed()},"matches")},{selector:":inside",matches:o(function(e){return!e.removed()},"matches")},{selector:":grabbable",matches:o(function(e){return e.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(e){return!e.grabbable()},"matches")},{selector:":animated",matches:o(function(e){return e.animated()},"matches")},{selector:":unanimated",matches:o(function(e){return!e.animated()},"matches")},{selector:":parent",matches:o(function(e){return e.isParent()},"matches")},{selector:":childless",matches:o(function(e){return e.isChildless()},"matches")},{selector:":child",matches:o(function(e){return e.isChild()},"matches")},{selector:":orphan",matches:o(function(e){return e.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(e){return e.isChild()},"matches")},{selector:":compound",matches:o(function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()},"matches")},{selector:":loop",matches:o(function(e){return e.isLoop()},"matches")},{selector:":simple",matches:o(function(e){return e.isSimple()},"matches")},{selector:":active",matches:o(function(e){return e.active()},"matches")},{selector:":inactive",matches:o(function(e){return!e.active()},"matches")},{selector:":backgrounding",matches:o(function(e){return e.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(e){return!e.backgrounding()},"matches")}].sort(function(t,e){return U$e(t.selector,e.selector)}),WVe=(function(){for(var t={},e,r=0;r0&&f.edgeCount>0)return hn("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return hn("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&hn("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},"parse"),ZVe=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var e=o(function(f){return f??""},"clean"),r=o(function(f){return Jt(f)?'"'+f+'"':e(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case zt.GROUP:{var g=e(m);return g.substring(0,g.length-1)}case zt.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(e(v))+r(m)+"]"}case zt.DATA_BOOL:{var x=f.operator,b=f.field;return"["+e(x)+b+"]"}case zt.DATA_EXIST:{var T=f.field;return"["+T+"]"}case zt.META_COMPARE:{var S=f.operator,w=f.field;return"[["+w+n(e(S))+r(m)+"]]"}case zt.STATE:return m;case zt.ID:return"#"+m;case zt.CLASS:return"."+m;case zt.PARENT:case zt.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case zt.ANCESTOR:case zt.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case zt.COMPOUND_SPLIT:{var k=a(f.left,d),C=a(f.subject,d),A=a(f.right,d);return k+(k.length>0?" ":"")+C+A}case zt.TRUE:return""}},"checkToString"),a=o(function(f,d){return f.checks.reduce(function(p,m,g){return p+(d===f&&g===0?"$":"")+i(m,d)},"")},"queryToString"),s="",l=0;l1&&l=0&&(r=r.replace("!",""),d=!0),r.indexOf("@")>=0&&(r=r.replace("@",""),f=!0),(a||l||f)&&(u=!a&&!s?"":""+e,h=""+n),f&&(e=u=u.toLowerCase(),n=h=h.toLowerCase()),r){case"*=":i=u.indexOf(h)>=0;break;case"$=":i=u.indexOf(h,u.length-h.length)>=0;break;case"^=":i=u.indexOf(h)===0;break;case"=":i=e===n;break;case">":p=!0,i=e>n;break;case">=":p=!0,i=e>=n;break;case"<":p=!0,i=e1&&arguments[1]!==void 0?arguments[1]:!0;return EI(this,t,e,Kue)};o(Que,"addParent");ug.forEachUp=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return EI(this,t,e,Que)};o(sUe,"addParentAndChildren");ug.forEachUpAndDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return EI(this,t,e,sUe)};ug.ancestors=ug.parents;ux=Zue={data:un.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:un.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:un.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:un.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:un.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:un.removeData({field:"rscratch",triggerEvent:!1}),id:o(function(){var e=this[0];if(e)return e._private.data.id},"id")};ux.attr=ux.data;ux.removeAttr=ux.removeData;oUe=Zue,vE={};o(RM,"defineDegreeFunction");ir(vE,{degree:RM(function(t,e){return e.source().same(e.target())?2:1}),indegree:RM(function(t,e){return e.target().same(t)?1:0}),outdegree:RM(function(t,e){return e.source().same(t)?1:0})});o(Xm,"defineDegreeBoundsFunction");ir(vE,{minDegree:Xm("degree",function(t,e){return te}),minIndegree:Xm("indegree",function(t,e){return te}),minOutdegree:Xm("outdegree",function(t,e){return te})});ir(vE,{totalDegree:o(function(e){for(var r=0,n=this.nodes(),i=0;i0,p=d;d&&(f=f[0]);var m=p?f.position():{x:0,y:0};r!==void 0?h.position(e,r+m[e]):a!==void 0&&h.position({x:a.x+m.x,y:a.y+m.y})}else{var g=n.position(),y=l?n.parent():null,v=y&&y.length>0,x=v;v&&(y=y[0]);var b=x?y.position():{x:0,y:0};return a={x:g.x-b.x,y:g.y-b.y},e===void 0?a:a[e]}else if(!s)return;return this},"relativePosition")};Ml.modelPosition=Ml.point=Ml.position;Ml.modelPositions=Ml.points=Ml.positions;Ml.renderedPoint=Ml.renderedPosition;Ml.relativePoint=Ml.relativePosition;lUe=Jue;og=Df={};Df.renderedBoundingBox=function(t){var e=this.boundingBox(t),r=this.cy(),n=r.zoom(),i=r.pan(),a=e.x1*n+i.x,s=e.x2*n+i.x,l=e.y1*n+i.y,u=e.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};Df.dirtyCompoundBoundsCache=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();return!e.styleEnabled()||!e.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,t||r.emitAndNotify("bounds")}}),this)};Df.updateCompoundBounds=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!t&&e.batching())return this;function r(s){if(!s.isParent())return;var l=s._private,u=s.children(),h=s.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:s.pstyle("min-width").pfValue,left:s.pstyle("min-width-bias-left"),right:s.pstyle("min-width-bias-right")},height:{val:s.pstyle("min-height").pfValue,top:s.pstyle("min-height-bias-top"),bottom:s.pstyle("min-height-bias-bottom")}},d=u.boundingBox({includeLabels:h,includeOverlays:!1,useCache:!1}),p=l.position;(d.w===0||d.h===0)&&(d={w:s.pstyle("width").pfValue,h:s.pstyle("height").pfValue},d.x1=p.x-d.w/2,d.x2=p.x+d.w/2,d.y1=p.y-d.h/2,d.y2=p.y+d.h/2);function m(L,I,R){var E=0,_=0,D=I+R;return L>0&&D>0&&(E=I/D*L,_=R/D*L),{biasDiff:E,biasComplementDiff:_}}o(m,"computeBiasValues");function g(L,I,R,E){if(R.units==="%")switch(E){case"width":return L>0?R.pfValue*L:0;case"height":return I>0?R.pfValue*I:0;case"average":return L>0&&I>0?R.pfValue*(L+I)/2:0;case"min":return L>0&&I>0?L>I?R.pfValue*I:R.pfValue*L:0;case"max":return L>0&&I>0?L>I?R.pfValue*L:R.pfValue*I:0;default:return 0}else return R.units==="px"?R.pfValue:0}o(g,"computePaddingValues");var y=f.width.left.value;f.width.left.units==="px"&&f.width.val>0&&(y=y*100/f.width.val);var v=f.width.right.value;f.width.right.units==="px"&&f.width.val>0&&(v=v*100/f.width.val);var x=f.height.top.value;f.height.top.units==="px"&&f.height.val>0&&(x=x*100/f.height.val);var b=f.height.bottom.value;f.height.bottom.units==="px"&&f.height.val>0&&(b=b*100/f.height.val);var T=m(f.width.val-d.w,y,v),S=T.biasDiff,w=T.biasComplementDiff,k=m(f.height.val-d.h,x,b),C=k.biasDiff,A=k.biasComplementDiff;l.autoPadding=g(d.w,d.h,s.pstyle("padding"),s.pstyle("padding-relative-to").value),l.autoWidth=Math.max(d.w,f.width.val),p.x=(-S+d.x1+d.x2+w)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-C+d.y1+d.y2+A)/2}o(r,"update");for(var n=0;ne.x2?i:e.x2,e.y1=ne.y2?a:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},"updateBounds"),mf=o(function(e,r){return r==null?e:Nl(e,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),Y2=o(function(e,r,n){return Us(e,r,n)},"prefixedProperty"),Rk=o(function(e,r,n){if(!r.cy().headless()){var i=r._private,a=i.rstyle,s=a.arrowWidth/2,l=r.pstyle(n+"-arrow-shape").value,u,h;if(l!=="none"){n==="source"?(u=a.srcX,h=a.srcY):n==="target"?(u=a.tgtX,h=a.tgtY):(u=a.midX,h=a.midY);var f=i.arrowBounds=i.arrowBounds||{},d=f[n]=f[n]||{};d.x1=u-s,d.y1=h-s,d.x2=u+s,d.y2=h+s,d.w=d.x2-d.x1,d.h=d.y2-d.y1,$k(d,1),Nl(e,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),NM=o(function(e,r,n){if(!r.cy().headless()){var i;n?i=n+"-":i="";var a=r._private,s=a.rstyle,l=r.pstyle(i+"label").strValue;if(l){var u=r.pstyle("text-halign"),h=r.pstyle("text-valign"),f=Y2(s,"labelWidth",n),d=Y2(s,"labelHeight",n),p=Y2(s,"labelX",n),m=Y2(s,"labelY",n),g=r.pstyle(i+"text-margin-x").pfValue,y=r.pstyle(i+"text-margin-y").pfValue,v=r.isEdge(),x=r.pstyle(i+"text-rotation"),b=r.pstyle("text-outline-width").pfValue,T=r.pstyle("text-border-width").pfValue,S=T/2,w=r.pstyle("text-background-padding").pfValue,k=2,C=d,A=f,L=A/2,I=C/2,R,E,_,D;if(v)R=p-L,E=p+L,_=m-I,D=m+I;else{switch(u.value){case"left":R=p-A,E=p;break;case"center":R=p-L,E=p+L;break;case"right":R=p,E=p+A;break}switch(h.value){case"top":_=m-C,D=m;break;case"center":_=m-I,D=m+I;break;case"bottom":_=m,D=m+C;break}}var O=g-Math.max(b,S)-w-k,N=g+Math.max(b,S)+w+k,P=y-Math.max(b,S)-w-k,B=y+Math.max(b,S)+w+k;R+=O,E+=N,_+=P,D+=B;var F=n||"main",V=a.labelBounds,$=V[F]=V[F]||{};$.x1=R,$.y1=_,$.x2=E,$.y2=D,$.w=E-R,$.h=D-_,$.leftPad=O,$.rightPad=N,$.topPad=P,$.botPad=B;var U=v&&x.strValue==="autorotate",j=x.pfValue!=null&&x.pfValue!==0;if(U||j){var ee=U?Y2(a.rstyle,"labelAngle",n):x.pfValue,q=Math.cos(ee),oe=Math.sin(ee),Q=(R+E)/2,ue=(_+D)/2;if(!v){switch(u.value){case"left":Q=E;break;case"right":Q=R;break}switch(h.value){case"top":ue=D;break;case"bottom":ue=_;break}}var te=o(function(Te,W){return Te=Te-Q,W=W-ue,{x:Te*q-W*oe+Q,y:Te*oe+W*q+ue}},"rotate"),re=te(R,_),J=te(R,D),K=te(E,_),ae=te(E,D);R=Math.min(re.x,J.x,K.x,ae.x),E=Math.max(re.x,J.x,K.x,ae.x),_=Math.min(re.y,J.y,K.y,ae.y),D=Math.max(re.y,J.y,K.y,ae.y)}var Z=F+"Rot",de=V[Z]=V[Z]||{};de.x1=R,de.y1=_,de.x2=E,de.y2=D,de.w=E-R,de.h=D-_,Nl(e,R,_,E,D),Nl(a.labelBounds.all,R,_,E,D)}return e}},"updateBoundsFromLabel"),vce=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("outline-opacity").value,i=r.pstyle("outline-width").value,a=r.pstyle("outline-offset").value,s=i+a;the(e,r,n,s,"outside",s/2)}},"updateBoundsFromOutline"),the=o(function(e,r,n,i,a,s){if(!(n===0||i<=0||a==="inside")){var l=r.cy(),u=r.pstyle("shape").value,h=l.renderer().nodeShapes[u],f=r.position(),d=f.x,p=f.y,m=r.width(),g=r.height();if(h.hasMiterBounds){a==="center"&&(i/=2);var y=h.miterBounds(d,p,m,g,i);mf(e,y)}else s!=null&&s>0&&zk(e,[s,s,s,s])}},"updateBoundsFromMiter"),cUe=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("border-opacity").value,i=r.pstyle("border-width").pfValue,a=r.pstyle("border-position").value;the(e,r,n,i,a)}},"updateBoundsFromMiterBorder"),uUe=o(function(e,r){var n=e._private.cy,i=n.styleEnabled(),a=n.headless(),s=cs(),l=e._private,u=e.isNode(),h=e.isEdge(),f,d,p,m,g,y,v=l.rstyle,x=u&&i?e.pstyle("bounds-expansion").pfValue:[0],b=o(function(ne){return ne.pstyle("display").value!=="none"},"isDisplayed"),T=!i||b(e)&&(!h||b(e.source())&&b(e.target()));if(T){var S=0,w=0;i&&r.includeOverlays&&(S=e.pstyle("overlay-opacity").value,S!==0&&(w=e.pstyle("overlay-padding").value));var k=0,C=0;i&&r.includeUnderlays&&(k=e.pstyle("underlay-opacity").value,k!==0&&(C=e.pstyle("underlay-padding").value));var A=Math.max(w,C),L=0,I=0;if(i&&(L=e.pstyle("width").pfValue,I=L/2),u&&r.includeNodes){var R=e.position();g=R.x,y=R.y;var E=e.outerWidth(),_=E/2,D=e.outerHeight(),O=D/2;f=g-_,d=g+_,p=y-O,m=y+O,Nl(s,f,p,d,m),i&&vce(s,e),i&&r.includeOutlines&&!a&&vce(s,e),i&&cUe(s,e)}else if(h&&r.includeEdges)if(i&&!a){var N=e.pstyle("curve-style").strValue;if(f=Math.min(v.srcX,v.midX,v.tgtX),d=Math.max(v.srcX,v.midX,v.tgtX),p=Math.min(v.srcY,v.midY,v.tgtY),m=Math.max(v.srcY,v.midY,v.tgtY),f-=I,d+=I,p-=I,m+=I,Nl(s,f,p,d,m),N==="haystack"){var P=v.haystackPts;if(P&&P.length===2){if(f=P[0].x,p=P[0].y,d=P[1].x,m=P[1].y,f>d){var B=f;f=d,d=B}if(p>m){var F=p;p=m,m=F}Nl(s,f-I,p-I,d+I,m+I)}}else if(N==="bezier"||N==="unbundled-bezier"||gf(N,"segments")||gf(N,"taxi")){var V;switch(N){case"bezier":case"unbundled-bezier":V=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":V=v.linePts;break}if(V!=null)for(var $=0;$d){var Q=f;f=d,d=Q}if(p>m){var ue=p;p=m,m=ue}f-=I,d+=I,p-=I,m+=I,Nl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(Rk(s,e,"mid-source"),Rk(s,e,"mid-target"),Rk(s,e,"source"),Rk(s,e,"target")),i){var te=e.pstyle("ghost").value==="yes";if(te){var re=e.pstyle("ghost-offset-x").pfValue,J=e.pstyle("ghost-offset-y").pfValue;Nl(s,s.x1+re,s.y1+J,s.x2+re,s.y2+J)}}var K=l.bodyBounds=l.bodyBounds||{};nle(K,s),zk(K,x),$k(K,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,Nl(s,f-A,p-A,d+A,m+A));var ae=l.overlayBounds=l.overlayBounds||{};nle(ae,s),zk(ae,x),$k(ae,1);var Z=l.labelBounds=l.labelBounds||{};Z.all!=null?qze(Z.all):Z.all=cs(),i&&r.includeLabels&&(r.includeMainLabels&&NM(s,e,null),h&&(r.includeSourceLabels&&NM(s,e,"source"),r.includeTargetLabels&&NM(s,e,"target")))}return s.x1=Xo(s.x1),s.y1=Xo(s.y1),s.x2=Xo(s.x2),s.y2=Xo(s.y2),s.w=Xo(s.x2-s.x1),s.h=Xo(s.y2-s.y1),s.w>0&&s.h>0&&T&&(zk(s,x),$k(s,1)),s},"boundingBoxImpl"),rhe=o(function(e){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};Cf.removeAllListeners=function(){return this.removeListener("*")};Cf.emit=Cf.trigger=function(t,e,r){var n=this.listeners,i=n.length;return this.emitting++,An(e)||(e=[e]),CUe(this,function(a,s){r!=null&&(n=[{event:s.event,type:s.type,namespace:s.namespace,callback:r}],i=n.length);for(var l=o(function(){var f=n[u];if(f.type===s.type&&(!f.namespace||f.namespace===s.namespace||f.namespace===EUe)&&a.eventMatches(a.context,f,s)){var d=[s];e!=null&&gze(d,e),a.beforeEmit(a.context,f,s),f.conf&&f.conf.one&&(a.listeners=a.listeners.filter(function(g){return g!==f}));var p=a.callbackContext(a.context,f,s),m=f.callback.apply(p,d);a.afterEmit(a.context,f,s),m===!1&&(s.stopPropagation(),s.preventDefault())}},"_loop2"),u=0;u1&&!s){var l=this.length-1,u=this[l],h=u._private.data.id;this[l]=void 0,this[e]=u,a.set(h,{ele:u,index:e})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(e){e=e[0];var r=this._private,n=e._private.data.id,i=r.map,a=i.get(n);if(!a)return this;var s=a.index;return this.unmergeAt(s),this},"unmergeOne"),unmerge:o(function(e){var r=this._private.cy;if(!e)return this;if(e&&Jt(e)){var n=e;e=r.mutableElements().filter(n)}for(var i=0;i=0;r--){var n=this[r];e(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(e,r){for(var n=[],i=this,a=0;an&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(e,r){for(var n=1/0,i,a=this,s=0;s=0&&a"u"?"undefined":$i(Symbol))!=e&&$i(Symbol.iterator)!=e;r&&(rE[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return cue({next:o(function(){return a1&&arguments[1]!==void 0?arguments[1]:!0,n=this[0],i=n.cy();if(i.styleEnabled()&&n){n._private.styleDirty&&(n._private.styleDirty=!1,i.style().apply(n));var a=n._private.style[e];return a??(r?i.style().getDefaultProperty(e):null)}},"parsedStyle"),numericStyle:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(e);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(e).units},"numericStyleUnits"),renderedStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,e)},"renderedStyle"),style:o(function(e,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(Yr(e)){var s=e;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(Jt(e))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,e):void 0}else a.applyBypass(this,e,r,i),this.emitAndNotify("style");else if(e===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(e===void 0)for(var s=0;s0&&e.push(f[0]),e.push(l[0])}return this.spawn(e,!0).filter(t)},"neighborhood"),closedNeighborhood:o(function(e){return this.neighborhood().add(this).filter(e)},"closedNeighborhood"),openNeighborhood:o(function(e){return this.neighborhood(e)},"openNeighborhood")});Fa.neighbourhood=Fa.neighborhood;Fa.closedNeighbourhood=Fa.closedNeighborhood;Fa.openNeighbourhood=Fa.openNeighborhood;ir(Fa,{source:jo(o(function(e){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&e?n.filter(e):n},"sourceImpl"),"source"),target:jo(o(function(e){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&e?n.filter(e):n},"targetImpl"),"target"),sources:Dce({attr:"source"}),targets:Dce({attr:"target"})});o(Dce,"defineSourceFunction");ir(Fa,{edgesWith:jo(Lce(),"edgesWith"),edgesTo:jo(Lce({thisIsSrc:!0}),"edgesTo")});o(Lce,"defineEdgesWithFunction");ir(Fa,{connectedEdges:jo(function(t){for(var e=[],r=this,n=0;n0);return s},"components"),component:o(function(){var e=this[0];return e.cy().mutableElements().components(e)[0]},"component")});Fa.componentsOf=Fa.components;xa=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){Kn("A collection must have a reference to the core");return}var a=new zu,s=!1;if(!r)r=[];else if(r.length>0&&Yr(r[0])&&!gx(r[0])){s=!0;for(var l=[],u=new hg,h=0,f=r.length;h0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=r.cy(),i=n._private,a=[],s=[],l,u=0,h=r.length;u0){for(var F=l.length===r.length?r:new xa(n,l),V=0;V0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=[],i={},a=r._private.cy;function s(D){for(var O=D._private.edges,N=0;N0&&(t?R.emitAndNotify("remove"):e&&R.emit("remove"));for(var E=0;Ef&&Math.abs(g.v)>f;);return p?function(y){return u[y*(u.length-1)|0]}:h},"springRK4Factory")})(),In=o(function(e,r,n,i){var a=PUe(e,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),Uk={linear:o(function(e,r,n){return e+(r-e)*n},"linear"),ease:In(.25,.1,.25,1),"ease-in":In(.42,0,1,1),"ease-out":In(0,0,.58,1),"ease-in-out":In(.42,0,.58,1),"ease-in-sine":In(.47,0,.745,.715),"ease-out-sine":In(.39,.575,.565,1),"ease-in-out-sine":In(.445,.05,.55,.95),"ease-in-quad":In(.55,.085,.68,.53),"ease-out-quad":In(.25,.46,.45,.94),"ease-in-out-quad":In(.455,.03,.515,.955),"ease-in-cubic":In(.55,.055,.675,.19),"ease-out-cubic":In(.215,.61,.355,1),"ease-in-out-cubic":In(.645,.045,.355,1),"ease-in-quart":In(.895,.03,.685,.22),"ease-out-quart":In(.165,.84,.44,1),"ease-in-out-quart":In(.77,0,.175,1),"ease-in-quint":In(.755,.05,.855,.06),"ease-out-quint":In(.23,1,.32,1),"ease-in-out-quint":In(.86,0,.07,1),"ease-in-expo":In(.95,.05,.795,.035),"ease-out-expo":In(.19,1,.22,1),"ease-in-out-expo":In(1,0,0,1),"ease-in-circ":In(.6,.04,.98,.335),"ease-out-circ":In(.075,.82,.165,1),"ease-in-out-circ":In(.785,.135,.15,.86),spring:o(function(e,r,n){if(n===0)return Uk.linear;var i=BUe(e,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":In};o(Nce,"getEasedValue");o(Mce,"getValue");o(jm,"ease");o(FUe,"step$1");o(j2,"valid");o($Ue,"startAnimation");o(Ice,"stepAll");zUe={animate:un.animate(),animation:un.animation(),animated:un.animated(),clearQueue:un.clearQueue(),delay:un.delay(),delayAnimation:un.delayAnimation(),stop:un.stop(),addToAnimationPool:o(function(e){var r=this;r.styleEnabled()&&r._private.aniEles.merge(e)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function r(){e._private.animationsRunning&&Qk(o(function(a){Ice(a,e),r()},"animationStep"))}o(r,"headlessStep");var n=e.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){Ice(s,e)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},GUe={qualifierCompare:o(function(e,r){return e==null||r==null?e==null&&r==null:e.sameText(r)},"qualifierCompare"),eventMatches:o(function(e,r,n){var i=r.qualifier;return i!=null?e!==n.target&&gx(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(e,r){r.cy=e,r.target=e},"addEventFields"),callbackContext:o(function(e,r,n){return r.qualifier!=null?n.target:e},"callbackContext")},Ik=o(function(e){return Jt(e)?new Ef(e):e},"argSelector"),dhe={createEmitter:o(function(){var e=this._private;return e.emitter||(e.emitter=new xE(GUe,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){return this.emitter().on(e,Ik(r),n),this},"on"),removeListener:o(function(e,r,n){return this.emitter().removeListener(e,Ik(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(e,r,n){return this.emitter().one(e,Ik(r),n),this},"one"),once:o(function(e,r,n){return this.emitter().one(e,Ik(r),n),this},"once"),emit:o(function(e,r){return this.emitter().emit(e,r),this},"emit"),emitAndNotify:o(function(e,r){return this.emit(e),this.notify(e,r),this},"emitAndNotify")};un.eventAliasesOn(dhe);ZM={png:o(function(e){var r=this._private.renderer;return e=e||{},r.png(e)},"png"),jpg:o(function(e){var r=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",r.jpg(e)},"jpg")};ZM.jpeg=ZM.jpg;Hk={layout:o(function(e){var r=this;if(e==null){Kn("Layout options must be specified to make a layout");return}if(e.name==null){Kn("A `name` must be specified to make a layout");return}var n=e.name,i=r.extension("layout",n);if(i==null){Kn("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;Jt(e.eles)?a=r.$(e.eles):a=e.eles!=null?e.eles:r.$();var s=new i(ir({},e,{cy:r,eles:a}));return s},"layout")};Hk.createLayout=Hk.makeLayout=Hk.layout;VUe={notify:o(function(e,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(e,r)}},"notify"),notifications:o(function(e){var r=this._private;return e===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!e,this)},"notifications"),noNotifications:o(function(e){this.notifications(!1),e(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var e=this._private;return e.batchCount==null&&(e.batchCount=0),e.batchCount===0&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},"startBatch"),endBatch:o(function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(e.batchNotifications).forEach(function(n){var i=e.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(e){return this.startBatch(),e(),this.endBatch(),this},"batch"),batchData:o(function(e){var r=this;return this.batch(function(){for(var n=Object.keys(e),i=0;i0;)r.removeChild(r.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(e){return this.on("render",e)},"onRender"),offRender:o(function(e){return this.off("render",e)},"offRender")};JM.invalidateDimensions=JM.resize;qk={collection:o(function(e,r){return Jt(e)?this.$(e):fo(e)?e.collection():An(e)?(r||(r={}),new xa(this,e,r.unique,r.removed)):new xa(this)},"collection"),nodes:o(function(e){var r=this.$(function(n){return n.isNode()});return e?r.filter(e):r},"nodes"),edges:o(function(e){var r=this.$(function(n){return n.isEdge()});return e?r.filter(e):r},"edges"),$:o(function(e){var r=this._private.elements;return e?r.filter(e):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};qk.elements=qk.filter=qk.$;na={},rx="t",HUe="f";na.apply=function(t){for(var e=this,r=e._private,n=r.cy,i=n.collection(),a=0;a0;if(p||d&&m){var g=void 0;p&&m||p?g=h.properties:m&&(g=h.mappedProperties);for(var y=0;y1&&(S=1),l.color){var k=n.valueMin[0],C=n.valueMax[0],A=n.valueMin[1],L=n.valueMax[1],I=n.valueMin[2],R=n.valueMax[2],E=n.valueMin[3]==null?1:n.valueMin[3],_=n.valueMax[3]==null?1:n.valueMax[3],D=[Math.round(k+(C-k)*S),Math.round(A+(L-A)*S),Math.round(I+(R-I)*S),Math.round(E+(_-E)*S)];a={bypass:n.bypass,name:n.name,value:D,strValue:"rgb("+D[0]+", "+D[1]+", "+D[2]+")"}}else if(l.number){var O=n.valueMin+(n.valueMax-n.valueMin)*S;a=this.parse(n.name,O,n.bypass,p)}else return!1;if(!a)return y(),!1;a.mapping=n,n=a;break}case s.data:{for(var N=n.field.split("."),P=d.data,B=0;B0&&a>0){for(var l={},u=!1,h=0;h0?t.delayAnimation(s).play().promise().then(T):T()}).then(function(){return t.animation({style:l,duration:a,easing:t.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1)};na.checkTrigger=function(t,e,r,n,i,a){var s=this.properties[e],l=i(s);t.removed()||l!=null&&l(r,n,t)&&a(s)};na.checkZOrderTrigger=function(t,e,r,n){var i=this;this.checkTrigger(t,e,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",t)})};na.checkBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBounds},function(i){t.dirtyCompoundBoundsCache(),t.dirtyBoundingBoxCache()})};na.checkConnectedEdgesBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBoundsOfConnectedEdges},function(i){t.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};na.checkParallelEdgesBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBoundsOfParallelEdges},function(i){t.parallelEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};na.checkTriggers=function(t,e,r,n){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,r,n),this.checkBoundsTrigger(t,e,r,n),this.checkConnectedEdgesBoundsTrigger(t,e,r,n),this.checkParallelEdgesBoundsTrigger(t,e,r,n)};kx={};kx.applyBypass=function(t,e,r,n){var i=this,a=[],s=!0;if(e==="*"||e==="**"){if(r!==void 0)for(var l=0;li.length?n=n.substr(i.length):n=""}o(l,"removeSelAndBlockFromRemaining");function u(){a.length>s.length?a=a.substr(s.length):a=""}for(o(u,"removePropAndValFromRem");;){var h=n.match(/^\s*$/);if(h)break;var f=n.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){hn("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+n);break}i=f[0];var d=f[1];if(d!=="core"){var p=new Ef(d);if(p.invalid){hn("Skipping parsing of block: Invalid selector found in string stylesheet: "+d),l();continue}}var m=f[2],g=!1;a=m;for(var y=[];;){var v=a.match(/^\s*$/);if(v)break;var x=a.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!x){hn("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+m),g=!0;break}s=x[0];var b=x[1],T=x[2],S=e.properties[b];if(!S){hn("Skipping property: Invalid property name in: "+s),u();continue}var w=r.parse(b,T);if(!w){hn("Skipping property: Invalid property definition in: "+s),u();continue}y.push({name:b,val:T}),u()}if(g){l();break}r.selector(d);for(var k=0;k=7&&e[0]==="d"&&(f=new RegExp(l.data.regex).exec(e))){if(r)return!1;var p=l.data;return{name:t,value:f,strValue:""+e,mapped:p,field:f[1],bypass:r}}else if(e.length>=10&&e[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(e))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(t,d[4]);if(!g||g.mapped)return!1;var y=this.parse(t,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return hn("`"+t+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+t+": "+g.strValue+"`"),this.parse(t,g.strValue);if(h.color){var v=g.value,x=y.value,b=v[0]===x[0]&&v[1]===x[1]&&v[2]===x[2]&&(v[3]===x[3]||(v[3]==null||v[3]===1)&&(x[3]==null||x[3]===1));if(b)return!1}return{name:t,value:d,strValue:""+e,mapped:m,field:d[1],fieldMin:parseFloat(d[2]),fieldMax:parseFloat(d[3]),valueMin:g.value,valueMax:y.value,bypass:r}}}if(h.multiple&&n!=="multiple"){var T;if(u?T=e.split(/\s+/):An(e)?T=e:T=[e],h.evenMultiple&&T.length%2!==0)return null;for(var S=[],w=[],k=[],C="",A=!1,L=0;L0?" ":"")+I.strValue}return h.validate&&!h.validate(S,w)?null:h.singleEnum&&A?S.length===1&&Jt(S[0])?{name:t,value:S[0],strValue:S[0],bypass:r}:null:{name:t,value:S,pfValue:k,strValue:C,bypass:r,units:w}}var R=o(function(){for(var te=0;teh.max||h.strictMax&&e===h.max))return null;var N={name:t,value:e,strValue:""+e+(E||""),units:E,bypass:r};return h.unitless||E!=="px"&&E!=="em"?N.pfValue=e:N.pfValue=E==="px"||!E?e:this.getEmSizeInPixels()*e,(E==="ms"||E==="s")&&(N.pfValue=E==="ms"?e:1e3*e),(E==="deg"||E==="rad")&&(N.pfValue=E==="rad"?e:Gze(e)),E==="%"&&(N.pfValue=e/100),N}else if(h.propList){var P=[],B=""+e;if(B!=="none"){for(var F=B.split(/\s*,\s*|\s+/),V=0;V0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0){u=Math.min((s-2*r)/n.w,(l-2*r)/n.h),u=u>this._private.maxZoom?this._private.maxZoom:u,u=u=n.minZoom&&(n.maxZoom=r),this},"zoomRange"),minZoom:o(function(e){return e===void 0?this._private.minZoom:this.zoomRange({min:e})},"minZoom"),maxZoom:o(function(e){return e===void 0?this._private.maxZoom:this.zoomRange({max:e})},"maxZoom"),getZoomedViewport:o(function(e){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),At(e)?s=e:Yr(e)&&(s=e.level,e.position!=null?a=fE(e.position,i,n):e.renderedPosition!=null&&(a=e.renderedPosition),a!=null&&!r.panningEnabled&&(l=!0)),s=s>r.maxZoom?r.maxZoom:s,s=sr.maxZoom||!r.zoomingEnabled?s=!0:(r.zoom=u,a.push("zoom"))}if(i&&(!s||!e.cancelOnFailedZoom)&&r.panningEnabled){var h=e.pan;At(h.x)&&(r.pan.x=h.x,l=!1),At(h.y)&&(r.pan.y=h.y,l=!1),l||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},"viewport"),center:o(function(e){var r=this.getCenterPan(e);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(e,r){if(this._private.panningEnabled){if(Jt(e)){var n=e;e=this.mutableElements().filter(n)}else fo(e)||(e=this.mutableElements());if(e.length!==0){var i=e.boundingBox(),a=this.width(),s=this.height();r=r===void 0?this._private.zoom:r;var l={x:(a-r*(i.x1+i.x2))/2,y:(s-r*(i.y1+i.y2))/2};return l}}},"getCenterPan"),reset:o(function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},"reset"),invalidateSize:o(function(){this._private.sizeCache=null},"invalidateSize"),size:o(function(){var e=this._private,r=e.container,n=this;return e.sizeCache=e.sizeCache||(r?(function(){var i=n.window().getComputedStyle(r),a=o(function(l){return parseFloat(i.getPropertyValue(l))},"val");return{width:r.clientWidth-a("padding-left")-a("padding-right"),height:r.clientHeight-a("padding-top")-a("padding-bottom")}})():{width:1,height:1})},"size"),width:o(function(){return this.size().width},"width"),height:o(function(){return this.size().height},"height"),extent:o(function(){var e=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-e.x)/r,x2:(n.x2-e.x)/r,y1:(n.y1-e.y)/r,y2:(n.y2-e.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var e=this.width(),r=this.height();return{x1:0,y1:0,x2:e,y2:r,w:e,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};kp.centre=kp.center;kp.autolockNodes=kp.autolock;kp.autoungrabifyNodes=kp.autoungrabify;fx={data:un.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:un.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:un.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:un.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};fx.attr=fx.data;fx.removeAttr=fx.removeData;dx=o(function(e){var r=this;e=ir({},e);var n=e.container;n&&!Kk(n)&&Kk(n[0])&&(n=n[0]);var i=n?n._cyreg:null;i=i||{},i&&i.cy&&(i.cy.destroy(),i={});var a=i.readies=i.readies||[];n&&(n._cyreg=i),i.cy=r;var s=Bi!==void 0&&n!==void 0&&!e.headless,l=e;l.layout=ir({name:s?"grid":"null"},l.layout),l.renderer=ir({name:s?"canvas":"null"},l.renderer);var u=o(function(g,y,v){return y!==void 0?y:v!==void 0?v:g},"defVal"),h=this._private={container:n,ready:!1,options:l,elements:new xa(this),listeners:[],aniEles:new xa(this),data:l.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:u(!0,l.zoomingEnabled),userZoomingEnabled:u(!0,l.userZoomingEnabled),panningEnabled:u(!0,l.panningEnabled),userPanningEnabled:u(!0,l.userPanningEnabled),boxSelectionEnabled:u(!0,l.boxSelectionEnabled),autolock:u(!1,l.autolock,l.autolockNodes),autoungrabify:u(!1,l.autoungrabify,l.autoungrabifyNodes),autounselectify:u(!1,l.autounselectify),styleEnabled:l.styleEnabled===void 0?s:l.styleEnabled,zoom:At(l.zoom)?l.zoom:1,pan:{x:Yr(l.pan)&&At(l.pan.x)?l.pan.x:0,y:Yr(l.pan)&&At(l.pan.y)?l.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:u(250,l.multiClickDebounceTime)};this.createEmitter(),this.selectionType(l.selectionType),this.zoomRange({min:l.minZoom,max:l.maxZoom});var f=o(function(g,y){var v=g.some(O$e);if(v)return fg.all(g).then(y);y(g)},"loadExtData");h.styleEnabled&&r.setStyle([]);var d=ir({},l,l.renderer);r.initRenderer(d);var p=o(function(g,y,v){r.notifications(!1);var x=r.mutableElements();x.length>0&&x.remove(),g!=null&&(Yr(g)||An(g))&&r.add(g),r.one("layoutready",function(T){r.notifications(!0),r.emit(T),r.one("load",y),r.emitAndNotify("load")}).one("layoutstop",function(){r.one("done",v),r.emit("done")});var b=ir({},r._private.options.layout);b.eles=r.elements(),r.layout(b).run()},"setElesAndLayout");f([l.style,l.elements],function(m){var g=m[0],y=m[1];h.styleEnabled&&r.style().append(g),p(y,function(){r.startAnimationLoop(),h.ready=!0,oi(l.ready)&&r.on("ready",l.ready);for(var v=0;v0,l=!!t.boundingBox,u=cs(l?t.boundingBox:structuredClone(e.extent())),h;if(fo(t.roots))h=t.roots;else if(An(t.roots)){for(var f=[],d=0;d0;){var D=_(),O=L(D,R);if(O)D.outgoers().filter(function(Ve){return Ve.isNode()&&r.has(Ve)}).forEach(E);else if(O===null){hn("Detected double maximal shift for node `"+D.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var N=0;if(t.avoidOverlap)for(var P=0;P0&&x[0].length<=3?Le/2:0),Ne=2*Math.PI/x[Ye].length*He;return Ye===0&&x[0].length===1&&(Ie=1),{x:K.x+Ie*Math.cos(Ne),y:K.y+Ie*Math.sin(Ne)}}else{var Ce=x[Ye].length,Fe=Math.max(Ce===1?0:l?(u.w-t.padding*2-ae.w)/((t.grid?de:Ce)-1):(u.w-t.padding*2-ae.w)/((t.grid?de:Ce)+1),N),fe={x:K.x+(He+1-(Ce+1)/2)*Fe,y:K.y+(Ye+1-(q+1)/2)*Z};return fe}},"getPositionTopBottom"),Te={downward:0,leftward:90,upward:180,rightward:-90};Object.keys(Te).indexOf(t.direction)===-1&&Kn("Invalid direction '".concat(t.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(Te).join(", ")));var W=o(function(pe){return uze(ne(pe),u,Te[t.direction])},"getPosition");return r.nodes().layoutPositions(this,t,W),this};jUe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(mhe,"CircleLayout");mhe.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,a=n.nodes().not(":parent");e.sort&&(a=a.sort(e.sort));for(var s=cs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=e.sweep===void 0?2*Math.PI-2*Math.PI/a.length:e.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p1&&e.avoidOverlap){d*=1.75;var x=Math.cos(h)-Math.cos(0),b=Math.sin(h)-Math.sin(0),T=Math.sqrt(d*d/(x*x+b*b));f=Math.max(T,f)}var S=o(function(k,C){var A=e.startAngle+C*h*(i?1:-1),L=f*Math.cos(A),I=f*Math.sin(A),R={x:l.x+L,y:l.y+I};return R},"getPos");return n.nodes().layoutPositions(this,e,S),this};KUe={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:o(function(e){return e.degree()},"concentric"),levelWidth:o(function(e){return e.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(ghe,"ConcentricLayout");ghe.prototype.run=function(){for(var t=this.options,e=t,r=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,n=t.cy,i=e.eles,a=i.nodes().not(":parent"),s=cs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=[],h=0,f=0;f0){var w=Math.abs(b[0].value-S.value);w>=v&&(b=[],x.push(b))}b.push(S)}var k=h+e.minNodeSpacing;if(!e.avoidOverlap){var C=x.length>0&&x[0].length>1,A=Math.min(s.w,s.h)/2-k,L=A/(x.length+C?1:0);k=Math.min(k,L)}for(var I=0,R=0;R1&&e.avoidOverlap){var O=Math.cos(D)-Math.cos(0),N=Math.sin(D)-Math.sin(0),P=Math.sqrt(k*k/(O*O+N*N));I=Math.max(P,I)}E.r=I,I+=k}if(e.equidistant){for(var B=0,F=0,V=0;V=t.numIter||(nHe(n,t),n.temperature=n.temperature*t.coolingFactor,n.temperature=t.animationThreshold&&a(),Qk(f)}},"frame");f()}else{for(;h;)h=s(u),u++;Bce(n,t),l()}return this};EE.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};EE.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};ZUe=o(function(e,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=cs(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),l={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:n.initialTemp,clientWidth:s.w,clientHeight:s.h,boundingBox:s},u=n.eles.components(),h={},f=0;f0){l.graphSet.push(A);for(var f=0;fi.count?0:i.graph},"findLCA"),yhe=o(function(e,r,n,i){var a=i.graphSet[n];if(-10)var d=i.nodeOverlap*f,p=Math.sqrt(l*l+u*u),m=d*l/p,g=d*u/p;else var y=iE(e,l,u),v=iE(r,-1*l,-1*u),x=v.x-y.x,b=v.y-y.y,T=x*x+b*b,p=Math.sqrt(T),d=(e.nodeRepulsion+r.nodeRepulsion)/T,m=d*x/p,g=d*b/p;e.isLocked||(e.offsetX-=m,e.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),sHe=o(function(e,r,n,i){if(n>0)var a=e.maxX-r.minX;else var a=r.maxX-e.minX;if(i>0)var s=e.maxY-r.minY;else var s=r.maxY-e.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),iE=o(function(e,r,n){var i=e.positionX,a=e.positionY,s=e.height||1,l=e.width||1,u=n/r,h=s/l,f={};return r===0&&0n?(f.x=i,f.y=a+s/2,f):0r&&-1*h<=u&&u<=h?(f.x=i-l/2,f.y=a-l*n/2/r,f):0=h)?(f.x=i+s*r/2/n,f.y=a+s/2,f):(0>n&&(u<=-1*h||u>=h)&&(f.x=i-s*r/2/n,f.y=a-s/2),f)},"findClippingPoint"),oHe=o(function(e,r){for(var n=0;nn){var v=r.gravity*m/y,x=r.gravity*g/y;p.offsetX+=v,p.offsetY+=x}}}}},"calculateGravityForces"),cHe=o(function(e,r){var n=[],i=0,a=-1;for(n.push.apply(n,e.graphSet[0]),a+=e.graphSet[0].length;i<=a;){var s=n[i++],l=e.idToIndex[s],u=e.layoutNodes[l],h=u.children;if(0n)var a={x:n*e/i,y:n*r/i};else var a={x:e,y:r};return a},"limitForce"),xhe=o(function(e,r){var n=e.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||e.maxX+i.padRight>i.maxX)&&(i.maxX=e.maxX+i.padRight,a=!0),(i.minX==null||e.minX-i.padLefti.maxY)&&(i.maxY=e.maxY+i.padBottom,a=!0),(i.minY==null||e.minY-i.padTopx&&(g+=v+r.componentSpacing,m=0,y=0,v=0)}}},"separateComponents"),fHe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:o(function(e){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(bhe,"GridLayout");bhe.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=n.nodes().not(":parent");e.sort&&(i=i.sort(e.sort));var a=cs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,e,function(j){return{x:a.x1,y:a.y1}});else{var s=i.size(),l=Math.sqrt(s*a.h/a.w),u=Math.round(l),h=Math.round(a.w/a.h*l),f=o(function(ee){if(ee==null)return Math.min(u,h);var q=Math.min(u,h);q==u?u=ee:h=ee},"small"),d=o(function(ee){if(ee==null)return Math.max(u,h);var q=Math.max(u,h);q==u?u=ee:h=ee},"large"),p=e.rows,m=e.cols!=null?e.cols:e.columns;if(p!=null&&m!=null)u=p,h=m;else if(p!=null&&m==null)u=p,h=Math.ceil(s/u);else if(p==null&&m!=null)h=m,u=Math.ceil(s/h);else if(h*u>s){var g=f(),y=d();(g-1)*y>=s?f(g-1):(y-1)*g>=s&&d(y-1)}else for(;h*u=s?d(x+1):f(v+1)}var b=a.w/h,T=a.h/u;if(e.condense&&(b=0,T=0),e.avoidOverlap)for(var S=0;S=h&&(O=0,D++)},"moveToNextCell"),P={},B=0;B(O=tGe(t,e,N[P],N[P+1],N[P+2],N[P+3])))return v(C,O),!0}else if(L.edgeType==="bezier"||L.edgeType==="multibezier"||L.edgeType==="self"||L.edgeType==="compound"){for(var N=L.allpts,P=0;P+5(O=eGe(t,e,N[P],N[P+1],N[P+2],N[P+3],N[P+4],N[P+5])))return v(C,O),!0}for(var B=B||A.source,F=F||A.target,V=i.getArrowWidth(I,R),$=[{name:"source",x:L.arrowStartX,y:L.arrowStartY,angle:L.srcArrowAngle},{name:"target",x:L.arrowEndX,y:L.arrowEndY,angle:L.tgtArrowAngle},{name:"mid-source",x:L.midX,y:L.midY,angle:L.midsrcArrowAngle},{name:"mid-target",x:L.midX,y:L.midY,angle:L.midtgtArrowAngle}],P=0;P<$.length;P++){var U=$[P],j=a.arrowShapes[C.pstyle(U.name+"-arrow-shape").value],ee=C.pstyle("width").pfValue;if(j.roughCollide(t,e,V,U.angle,{x:U.x,y:U.y},ee,f)&&j.collide(t,e,V,U.angle,{x:U.x,y:U.y},ee,f))return v(C),!0}h&&l.length>0&&(x(B),x(F))}o(b,"checkEdge");function T(C,A,L){return Us(C,A,L)}o(T,"preprop");function S(C,A){var L=C._private,I=p,R;A?R=A+"-":R="",C.boundingBox();var E=L.labelBounds[A||"main"],_=C.pstyle(R+"label").value,D=C.pstyle("text-events").strValue==="yes";if(!(!D||!_)){var O=T(L.rscratch,"labelX",A),N=T(L.rscratch,"labelY",A),P=T(L.rscratch,"labelAngle",A),B=C.pstyle(R+"text-margin-x").pfValue,F=C.pstyle(R+"text-margin-y").pfValue,V=E.x1-I-B,$=E.x2+I-B,U=E.y1-I-F,j=E.y2+I-F;if(P){var ee=Math.cos(P),q=Math.sin(P),oe=o(function(ae,Z){return ae=ae-O,Z=Z-N,{x:ae*ee-Z*q+O,y:ae*q+Z*ee+N}},"rotate"),Q=oe(V,U),ue=oe(V,j),te=oe($,U),re=oe($,j),J=[Q.x+B,Q.y+F,te.x+B,te.y+F,re.x+B,re.y+F,ue.x+B,ue.y+F];if(Hs(t,e,J))return v(C),!0}else if(yf(E,t,e))return v(C),!0}}o(S,"checkLabel");for(var w=s.length-1;w>=0;w--){var k=s[w];k.isNode()?x(k)||S(k):b(k)||S(k)||S(k,"source")||S(k,"target")}return l};Sp.getAllInBox=function(t,e,r,n){var i=this.getCachedZSortedEles().interactive,a=this.cy.zoom(),s=2/a,l=[],u=Math.min(t,r),h=Math.max(t,r),f=Math.min(e,n),d=Math.max(e,n);t=u,r=h,e=f,n=d;var p=cs({x1:t,y1:e,x2:r,y2:n}),m=[{x:p.x1,y:p.y1},{x:p.x2,y:p.y1},{x:p.x2,y:p.y2},{x:p.x1,y:p.y2}],g=[[m[0],m[1]],[m[1],m[2]],[m[2],m[3]],[m[3],m[0]]];function y(ae,Z,de){return Us(ae,Z,de)}o(y,"preprop");function v(ae,Z){var de=ae._private,ne=s,Te="";ae.boundingBox();var W=de.labelBounds.main;if(!W)return null;var Ve=y(de.rscratch,"labelX",Z),pe=y(de.rscratch,"labelY",Z),Be=y(de.rscratch,"labelAngle",Z),Ye=ae.pstyle(Te+"text-margin-x").pfValue,He=ae.pstyle(Te+"text-margin-y").pfValue,Le=W.x1-ne-Ye,Ie=W.x2+ne-Ye,Ne=W.y1-ne-He,Ce=W.y2+ne-He;if(Be){var Fe=Math.cos(Be),fe=Math.sin(Be),xe=o(function(he,z){return he=he-Ve,z=z-pe,{x:he*Fe-z*fe+Ve,y:he*fe+z*Fe+pe}},"rotate");return[xe(Le,Ne),xe(Ie,Ne),xe(Ie,Ce),xe(Le,Ce)]}else return[{x:Le,y:Ne},{x:Ie,y:Ne},{x:Ie,y:Ce},{x:Le,y:Ce}]}o(v,"getRotatedLabelBox");function x(ae,Z,de,ne){function Te(W,Ve,pe){return(pe.y-W.y)*(Ve.x-W.x)>(Ve.y-W.y)*(pe.x-W.x)}return o(Te,"ccw"),Te(ae,de,ne)!==Te(Z,de,ne)&&Te(ae,Z,de)!==Te(ae,Z,ne)}o(x,"doLinesIntersect");for(var b=0;b0?-(Math.PI-e.ang):Math.PI+e.ang},"invertVec"),vHe=o(function(e,r,n,i,a){if(e!==Vce?Uce(r,e,Ic):yHe(Yo,Ic),Uce(r,n,Yo),zce=Ic.nx*Yo.ny-Ic.ny*Yo.nx,Gce=Ic.nx*Yo.nx-Ic.ny*-Yo.ny,Fu=Math.asin(Math.max(-1,Math.min(1,zce))),Math.abs(Fu)<1e-6){eI=r.x,tI=r.y,gp=Qm=0;return}vp=1,Wk=!1,Gce<0?Fu<0?Fu=Math.PI+Fu:(Fu=Math.PI-Fu,vp=-1,Wk=!0):Fu>0&&(vp=-1,Wk=!0),r.radius!==void 0?Qm=r.radius:Qm=i,fp=Fu/2,Ok=Math.min(Ic.len/2,Yo.len/2),a?(Nc=Math.abs(Math.cos(fp)*Qm/Math.sin(fp)),Nc>Ok?(Nc=Ok,gp=Math.abs(Nc*Math.sin(fp)/Math.cos(fp))):gp=Qm):(Nc=Math.min(Ok,Qm),gp=Math.abs(Nc*Math.sin(fp)/Math.cos(fp))),rI=r.x+Yo.nx*Nc,nI=r.y+Yo.ny*Nc,eI=rI-Yo.ny*gp*vp,tI=nI+Yo.nx*gp*vp,Ehe=r.x+Ic.nx*Nc,She=r.y+Ic.ny*Nc,Vce=r},"calcCornerArc");o(Che,"drawPreparedRoundCorner");o(LI,"getRoundCorner");px=.01,xHe=Math.sqrt(2*px),za={};za.findMidptPtsEtc=function(t,e){var r=e.posPts,n=e.intersectionPts,i=e.vectorNormInverse,a,s=t.pstyle("source-endpoint"),l=t.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(w,k,C,A){var L=A-k,I=C-w,R=Math.sqrt(I*I+L*L);return{x:-L/R,y:I/R}},"recalcVectorNormInverse"),f=t.pstyle("edge-distances").value;switch(f){case"node-position":a=r;break;case"intersection":a=n;break;case"endpoints":{if(u){var d=this.manualEndptToPx(t.source()[0],s),p=_i(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(t.target()[0],l),v=_i(y,2),x=v[0],b=v[1],T={x1:m,y1:g,x2:x,y2:b};i=h(m,g,x,b),a=T}else hn("Edge ".concat(t.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),a=n;break}}return{midptPts:a,vectorNormInverse:i}};za.findHaystackPoints=function(t){for(var e=0;e0?Math.max(z-se,0):Math.min(z+se,0)},"subDWH"),_=E(I,A),D=E(R,L),O=!1;b===h?x=Math.abs(_)>Math.abs(D)?i:n:b===u||b===l?(x=n,O=!0):(b===a||b===s)&&(x=i,O=!0);var N=x===n,P=N?D:_,B=N?R:I,F=yI(B),V=!1;!(O&&(S||k))&&(b===l&&B<0||b===u&&B>0||b===a&&B>0||b===s&&B<0)&&(F*=-1,P=F*Math.abs(P),V=!0);var $;if(S){var U=w<0?1+w:w;$=U*P}else{var j=w<0?P:0;$=j+w*F}var ee=o(function(z){return Math.abs(z)=Math.abs(P)},"getIsTooClose"),q=ee($),oe=ee(Math.abs(P)-Math.abs($)),Q=q||oe;if(Q&&!V)if(N){var ue=Math.abs(B)<=p/2,te=Math.abs(I)<=m/2;if(ue){var re=(f.x1+f.x2)/2,J=f.y1,K=f.y2;r.segpts=[re,J,re,K]}else if(te){var ae=(f.y1+f.y2)/2,Z=f.x1,de=f.x2;r.segpts=[Z,ae,de,ae]}else r.segpts=[f.x1,f.y2]}else{var ne=Math.abs(B)<=d/2,Te=Math.abs(R)<=g/2;if(ne){var W=(f.y1+f.y2)/2,Ve=f.x1,pe=f.x2;r.segpts=[Ve,W,pe,W]}else if(Te){var Be=(f.x1+f.x2)/2,Ye=f.y1,He=f.y2;r.segpts=[Be,Ye,Be,He]}else r.segpts=[f.x2,f.y1]}else if(N){var Le=f.y1+$+(v?p/2*F:0),Ie=f.x1,Ne=f.x2;r.segpts=[Ie,Le,Ne,Le]}else{var Ce=f.x1+$+(v?d/2*F:0),Fe=f.y1,fe=f.y2;r.segpts=[Ce,Fe,Ce,fe]}if(r.isRound){var xe=t.pstyle("taxi-radius").value,Y=t.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(xe),r.isArcRadius=new Array(r.segpts.length/2).fill(Y)}};za.tryToCorrectInvalidPoints=function(t,e){var r=t._private.rscratch;if(r.edgeType==="bezier"){var n=e.srcPos,i=e.tgtPos,a=e.srcW,s=e.srcH,l=e.tgtW,u=e.tgtH,h=e.srcShape,f=e.tgtShape,d=e.srcCornerRadius,p=e.tgtCornerRadius,m=e.srcRs,g=e.tgtRs,y=!At(r.startX)||!At(r.startY),v=!At(r.arrowStartX)||!At(r.arrowStartY),x=!At(r.endX)||!At(r.endY),b=!At(r.arrowEndX)||!At(r.arrowEndY),T=3,S=this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth,w=T*S,k=Tp({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),C=kB.poolIndex()){var F=P;P=B,B=F}var V=_.srcPos=P.position(),$=_.tgtPos=B.position(),U=_.srcW=P.outerWidth(),j=_.srcH=P.outerHeight(),ee=_.tgtW=B.outerWidth(),q=_.tgtH=B.outerHeight(),oe=_.srcShape=r.nodeShapes[e.getNodeShape(P)],Q=_.tgtShape=r.nodeShapes[e.getNodeShape(B)],ue=_.srcCornerRadius=P.pstyle("corner-radius").value==="auto"?"auto":P.pstyle("corner-radius").pfValue,te=_.tgtCornerRadius=B.pstyle("corner-radius").value==="auto"?"auto":B.pstyle("corner-radius").pfValue,re=_.tgtRs=B._private.rscratch,J=_.srcRs=P._private.rscratch;_.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var K=0;K<_.eles.length;K++){var ae=_.eles[K],Z=ae[0]._private.rscratch,de=ae.pstyle("curve-style").value,ne=de==="unbundled-bezier"||gf(de,"segments")||gf(de,"taxi"),Te=!P.same(ae.source());if(!_.calculatedIntersection&&P!==B&&(_.hasBezier||_.hasUnbundled)){_.calculatedIntersection=!0;var W=oe.intersectLine(V.x,V.y,U,j,$.x,$.y,0,ue,J),Ve=_.srcIntn=W,pe=Q.intersectLine($.x,$.y,ee,q,V.x,V.y,0,te,re),Be=_.tgtIntn=pe,Ye=_.intersectionPts={x1:W[0],x2:pe[0],y1:W[1],y2:pe[1]},He=_.posPts={x1:V.x,x2:$.x,y1:V.y,y2:$.y},Le=pe[1]-W[1],Ie=pe[0]-W[0],Ne=Math.sqrt(Ie*Ie+Le*Le);At(Ne)&&Ne>=xHe||(Ne=Math.sqrt(Math.max(Ie*Ie,px)+Math.max(Le*Le,px)));var Ce=_.vector={x:Ie,y:Le},Fe=_.vectorNorm={x:Ce.x/Ne,y:Ce.y/Ne},fe={x:-Fe.y,y:Fe.x};_.nodesOverlap=!At(Ne)||Q.checkPoint(W[0],W[1],0,ee,q,$.x,$.y,te,re)||oe.checkPoint(pe[0],pe[1],0,U,j,V.x,V.y,ue,J),_.vectorNormInverse=fe,D={nodesOverlap:_.nodesOverlap,dirCounts:_.dirCounts,calculatedIntersection:!0,hasBezier:_.hasBezier,hasUnbundled:_.hasUnbundled,eles:_.eles,srcPos:$,srcRs:re,tgtPos:V,tgtRs:J,srcW:ee,srcH:q,tgtW:U,tgtH:j,srcIntn:Be,tgtIntn:Ve,srcShape:Q,tgtShape:oe,posPts:{x1:He.x2,y1:He.y2,x2:He.x1,y2:He.y1},intersectionPts:{x1:Ye.x2,y1:Ye.y2,x2:Ye.x1,y2:Ye.y1},vector:{x:-Ce.x,y:-Ce.y},vectorNorm:{x:-Fe.x,y:-Fe.y},vectorNormInverse:{x:-fe.x,y:-fe.y}}}var xe=Te?D:_;Z.nodesOverlap=xe.nodesOverlap,Z.srcIntn=xe.srcIntn,Z.tgtIntn=xe.tgtIntn,Z.isRound=de.startsWith("round"),i&&(P.isParent()||P.isChild()||B.isParent()||B.isChild())&&(P.parents().anySame(B)||B.parents().anySame(P)||P.same(B)&&P.isParent())?e.findCompoundLoopPoints(ae,xe,K,ne):P===B?e.findLoopPoints(ae,xe,K,ne):de.endsWith("segments")?e.findSegmentsPoints(ae,xe):de.endsWith("taxi")?e.findTaxiPoints(ae,xe):de==="straight"||!ne&&_.eles.length%2===1&&K===Math.floor(_.eles.length/2)?e.findStraightEdgePoints(ae):e.findBezierPoints(ae,xe,K,ne,Te),e.findEndpoints(ae),e.tryToCorrectInvalidPoints(ae,xe),e.checkForInvalidEdgeWarning(ae),e.storeAllpts(ae),e.storeEdgeProjections(ae),e.calculateArrowAngles(ae),e.recalculateEdgeLabelProjections(ae),e.calculateLabelAngles(ae)}},"_loop"),C=0;C0){var W=h,Ve=mp(W,tg(s)),pe=mp(W,tg(Te)),Be=Ve;if(pe2){var Ye=mp(W,{x:Te[2],y:Te[3]});Ye0){var le=f,ke=mp(le,tg(s)),ve=mp(le,tg(se)),ye=ke;if(ve2){var Re=mp(le,{x:se[2],y:se[3]});Re=g||C){v={cp:S,segment:k};break}}if(v)break}var A=v.cp,L=v.segment,I=(g-x)/L.length,R=L.t1-L.t0,E=m?L.t0+R*I:L.t1-R*I;E=lx(0,E,1),e=ig(A.p0,A.p1,A.p2,E),p=THe(A.p0,A.p1,A.p2,E);break}case"straight":case"segments":case"haystack":{for(var _=0,D,O,N,P,B=n.allpts.length,F=0;F+3=g));F+=2);var V=g-O,$=V/D;$=lx(0,$,1),e=Uze(N,P,$),p=Dhe(N,P);break}}s("labelX",d,e.x),s("labelY",d,e.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(t)}};Bc.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))};Bc.applyPrefixedLabelDimensions=function(t,e){var r=t._private,n=this.getLabelText(t,e),i=bp(n,t._private.labelDimsKey);if(Us(r.rscratch,"prefixedLabelDimsKey",e)!==i){$u(r.rscratch,"prefixedLabelDimsKey",e,i);var a=this.calculateLabelDimensions(t,n),s=t.pstyle("line-height").pfValue,l=t.pstyle("text-wrap").strValue,u=Us(r.rscratch,"labelWrapCachedLines",e)||[],h=l!=="wrap"?1:Math.max(u.length,1),f=a.height/h,d=f*s,p=a.width,m=a.height+(h-1)*(s-1)*f;$u(r.rstyle,"labelWidth",e,p),$u(r.rscratch,"labelWidth",e,p),$u(r.rstyle,"labelHeight",e,m),$u(r.rscratch,"labelHeight",e,m),$u(r.rscratch,"labelLineHeight",e,d)}};Bc.getLabelText=function(t,e){var r=t._private,n=e?e+"-":"",i=t.pstyle(n+"label").strValue,a=t.pstyle("text-transform").value,s=o(function(j,ee){return ee?($u(r.rscratch,j,e,ee),ee):Us(r.rscratch,j,e)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=t.pstyle("text-wrap").value;if(l==="wrap"){var u=s("labelKey");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var h="\u200B",f=i.split(` -`),d=t.pstyle("text-max-width").pfValue,p=t.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,v=0;vd){var w=x.matchAll(y),k="",C=0,A=qs(w),L;try{for(A.s();!(L=A.n()).done;){var I=L.value,R=I[0],E=x.substring(C,I.index);C=I.index+R.length;var _=k.length===0?E:k+E+R,D=this.calculateLabelDimensions(t,_),O=D.width;O<=d?k+=E+R:(k&&g.push(k),k=E+R)}}catch(U){A.e(U)}finally{A.f()}k.match(/^[\s\u200b]+$/)||g.push(k)}else g.push(x)}s("labelWrapCachedLines",g),i=s("labelWrapCachedText",g.join(` -`)),s("labelWrapKey",u)}else if(l==="ellipsis"){var N=t.pstyle("text-max-width").pfValue,P="",B="\u2026",F=!1;if(this.calculateLabelDimensions(t,i).widthN)break;P+=i[V],V===i.length-1&&(F=!0)}return F||(P+=B),P}return i};Bc.getLabelJustification=function(t){var e=t.pstyle("text-justification").strValue,r=t.pstyle("text-halign").strValue;if(e==="auto")if(t.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return e};Bc.calculateLabelDimensions=function(t,e){var r=this,n=r.cy.window(),i=n.document,a=0,s=t.pstyle("font-style").strValue,l=t.pstyle("font-size").pfValue,u=t.pstyle("font-family").strValue,h=t.pstyle("font-weight").strValue,f=this.labelCalcCanvas,d=this.labelCalcCanvasContext;if(!f){f=this.labelCalcCanvas=i.createElement("canvas"),d=this.labelCalcCanvasContext=f.getContext("2d");var p=f.style;p.position="absolute",p.left="-9999px",p.top="-9999px",p.zIndex="-1",p.visibility="hidden",p.pointerEvents="none"}d.font="".concat(s," ").concat(h," ").concat(l,"px ").concat(u);for(var m=0,g=0,y=e.split(` -`),v=0;v1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(s),l)for(var u=0;u=t.desktopTapThreshold2}var bt=a(z);lt&&(t.hoverData.tapholdCancelled=!0);var wt=o(function(){var Se=t.hoverData.dragDelta=t.hoverData.dragDelta||[];Se.length===0?(Se.push(et[0]),Se.push(et[1])):(Se[0]+=et[0],Se[1]+=et[1])},"updateDragDelta");le=!0,i(xt,["mousemove","vmousemove","tapdrag"],z,{x:Re[0],y:Re[1]});var yt=o(function(Se){return{originalEvent:z,type:Se,position:{x:Re[0],y:Re[1]}}},"makeEvent"),ft=o(function(){t.data.bgActivePosistion=void 0,t.hoverData.selecting||ke.emit(yt("boxstart")),Ke[4]=1,t.hoverData.selecting=!0,t.redrawHint("select",!0),t.redraw()},"goIntoBoxMode");if(t.hoverData.which===3){if(lt){var Ur=yt("cxtdrag");Oe?Oe.emit(Ur):ke.emit(Ur),t.hoverData.cxtDragged=!0,(!t.hoverData.cxtOver||xt!==t.hoverData.cxtOver)&&(t.hoverData.cxtOver&&t.hoverData.cxtOver.emit(yt("cxtdragout")),t.hoverData.cxtOver=xt,xt&&xt.emit(yt("cxtdragover")))}}else if(t.hoverData.dragging){if(le=!0,ke.panningEnabled()&&ke.userPanningEnabled()){var _t;if(t.hoverData.justStartedPan){var bn=t.hoverData.mdownPos;_t={x:(Re[0]-bn[0])*ve,y:(Re[1]-bn[1])*ve},t.hoverData.justStartedPan=!1}else _t={x:et[0]*ve,y:et[1]*ve};ke.panBy(_t),ke.emit(yt("dragpan")),t.hoverData.dragged=!0}Re=t.projectIntoViewport(z.clientX,z.clientY)}else if(Ke[4]==1&&(Oe==null||Oe.pannable())){if(lt){if(!t.hoverData.dragging&&ke.boxSelectionEnabled()&&(bt||!ke.panningEnabled()||!ke.userPanningEnabled()))ft();else if(!t.hoverData.selecting&&ke.panningEnabled()&&ke.userPanningEnabled()){var Br=s(Oe,t.hoverData.downs);Br&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,Ke[4]=0,t.data.bgActivePosistion=tg(_e),t.redrawHint("select",!0),t.redraw())}Oe&&Oe.pannable()&&Oe.active()&&Oe.unactivate()}}else{if(Oe&&Oe.pannable()&&Oe.active()&&Oe.unactivate(),(!Oe||!Oe.grabbed())&&xt!=We&&(We&&i(We,["mouseout","tapdragout"],z,{x:Re[0],y:Re[1]}),xt&&i(xt,["mouseover","tapdragover"],z,{x:Re[0],y:Re[1]}),t.hoverData.last=xt),Oe)if(lt){if(ke.boxSelectionEnabled()&&bt)Oe&&Oe.grabbed()&&(x(Ue),Oe.emit(yt("freeon")),Ue.emit(yt("free")),t.dragData.didDrag&&(Oe.emit(yt("dragfreeon")),Ue.emit(yt("dragfree")))),ft();else if(Oe&&Oe.grabbed()&&t.nodeIsDraggable(Oe)){var cr=!t.dragData.didDrag;cr&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||y(Ue,{inDragLayer:!0});var ar={x:0,y:0};if(At(et[0])&&At(et[1])&&(ar.x+=et[0],ar.y+=et[1],cr)){var _r=t.hoverData.dragDelta;_r&&At(_r[0])&&At(_r[1])&&(ar.x+=_r[0],ar.y+=_r[1])}t.hoverData.draggingEles=!0,Ue.silentShift(ar).emit(yt("position")).emit(yt("drag")),t.redrawHint("drag",!0),t.redraw()}}else wt();le=!0}if(Ke[2]=Re[0],Ke[3]=Re[1],le)return z.stopPropagation&&z.stopPropagation(),z.preventDefault&&z.preventDefault(),!1}},"mousemoveHandler"),!1);var E,_,D;t.registerBinding(e,"mouseup",o(function(z){if(!(t.hoverData.which===1&&z.which!==1&&t.hoverData.capture)){var se=t.hoverData.capture;if(se){t.hoverData.capture=!1;var le=t.cy,ke=t.projectIntoViewport(z.clientX,z.clientY),ve=t.selection,ye=t.findNearestElement(ke[0],ke[1],!0,!1),Re=t.dragData.possibleDragElements,_e=t.hoverData.down,ze=a(z);t.data.bgActivePosistion&&(t.redrawHint("select",!0),t.redraw()),t.hoverData.tapholdCancelled=!0,t.data.bgActivePosistion=void 0,_e&&_e.unactivate();var Ke=o(function(Gt){return{originalEvent:z,type:Gt,position:{x:ke[0],y:ke[1]}}},"makeEvent");if(t.hoverData.which===3){var xt=Ke("cxttapend");if(_e?_e.emit(xt):le.emit(xt),!t.hoverData.cxtDragged){var We=Ke("cxttap");_e?_e.emit(We):le.emit(We)}t.hoverData.cxtDragged=!1,t.hoverData.which=null}else if(t.hoverData.which===1){if(i(ye,["mouseup","tapend","vmouseup"],z,{x:ke[0],y:ke[1]}),!t.dragData.didDrag&&!t.hoverData.dragged&&!t.hoverData.selecting&&!t.hoverData.isOverThresholdDrag&&(i(_e,["click","tap","vclick"],z,{x:ke[0],y:ke[1]}),_=!1,z.timeStamp-D<=le.multiClickDebounceTime()?(E&&clearTimeout(E),_=!0,D=null,i(_e,["dblclick","dbltap","vdblclick"],z,{x:ke[0],y:ke[1]})):(E=setTimeout(function(){_||i(_e,["oneclick","onetap","voneclick"],z,{x:ke[0],y:ke[1]})},le.multiClickDebounceTime()),D=z.timeStamp)),_e==null&&!t.dragData.didDrag&&!t.hoverData.selecting&&!t.hoverData.dragged&&!a(z)&&(le.$(r).unselect(["tapunselect"]),Re.length>0&&t.redrawHint("eles",!0),t.dragData.possibleDragElements=Re=le.collection()),ye==_e&&!t.dragData.didDrag&&!t.hoverData.selecting&&ye!=null&&ye._private.selectable&&(t.hoverData.dragging||(le.selectionType()==="additive"||ze?ye.selected()?ye.unselect(["tapunselect"]):ye.select(["tapselect"]):ze||(le.$(r).unmerge(ye).unselect(["tapunselect"]),ye.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var Oe=le.collection(t.getAllInBox(ve[0],ve[1],ve[2],ve[3]));t.redrawHint("select",!0),Oe.length>0&&t.redrawHint("eles",!0),le.emit(Ke("boxend"));var et=o(function(Gt){return Gt.selectable()&&!Gt.selected()},"eleWouldBeSelected");le.selectionType()==="additive"||ze||le.$(r).unmerge(Oe).unselect(),Oe.emit(Ke("box")).stdFilter(et).select().emit(Ke("boxselect")),t.redraw()}if(t.hoverData.dragging&&(t.hoverData.dragging=!1,t.redrawHint("select",!0),t.redrawHint("eles",!0),t.redraw()),!ve[4]){t.redrawHint("drag",!0),t.redrawHint("eles",!0);var Ue=_e&&_e.grabbed();x(Re),Ue&&(_e.emit(Ke("freeon")),Re.emit(Ke("free")),t.dragData.didDrag&&(_e.emit(Ke("dragfreeon")),Re.emit(Ke("dragfree"))))}}ve[4]=0,t.hoverData.down=null,t.hoverData.cxtStarted=!1,t.hoverData.draggingEles=!1,t.hoverData.selecting=!1,t.hoverData.isOverThresholdDrag=!1,t.dragData.didDrag=!1,t.hoverData.dragged=!1,t.hoverData.dragDelta=[],t.hoverData.mdownPos=null,t.hoverData.mdownGPos=null,t.hoverData.which=null}}},"mouseupHandler"),!1);var O=[],N=4,P,B=1e5,F=o(function(z,se){for(var le=0;le=N){var ke=O;if(P=F(ke,5),!P){var ve=Math.abs(ke[0]);P=V(ke)&&ve>5}if(P)for(var ye=0;ye5&&(le=yI(le)*5),We=le/-250,P&&(We/=B,We*=3),We=We*t.wheelSensitivity;var Oe=z.deltaMode===1;Oe&&(We*=33);var et=Re.zoom()*Math.pow(10,We);z.type==="gesturechange"&&(et=t.gestureStartZoom*z.scale),Re.zoom({level:et,renderedPosition:{x:xt[0],y:xt[1]}}),Re.emit({type:z.type==="gesturechange"?"pinchzoom":"scrollzoom",originalEvent:z,position:{x:Ke[0],y:Ke[1]}})}}}},"wheelHandler");t.registerBinding(t.container,"wheel",$,!0),t.registerBinding(e,"scroll",o(function(z){t.scrollingPage=!0,clearTimeout(t.scrollingPageTimeout),t.scrollingPageTimeout=setTimeout(function(){t.scrollingPage=!1},250)},"scrollHandler"),!0),t.registerBinding(t.container,"gesturestart",o(function(z){t.gestureStartZoom=t.cy.zoom(),t.hasTouchStarted||z.preventDefault()},"gestureStartHandler"),!0),t.registerBinding(t.container,"gesturechange",function(he){t.hasTouchStarted||$(he)},!0),t.registerBinding(t.container,"mouseout",o(function(z){var se=t.projectIntoViewport(z.clientX,z.clientY);t.cy.emit({originalEvent:z,type:"mouseout",position:{x:se[0],y:se[1]}})},"mouseOutHandler"),!1),t.registerBinding(t.container,"mouseover",o(function(z){var se=t.projectIntoViewport(z.clientX,z.clientY);t.cy.emit({originalEvent:z,type:"mouseover",position:{x:se[0],y:se[1]}})},"mouseOverHandler"),!1);var U,j,ee,q,oe,Q,ue,te,re,J,K,ae,Z,de=o(function(z,se,le,ke){return Math.sqrt((le-z)*(le-z)+(ke-se)*(ke-se))},"distance"),ne=o(function(z,se,le,ke){return(le-z)*(le-z)+(ke-se)*(ke-se)},"distanceSq"),Te;t.registerBinding(t.container,"touchstart",Te=o(function(z){if(t.hasTouchStarted=!0,!!I(z)){T(),t.touchData.capture=!0,t.data.bgActivePosistion=void 0;var se=t.cy,le=t.touchData.now,ke=t.touchData.earlier;if(z.touches[0]){var ve=t.projectIntoViewport(z.touches[0].clientX,z.touches[0].clientY);le[0]=ve[0],le[1]=ve[1]}if(z.touches[1]){var ve=t.projectIntoViewport(z.touches[1].clientX,z.touches[1].clientY);le[2]=ve[0],le[3]=ve[1]}if(z.touches[2]){var ve=t.projectIntoViewport(z.touches[2].clientX,z.touches[2].clientY);le[4]=ve[0],le[5]=ve[1]}var ye=o(function(bt){return{originalEvent:z,type:bt,position:{x:le[0],y:le[1]}}},"makeEvent");if(z.touches[1]){t.touchData.singleTouchMoved=!0,x(t.dragData.touchDragEles);var Re=t.findContainerClientCoords();re=Re[0],J=Re[1],K=Re[2],ae=Re[3],U=z.touches[0].clientX-re,j=z.touches[0].clientY-J,ee=z.touches[1].clientX-re,q=z.touches[1].clientY-J,Z=0<=U&&U<=K&&0<=ee&&ee<=K&&0<=j&&j<=ae&&0<=q&&q<=ae;var _e=se.pan(),ze=se.zoom();oe=de(U,j,ee,q),Q=ne(U,j,ee,q),ue=[(U+ee)/2,(j+q)/2],te=[(ue[0]-_e.x)/ze,(ue[1]-_e.y)/ze];var Ke=200,xt=Ke*Ke;if(Q=1){for(var vt=t.touchData.startPosition=[null,null,null,null,null,null],Lt=0;Lt=t.touchTapThreshold2}if(se&&t.touchData.cxt){z.preventDefault();var Lt=z.touches[0].clientX-re,dt=z.touches[0].clientY-J,nt=z.touches[1].clientX-re,bt=z.touches[1].clientY-J,wt=ne(Lt,dt,nt,bt),yt=wt/Q,ft=150,Ur=ft*ft,_t=1.5,bn=_t*_t;if(yt>=bn||wt>=Ur){t.touchData.cxt=!1,t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var Br=ze("cxttapend");t.touchData.start?(t.touchData.start.unactivate().emit(Br),t.touchData.start=null):ke.emit(Br)}}if(se&&t.touchData.cxt){var Br=ze("cxtdrag");t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.touchData.start?t.touchData.start.emit(Br):ke.emit(Br),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxtDragged=!0;var cr=t.findNearestElement(ve[0],ve[1],!0,!0);(!t.touchData.cxtOver||cr!==t.touchData.cxtOver)&&(t.touchData.cxtOver&&t.touchData.cxtOver.emit(ze("cxtdragout")),t.touchData.cxtOver=cr,cr&&cr.emit(ze("cxtdragover")))}else if(se&&z.touches[2]&&ke.boxSelectionEnabled())z.preventDefault(),t.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,t.touchData.selecting||ke.emit(ze("boxstart")),t.touchData.selecting=!0,t.touchData.didSelect=!0,le[4]=1,!le||le.length===0||le[0]===void 0?(le[0]=(ve[0]+ve[2]+ve[4])/3,le[1]=(ve[1]+ve[3]+ve[5])/3,le[2]=(ve[0]+ve[2]+ve[4])/3+1,le[3]=(ve[1]+ve[3]+ve[5])/3+1):(le[2]=(ve[0]+ve[2]+ve[4])/3,le[3]=(ve[1]+ve[3]+ve[5])/3),t.redrawHint("select",!0),t.redraw();else if(se&&z.touches[1]&&!t.touchData.didSelect&&ke.zoomingEnabled()&&ke.panningEnabled()&&ke.userZoomingEnabled()&&ke.userPanningEnabled()){z.preventDefault(),t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var ar=t.dragData.touchDragEles;if(ar){t.redrawHint("drag",!0);for(var _r=0;_r0&&!t.hoverData.draggingEles&&!t.swipePanning&&t.data.bgActivePosistion!=null&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},"touchmoveHandler"),!1);var Ve;t.registerBinding(e,"touchcancel",Ve=o(function(z){var se=t.touchData.start;t.touchData.capture=!1,se&&se.unactivate()},"touchcancelHandler"));var pe,Be,Ye,He;if(t.registerBinding(e,"touchend",pe=o(function(z){var se=t.touchData.start,le=t.touchData.capture;if(le)z.touches.length===0&&(t.touchData.capture=!1),z.preventDefault();else return;var ke=t.selection;t.swipePanning=!1,t.hoverData.draggingEles=!1;var ve=t.cy,ye=ve.zoom(),Re=t.touchData.now,_e=t.touchData.earlier;if(z.touches[0]){var ze=t.projectIntoViewport(z.touches[0].clientX,z.touches[0].clientY);Re[0]=ze[0],Re[1]=ze[1]}if(z.touches[1]){var ze=t.projectIntoViewport(z.touches[1].clientX,z.touches[1].clientY);Re[2]=ze[0],Re[3]=ze[1]}if(z.touches[2]){var ze=t.projectIntoViewport(z.touches[2].clientX,z.touches[2].clientY);Re[4]=ze[0],Re[5]=ze[1]}var Ke=o(function(Ur){return{originalEvent:z,type:Ur,position:{x:Re[0],y:Re[1]}}},"makeEvent");se&&se.unactivate();var xt;if(t.touchData.cxt){if(xt=Ke("cxttapend"),se?se.emit(xt):ve.emit(xt),!t.touchData.cxtDragged){var We=Ke("cxttap");se?se.emit(We):ve.emit(We)}t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!1,t.touchData.start=null,t.redraw();return}if(!z.touches[2]&&ve.boxSelectionEnabled()&&t.touchData.selecting){t.touchData.selecting=!1;var Oe=ve.collection(t.getAllInBox(ke[0],ke[1],ke[2],ke[3]));ke[0]=void 0,ke[1]=void 0,ke[2]=void 0,ke[3]=void 0,ke[4]=0,t.redrawHint("select",!0),ve.emit(Ke("boxend"));var et=o(function(Ur){return Ur.selectable()&&!Ur.selected()},"eleWouldBeSelected");Oe.emit(Ke("box")).stdFilter(et).select().emit(Ke("boxselect")),Oe.nonempty()&&t.redrawHint("eles",!0),t.redraw()}if(se?.unactivate(),z.touches[2])t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);else if(!z.touches[1]){if(!z.touches[0]){if(!z.touches[0]){t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var Ue=t.dragData.touchDragEles;if(se!=null){var lt=se._private.grabbed;x(Ue),t.redrawHint("drag",!0),t.redrawHint("eles",!0),lt&&(se.emit(Ke("freeon")),Ue.emit(Ke("free")),t.dragData.didDrag&&(se.emit(Ke("dragfreeon")),Ue.emit(Ke("dragfree")))),i(se,["touchend","tapend","vmouseup","tapdragout"],z,{x:Re[0],y:Re[1]}),se.unactivate(),t.touchData.start=null}else{var Gt=t.findNearestElement(Re[0],Re[1],!0,!0);i(Gt,["touchend","tapend","vmouseup","tapdragout"],z,{x:Re[0],y:Re[1]})}var vt=t.touchData.startPosition[0]-Re[0],Lt=vt*vt,dt=t.touchData.startPosition[1]-Re[1],nt=dt*dt,bt=Lt+nt,wt=bt*ye*ye;t.touchData.singleTouchMoved||(se||ve.$(":selected").unselect(["tapunselect"]),i(se,["tap","vclick"],z,{x:Re[0],y:Re[1]}),Be=!1,z.timeStamp-He<=ve.multiClickDebounceTime()?(Ye&&clearTimeout(Ye),Be=!0,He=null,i(se,["dbltap","vdblclick"],z,{x:Re[0],y:Re[1]})):(Ye=setTimeout(function(){Be||i(se,["onetap","voneclick"],z,{x:Re[0],y:Re[1]})},ve.multiClickDebounceTime()),He=z.timeStamp)),se!=null&&!t.dragData.didDrag&&se._private.selectable&&wt"u"){var Le=[],Ie=o(function(z){return{clientX:z.clientX,clientY:z.clientY,force:1,identifier:z.pointerId,pageX:z.pageX,pageY:z.pageY,radiusX:z.width/2,radiusY:z.height/2,screenX:z.screenX,screenY:z.screenY,target:z.target}},"makeTouch"),Ne=o(function(z){return{event:z,touch:Ie(z)}},"makePointer"),Ce=o(function(z){Le.push(Ne(z))},"addPointer"),Fe=o(function(z){for(var se=0;se0)return U[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:Rue(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){u=u==="auto"?kf(i,a):u;var h=2*u;if(Vu(e,r,this.points,s,l,i,a-h,[0,-1],n)||Vu(e,r,this.points,s,l,i-h,a,[0,-1],n))return!0;var f=i/2+2*n,d=a/2+2*n,p=[s-f,l-d,s-f,l,s+f,l,s+f,l-d];return!!(Hs(e,r,p)||xp(e,r,h,h,s+i/2-u,l+a/2-u,n)||xp(e,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};Uu.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",ls(3,0)),this.generateRoundPolygon("round-triangle",ls(3,0)),this.generatePolygon("rectangle",ls(4,0)),t.square=t.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var r=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",r),this.generateRoundPolygon("round-diamond",r)}this.generatePolygon("pentagon",ls(5,0)),this.generateRoundPolygon("round-pentagon",ls(5,0)),this.generatePolygon("hexagon",ls(6,0)),this.generateRoundPolygon("round-hexagon",ls(6,0)),this.generatePolygon("heptagon",ls(7,0)),this.generateRoundPolygon("round-heptagon",ls(7,0)),this.generatePolygon("octagon",ls(8,0)),this.generateRoundPolygon("round-octagon",ls(8,0));var n=new Array(20);{var i=HM(5,0),a=HM(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l=e.deqFastCost*S)break}else if(h){if(b>=e.deqCost*m||b>=e.deqAvgCost*p)break}else if(T>=e.deqNoDrawCost*OM)break;var w=e.deq(n,v,y);if(w.length>0)for(var k=0;k0&&(e.onDeqd(n,g),!h&&e.shouldRedraw(n,g,v,y)&&a())},"dequeue"),l=e.priority||pI;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},kHe=(function(){function t(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Zk;Af(this,t),this.idsByKey=new zu,this.keyForId=new zu,this.cachesByLvl=new zu,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=r}return o(t,"ElementTextureCacheLookup"),_f(t,[{key:"getIdsFor",value:o(function(r){r==null&&Kn("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new hg,n.set(r,i)),i},"getIdsFor")},{key:"addIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).add(n)},"addIdForKey")},{key:"deleteIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).delete(n)},"deleteIdForKey")},{key:"getNumberOfIdsForKey",value:o(function(r){return r==null?0:this.getIdsFor(r).size},"getNumberOfIdsForKey")},{key:"updateKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);this.deleteIdForKey(i,n),this.addIdForKey(a,n),this.keyForId.set(n,a)},"updateKeyMappingFor")},{key:"deleteKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteIdForKey(i,n),this.keyForId.delete(n)},"deleteKeyMappingFor")},{key:"keyHasChangedFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);return i!==a},"keyHasChangedFor")},{key:"isInvalid",value:o(function(r){return this.keyHasChangedFor(r)||this.doesEleInvalidateKey(r)},"isInvalid")},{key:"getCachesAt",value:o(function(r){var n=this.cachesByLvl,i=this.lvls,a=n.get(r);return a||(a=new zu,n.set(r,a),i.push(r)),a},"getCachesAt")},{key:"getCache",value:o(function(r,n){return this.getCachesAt(n).get(r)},"getCache")},{key:"get",value:o(function(r,n){var i=this.getKey(r),a=this.getCache(i,n);return a!=null&&this.updateKeyMappingFor(r),a},"get")},{key:"getForCachedKey",value:o(function(r,n){var i=this.keyForId.get(r.id()),a=this.getCache(i,n);return a},"getForCachedKey")},{key:"hasCache",value:o(function(r,n){return this.getCachesAt(n).has(r)},"hasCache")},{key:"has",value:o(function(r,n){var i=this.getKey(r);return this.hasCache(i,n)},"has")},{key:"setCache",value:o(function(r,n,i){i.key=r,this.getCachesAt(n).set(r,i)},"setCache")},{key:"set",value:o(function(r,n,i){var a=this.getKey(r);this.setCache(a,n,i),this.updateKeyMappingFor(r)},"set")},{key:"deleteCache",value:o(function(r,n){this.getCachesAt(n).delete(r)},"deleteCache")},{key:"delete",value:o(function(r,n){var i=this.getKey(r);this.deleteCache(i,n)},"_delete")},{key:"invalidateKey",value:o(function(r){var n=this;this.lvls.forEach(function(i){return n.deleteCache(r,i)})},"invalidateKey")},{key:"invalidate",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteKeyMappingFor(r);var a=this.doesEleInvalidateKey(r);return a&&this.invalidateKey(i),a||this.getNumberOfIdsForKey(i)===0},"invalidate")}])})(),Yce=25,Pk=50,Yk=-4,iI=3,Ohe=7.99,EHe=8,SHe=1024,CHe=1024,AHe=1024,_He=.2,DHe=.8,LHe=10,RHe=.15,NHe=.1,MHe=.9,IHe=.9,OHe=100,PHe=1,ng={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},BHe=ba({getKey:null,doesEleInvalidateKey:Zk,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:Eue,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),tx=o(function(e,r){var n=this;n.renderer=e,n.onDequeues=[];var i=BHe(r);ir(n,i),n.lookup=new kHe(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),zi=tx.prototype;zi.reasons=ng;zi.getTextureQueue=function(t){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[t]=e.eleImgCaches[t]||[]};zi.getRetiredTextureQueue=function(t){var e=this,r=e.eleImgCaches.retired=e.eleImgCaches.retired||{},n=r[t]=r[t]||[];return n};zi.getElementQueue=function(){var t=this,e=t.eleCacheQueue=t.eleCacheQueue||new Tx(function(r,n){return n.reqs-r.reqs});return e};zi.getElementKeyToQueue=function(){var t=this,e=t.eleKeyToCacheQueue=t.eleKeyToCacheQueue||{};return e};zi.getElement=function(t,e,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!t.visible()||t.removed()||!a.allowEdgeTxrCaching&&t.isEdge()||!a.allowParentTxrCaching&&t.isParent())return null;if(n==null&&(n=Math.ceil(gI(l*r))),n=Ohe||n>iI)return null;var h=Math.pow(2,n),f=e.h*h,d=e.w*h,p=s.eleTextBiggerThanMin(t,h);if(!this.isVisible(t,p))return null;var m=u.get(t,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=Yce?g=Yce:f<=Pk?g=Pk:g=Math.ceil(f/Pk)*Pk,f>AHe||d>CHe)return null;var y=a.getTextureQueue(g),v=y[y.length-2],x=o(function(){return a.recycleTexture(g,d)||a.addTexture(g,d)},"addNewTxr");v||(v=y[y.length-1]),v||(v=x()),v.width-v.usedWidthn;R--)L=a.getElement(t,e,r,R,ng.downscale);I()}else return a.queueElement(t,k.level-1),k;else{var E;if(!T&&!S&&!w)for(var _=n-1;_>=Yk;_--){var D=u.get(t,_);if(D){E=D;break}}if(b(E))return a.queueElement(t,n),E;v.context.translate(v.usedWidth,0),v.context.scale(h,h),this.drawElement(v.context,t,e,p,!1),v.context.scale(1/h,1/h),v.context.translate(-v.usedWidth,0)}return m={x:v.usedWidth,texture:v,level:n,scale:h,width:d,height:f,scaledLabelShown:p},v.usedWidth+=Math.ceil(d+EHe),v.eleCaches.push(m),u.set(t,n,m),a.checkTextureFullness(v),m};zi.invalidateElements=function(t){for(var e=0;e=_He*t.width&&this.retireTexture(t)};zi.checkTextureFullness=function(t){var e=this,r=e.getTextureQueue(t.height);t.usedWidth/t.width>DHe&&t.fullnessChecks>=LHe?wf(r,t):t.fullnessChecks++};zi.retireTexture=function(t){var e=this,r=t.height,n=e.getTextureQueue(r),i=this.lookup;wf(n,t),t.retired=!0;for(var a=t.eleCaches,s=0;s=e)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,mI(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),wf(i,s),n.push(s),s}};zi.queueElement=function(t,e){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(t),s=i[a];if(s)s.level=Math.max(s.level,e),s.eles.merge(t),s.reqs++,n.updateItem(s);else{var l={eles:t.spawn().merge(t),level:e,reqs:1,key:a};n.push(l),i[a]=l}};zi.dequeue=function(t){for(var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=[],a=e.lookup,s=0;s0;s++){var l=r.pop(),u=l.key,h=l.eles[0],f=a.hasCache(h,l.level);if(n[u]=null,f)continue;i.push(l);var d=e.getBoundingBox(h);e.getElement(h,d,t,l.level,ng.dequeue)}return i};zi.removeFromQueue=function(t){var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=this.getKey(t),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=dI,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(t))};zi.onDequeue=function(t){this.onDequeues.push(t)};zi.offDequeue=function(t){wf(this.onDequeues,t)};zi.setupDequeueing=Ihe.setupDequeueing({deqRedrawThreshold:OHe,deqCost:RHe,deqAvgCost:NHe,deqNoDrawCost:MHe,deqFastCost:IHe,deq:o(function(e,r,n){return e.dequeue(r,n)},"deq"),onDeqd:o(function(e,r){for(var n=0;n=$He||r>sE)return null}n.validateLayersElesOrdering(r,t);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,t),m,g=o(function(){var I=o(function(O){if(n.validateLayersElesOrdering(O,t),n.levelIsComplete(O,t))return m=u[O],!0},"canUseAsTmpLvl"),R=o(function(O){if(!m)for(var N=r+O;nx<=N&&N<=sE&&!I(N);N+=O);},"checkLvls");R(1),R(-1);for(var E=f.length-1;E>=0;E--){var _=f[E];_.invalid&&wf(f,_)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=cs();for(var I=0;Ijce||_>jce)return null;var D=E*_;if(D>YHe)return null;var O=n.makeLayer(d,r);if(R!=null){var N=f.indexOf(R)+1;f.splice(N,0,O)}else(I.insert===void 0||I.insert)&&f.unshift(O);return O},"makeLayer");if(n.skipping&&!l)return null;for(var x=null,b=t.length/FHe,T=!l,S=0;S=b||!Lue(x.bb,w.boundingBox()))&&(x=v({insert:!0,after:x}),!x))return null;m||T?n.queueLayer(x,w):n.drawEleInLayer(x,w,r,e),x.eles.push(w),C[r]=x}return m||(T?null:f)};Ta.getEleLevelForLayerLevel=function(t,e){return t};Ta.drawEleInLayer=function(t,e,r,n){var i=this,a=this.renderer,s=t.context,l=e.boundingBox();l.w===0||l.h===0||!e.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,e,null,null,r,XHe),a.setImgSmoothing(s,!0))};Ta.levelIsComplete=function(t,e){var r=this,n=r.layersByLevel[t];if(!n||n.length===0)return!1;for(var i=0,a=0;a0||s.invalid)return!1;i+=s.eles.length}return i===e.length};Ta.validateLayersElesOrdering=function(t,e){var r=this.layersByLevel[t];if(r)for(var n=0;n0){e=!0;break}}return e};Ta.invalidateElements=function(t){var e=this;t.length!==0&&(e.lastInvalidationTime=Gu(),!(t.length===0||!e.haveLayers())&&e.updateElementsInLayers(t,o(function(n,i,a){e.invalidateLayer(n)},"invalAssocLayers")))};Ta.invalidateLayer=function(t){if(this.lastInvalidationTime=Gu(),!t.invalid){var e=t.level,r=t.eles,n=this.layersByLevel[e];wf(n,t),t.elesQueue=[],t.invalid=!0,t.replacement&&(t.replacement.invalid=!0);for(var i=0;i3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l=e._private.rscratch;if(!(a&&!e.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,t.translate(-u.x1,-u.y1));var h=a?e.pstyle("opacity").value:1,f=a?e.pstyle("line-opacity").value:1,d=e.pstyle("curve-style").value,p=e.pstyle("line-style").value,m=e.pstyle("width").pfValue,g=e.pstyle("line-cap").value,y=e.pstyle("line-outline-width").value,v=e.pstyle("line-outline-color").value,x=h*f,b=h*f,T=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;d==="straight-triangle"?(s.eleStrokeStyle(t,e,O),s.drawEdgeTrianglePath(e,t,l.allpts)):(t.lineWidth=m,t.lineCap=g,s.eleStrokeStyle(t,e,O),s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLine"),S=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;if(t.lineWidth=m+y,t.lineCap=g,y>0)s.colorStrokeStyle(t,v[0],v[1],v[2],O);else{t.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(e,t,l.allpts):(s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLineOutline"),w=o(function(){i&&s.drawEdgeOverlay(t,e)},"drawOverlay"),k=o(function(){i&&s.drawEdgeUnderlay(t,e)},"drawUnderlay"),C=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(t,e,O)},"drawArrows"),A=o(function(){s.drawElementText(t,e,null,n)},"drawText");t.lineJoin="round";var L=e.pstyle("ghost").value==="yes";if(L){var I=e.pstyle("ghost-offset-x").pfValue,R=e.pstyle("ghost-offset-y").pfValue,E=e.pstyle("ghost-opacity").value,_=x*E;t.translate(I,R),T(_),C(_),t.translate(-I,-R)}else S();k(),T(),C(),w(),A(),r&&t.translate(u.x1,u.y1)}};Fhe=o(function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(e,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(e,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(e,"-color")).value;r.lineWidth=h,l.edgeType==="self"&&!s?r.lineCap="butt":r.lineCap="round",a.colorStrokeStyle(r,f[0],f[1],f[2],i),a.drawEdgePath(n,r,l.allpts,"solid")}}}},"drawEdgeOverlayUnderlay");Hu.drawEdgeOverlay=Fhe("overlay");Hu.drawEdgeUnderlay=Fhe("underlay");Hu.drawEdgePath=function(t,e,r,n){var i=t._private.rscratch,a=e,s,l=!1,u=this.usePaths(),h=t.pstyle("line-dash-pattern").pfValue,f=t.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=e=i.pathCache,l=!0):(s=e=new Path2D,i.pathCacheKey=d,i.pathCache=s)}if(a.setLineDash)switch(n){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(h),a.lineDashOffset=f;break;case"solid":a.setLineDash([]);break}if(!l&&!i.badLine)switch(e.beginPath&&e.beginPath(),e.moveTo(r[0],r[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var m=2;m+35&&arguments[5]!==void 0?arguments[5]:!0,s=this;if(n==null){if(a&&!s.eleTextBiggerThanMin(e))return}else if(n===!1)return;if(e.isNode()){var l=e.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(e);t.textAlign=u,t.textBaseline="bottom"}else{var h=e.element()._private.rscratch.badLine,f=e.pstyle("label"),d=e.pstyle("source-label"),p=e.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;t.textAlign="center",t.textBaseline="bottom"}var m=!r,g;r&&(g=r,t.translate(-g.x1,-g.y1)),i==null?(s.drawText(t,e,null,m,a),e.isEdge()&&(s.drawText(t,e,"source",m,a),s.drawText(t,e,"target",m,a))):s.drawText(t,e,i,m,a),r&&t.translate(g.x1,g.y1)};Cp.getFontCache=function(t){var e;this.fontCaches=this.fontCaches||[];for(var r=0;r2&&arguments[2]!==void 0?arguments[2]:!0,n=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",a=e.pstyle("font-family").strValue,s=e.pstyle("font-weight").strValue,l=r?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,u=e.pstyle("text-outline-opacity").value*l,h=e.pstyle("color").value,f=e.pstyle("text-outline-color").value;t.font=n+" "+s+" "+i+" "+a,t.lineJoin="round",this.colorFillStyle(t,h[0],h[1],h[2],l),this.colorStrokeStyle(t,f[0],f[1],f[2],u)};o(aqe,"circle");o(Jce,"roundRect");Cp.getTextAngle=function(t,e){var r,n=t._private,i=n.rscratch,a=e?e+"-":"",s=t.pstyle(a+"text-rotation");if(s.strValue==="autorotate"){var l=Us(i,"labelAngle",e);r=t.isEdge()?l:0}else s.strValue==="none"?r=0:r=s.pfValue;return r};Cp.drawText=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=e._private,s=a.rscratch,l=i?e.effectiveOpacity():1;if(!(i&&(l===0||e.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=Us(s,"labelX",r),h=Us(s,"labelY",r),f,d,p=this.getLabelText(e,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(t,e,i);var m=r?r+"-":"",g=Us(s,"labelWidth",r),y=Us(s,"labelHeight",r),v=e.pstyle(m+"text-margin-x").pfValue,x=e.pstyle(m+"text-margin-y").pfValue,b=e.isEdge(),T=e.pstyle("text-halign").value,S=e.pstyle("text-valign").value;b&&(T="center",S="center"),u+=v,h+=x;var w;switch(n?w=this.getTextAngle(e,r):w=0,w!==0&&(f=u,d=h,t.translate(f,d),t.rotate(w),u=0,h=0),S){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var k=e.pstyle("text-background-opacity").value,C=e.pstyle("text-border-opacity").value,A=e.pstyle("text-border-width").pfValue,L=e.pstyle("text-background-padding").pfValue,I=e.pstyle("text-background-shape").strValue,R=I==="round-rectangle"||I==="roundrectangle",E=I==="circle",_=2;if(k>0||A>0&&C>0){var D=t.fillStyle,O=t.strokeStyle,N=t.lineWidth,P=e.pstyle("text-background-color").value,B=e.pstyle("text-border-color").value,F=e.pstyle("text-border-style").value,V=k>0,$=A>0&&C>0,U=u-L;switch(T){case"left":U-=g;break;case"center":U-=g/2;break}var j=h-y-L,ee=g+2*L,q=y+2*L;if(V&&(t.fillStyle="rgba(".concat(P[0],",").concat(P[1],",").concat(P[2],",").concat(k*l,")")),$&&(t.strokeStyle="rgba(".concat(B[0],",").concat(B[1],",").concat(B[2],",").concat(C*l,")"),t.lineWidth=A,t.setLineDash))switch(F){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=A/4,t.setLineDash([]);break;case"solid":default:t.setLineDash([]);break}if(R?(t.beginPath(),Jce(t,U,j,ee,q,_)):E?(t.beginPath(),aqe(t,U,j,ee,q)):(t.beginPath(),t.rect(U,j,ee,q)),V&&t.fill(),$&&t.stroke(),$&&F==="double"){var oe=A/2;t.beginPath(),R?Jce(t,U+oe,j+oe,ee-2*oe,q-2*oe,_):t.rect(U+oe,j+oe,ee-2*oe,q-2*oe),t.stroke()}t.fillStyle=D,t.strokeStyle=O,t.lineWidth=N,t.setLineDash&&t.setLineDash([])}var Q=2*e.pstyle("text-outline-width").pfValue;if(Q>0&&(t.lineWidth=Q),e.pstyle("text-wrap").value==="wrap"){var ue=Us(s,"labelWrapCachedLines",r),te=Us(s,"labelLineHeight",r),re=g/2,J=this.getLabelJustification(e);switch(J==="auto"||(T==="left"?J==="left"?u+=-g:J==="center"&&(u+=-re):T==="center"?J==="left"?u+=-re:J==="right"&&(u+=re):T==="right"&&(J==="center"?u+=re:J==="right"&&(u+=g))),S){case"top":h-=(ue.length-1)*te;break;case"center":case"bottom":h-=(ue.length-1)*te;break}for(var K=0;K0&&t.strokeText(ue[K],u,h),t.fillText(ue[K],u,h),h+=te}else Q>0&&t.strokeText(p,u,h),t.fillText(p,u,h);w!==0&&(t.rotate(-w),t.translate(-f,-d))}}};Lf={};Lf.drawNode=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l,u,h=e._private,f=h.rscratch,d=e.position();if(!(!At(d.x)||!At(d.y))&&!(a&&!e.visible())){var p=a?e.effectiveOpacity():1,m=s.usePaths(),g,y=!1,v=e.padding();l=e.width()+2*v,u=e.height()+2*v;var x;r&&(x=r,t.translate(-x.x1,-x.y1));for(var b=e.pstyle("background-image"),T=b.value,S=new Array(T.length),w=new Array(T.length),k=0,C=0;C0&&arguments[0]!==void 0?arguments[0]:_;s.eleFillStyle(t,e,Y)},"setupShapeColor"),te=o(function(){var Y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$;s.colorStrokeStyle(t,D[0],D[1],D[2],Y)},"setupBorderColor"),re=o(function(){var Y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:q;s.colorStrokeStyle(t,j[0],j[1],j[2],Y)},"setupOutlineColor"),J=o(function(Y,he,z,se){var le=s.nodePathCache=s.nodePathCache||[],ke=kue(z==="polygon"?z+","+se.join(","):z,""+he,""+Y,""+Q),ve=le[ke],ye,Re=!1;return ve!=null?(ye=ve,Re=!0,f.pathCache=ye):(ye=new Path2D,le[ke]=f.pathCache=ye),{path:ye,cacheHit:Re}},"getPath"),K=e.pstyle("shape").strValue,ae=e.pstyle("shape-polygon-points").pfValue;if(m){t.translate(d.x,d.y);var Z=J(l,u,K,ae);g=Z.path,y=Z.cacheHit}var de=o(function(){if(!y){var Y=d;m&&(Y={x:0,y:0}),s.nodeShapes[s.getNodeShape(e)].draw(g||t,Y.x,Y.y,l,u,Q,f)}m?t.fill(g):t.fill()},"drawShape"),ne=o(function(){for(var Y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,he=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,z=h.backgrounding,se=0,le=0;le0&&arguments[0]!==void 0?arguments[0]:!1,he=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(e)&&(s.drawPie(t,e,he),Y&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Q,f)))},"drawPie"),W=o(function(){var Y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,he=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasStripe(e)&&(t.save(),m?t.clip(f.pathCache):(s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Q,f),t.clip()),s.drawStripe(t,e,he),t.restore(),Y&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Q,f)))},"drawStripe"),Ve=o(function(){var Y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,he=(R>0?R:-R)*Y,z=R>0?0:255;R!==0&&(s.colorFillStyle(t,z,z,z,he),m?t.fill(g):t.fill())},"darken"),pe=o(function(){if(E>0){if(t.lineWidth=E,t.lineCap=P,t.lineJoin=N,t.setLineDash)switch(O){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash(F),t.lineDashOffset=V;break;case"solid":case"double":t.setLineDash([]);break}if(B!=="center"){if(t.save(),t.lineWidth*=2,B==="inside")m?t.clip(g):t.clip();else{var Y=new Path2D;Y.rect(-l/2-E,-u/2-E,l+2*E,u+2*E),Y.addPath(g),t.clip(Y,"evenodd")}m?t.stroke(g):t.stroke(),t.restore()}else m?t.stroke(g):t.stroke();if(O==="double"){t.lineWidth=E/3;var he=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",m?t.stroke(g):t.stroke(),t.globalCompositeOperation=he}t.setLineDash&&t.setLineDash([])}},"drawBorder"),Be=o(function(){if(U>0){if(t.lineWidth=U,t.lineCap="butt",t.setLineDash)switch(ee){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([]);break}var Y=d;m&&(Y={x:0,y:0});var he=s.getNodeShape(e),z=E;B==="inside"&&(z=0),B==="outside"&&(z*=2);var se=(l+z+(U+oe))/l,le=(u+z+(U+oe))/u,ke=l*se,ve=u*le,ye=s.nodeShapes[he].points,Re;if(m){var _e=J(ke,ve,he,ye);Re=_e.path}if(he==="ellipse")s.drawEllipsePath(Re||t,Y.x,Y.y,ke,ve);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(he)){var ze=0,Ke=0,xt=0;he==="round-diamond"?ze=(z+oe+U)*1.4:he==="round-heptagon"?(ze=(z+oe+U)*1.075,xt=-(z/2+oe+U)/35):he==="round-hexagon"?ze=(z+oe+U)*1.12:he==="round-pentagon"?(ze=(z+oe+U)*1.13,xt=-(z/2+oe+U)/15):he==="round-tag"?(ze=(z+oe+U)*1.12,Ke=(z/2+U+oe)*.07):he==="round-triangle"&&(ze=(z+oe+U)*(Math.PI/2),xt=-(z+oe/2+U)/Math.PI),ze!==0&&(se=(l+ze)/l,ke=l*se,["round-hexagon","round-tag"].includes(he)||(le=(u+ze)/u,ve=u*le)),Q=Q==="auto"?Mue(ke,ve):Q;for(var We=ke/2,Oe=ve/2,et=Q+(z+U+oe)/2,Ue=new Array(ye.length/2),lt=new Array(ye.length/2),Gt=0;Gt0){if(i=i||n.position(),a==null||s==null){var m=n.padding();a=n.width()+2*m,s=n.height()+2*m}l.colorFillStyle(r,f[0],f[1],f[2],h),l.nodeShapes[d].draw(r,i.x,i.y,a+u*2,s+u*2,p),r.fill()}}}},"drawNodeOverlayUnderlay");Lf.drawNodeOverlay=$he("overlay");Lf.drawNodeUnderlay=$he("underlay");Lf.hasPie=function(t){return t=t[0],t._private.hasPie};Lf.hasStripe=function(t){return t=t[0],t._private.hasStripe};Lf.drawPie=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=e.pstyle("pie-size"),s=e.pstyle("pie-hole"),l=e.pstyle("pie-start-angle").pfValue,u=n.x,h=n.y,f=e.width(),d=e.height(),p=Math.min(f,d)/2,m,g=0,y=this.usePaths();if(y&&(u=0,h=0),a.units==="%"?p=p*a.pfValue:a.pfValue!==void 0&&(p=a.pfValue/2),s.units==="%"?m=p*s.pfValue:s.pfValue!==void 0&&(m=s.pfValue/2),!(m>=p))for(var v=1;v<=i.pieBackgroundN;v++){var x=e.pstyle("pie-"+v+"-background-size").value,b=e.pstyle("pie-"+v+"-background-color").value,T=e.pstyle("pie-"+v+"-background-opacity").value*r,S=x/100;S+g>1&&(S=1-g);var w=1.5*Math.PI+2*Math.PI*g;w+=l;var k=2*Math.PI*S,C=w+k;x===0||g>=1||g+S>1||(m===0?(t.beginPath(),t.moveTo(u,h),t.arc(u,h,p,w,C),t.closePath()):(t.beginPath(),t.arc(u,h,p,w,C),t.arc(u,h,m,C,w,!0),t.closePath()),this.colorFillStyle(t,b[0],b[1],b[2],T),t.fill(),g+=S)}};Lf.drawStripe=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=n.x,s=n.y,l=e.width(),u=e.height(),h=0,f=this.usePaths();t.save();var d=e.pstyle("stripe-direction").value,p=e.pstyle("stripe-size");switch(d){case"vertical":break;case"righward":t.rotate(-Math.PI/2);break}var m=l,g=u;p.units==="%"?(m=m*p.pfValue,g=g*p.pfValue):p.pfValue!==void 0&&(m=p.pfValue,g=p.pfValue),f&&(a=0,s=0),s-=m/2,a-=g/2;for(var y=1;y<=i.stripeBackgroundN;y++){var v=e.pstyle("stripe-"+y+"-background-size").value,x=e.pstyle("stripe-"+y+"-background-color").value,b=e.pstyle("stripe-"+y+"-background-opacity").value*r,T=v/100;T+h>1&&(T=1-h),!(v===0||h>=1||h+T>1)&&(t.beginPath(),t.rect(a,s+g*h,m,g*T),t.closePath(),this.colorFillStyle(t,x[0],x[1],x[2],b),t.fill(),h+=T)}t.restore()};us={},sqe=100;us.getPixelRatio=function(){var t=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),r=t.backingStorePixelRatio||t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/r};us.paintCache=function(t){for(var e=this.paintCaches=this.paintCaches||[],r=!0,n,i=0;ie.minMbLowQualFrames&&(e.motionBlurPxRatio=e.mbPxRBlurry)),e.clearingMotionBlur&&(e.motionBlurPxRatio=1),e.textureDrawLastFrame&&!d&&(f[e.NODE]=!0,f[e.SELECT_BOX]=!0);var b=r.style(),T=r.zoom(),S=s!==void 0?s:T,w=r.pan(),k={x:w.x,y:w.y},C={zoom:T,pan:{x:w.x,y:w.y}},A=e.prevViewport,L=A===void 0||C.zoom!==A.zoom||C.pan.x!==A.pan.x||C.pan.y!==A.pan.y;!L&&!(y&&!g)&&(e.motionBlurPxRatio=1),l&&(k=l),S*=u,k.x*=u,k.y*=u;var I=e.getCachedZSortedEles();function R(te,re,J,K,ae){var Z=te.globalCompositeOperation;te.globalCompositeOperation="destination-out",e.colorFillStyle(te,255,255,255,e.motionBlurTransparency),te.fillRect(re,J,K,ae),te.globalCompositeOperation=Z}o(R,"mbclear");function E(te,re){var J,K,ae,Z;!e.clearingMotionBlur&&(te===h.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]||te===h.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG])?(J={x:w.x*m,y:w.y*m},K=T*m,ae=e.canvasWidth*m,Z=e.canvasHeight*m):(J=k,K=S,ae=e.canvasWidth,Z=e.canvasHeight),te.setTransform(1,0,0,1,0,0),re==="motionBlur"?R(te,0,0,ae,Z):!n&&(re===void 0||re)&&te.clearRect(0,0,ae,Z),i||(te.translate(J.x,J.y),te.scale(K,K)),l&&te.translate(l.x,l.y),s&&te.scale(s,s)}if(o(E,"setContextTransform"),d||(e.textureDrawLastFrame=!1),d){if(e.textureDrawLastFrame=!0,!e.textureCache){e.textureCache={},e.textureCache.bb=r.mutableElements().boundingBox(),e.textureCache.texture=e.data.bufferCanvases[e.TEXTURE_BUFFER];var _=e.data.bufferContexts[e.TEXTURE_BUFFER];_.setTransform(1,0,0,1,0,0),_.clearRect(0,0,e.canvasWidth*e.textureMult,e.canvasHeight*e.textureMult),e.render({forcedContext:_,drawOnlyNodeLayer:!0,forcedPxRatio:u*e.textureMult});var C=e.textureCache.viewport={zoom:r.zoom(),pan:r.pan(),width:e.canvasWidth,height:e.canvasHeight};C.mpan={x:(0-C.pan.x)/C.zoom,y:(0-C.pan.y)/C.zoom}}f[e.DRAG]=!1,f[e.NODE]=!1;var D=h.contexts[e.NODE],O=e.textureCache.texture,C=e.textureCache.viewport;D.setTransform(1,0,0,1,0,0),p?R(D,0,0,C.width,C.height):D.clearRect(0,0,C.width,C.height);var N=b.core("outside-texture-bg-color").value,P=b.core("outside-texture-bg-opacity").value;e.colorFillStyle(D,N[0],N[1],N[2],P),D.fillRect(0,0,C.width,C.height);var T=r.zoom();E(D,!1),D.clearRect(C.mpan.x,C.mpan.y,C.width/C.zoom/u,C.height/C.zoom/u),D.drawImage(O,C.mpan.x,C.mpan.y,C.width/C.zoom/u,C.height/C.zoom/u)}else e.textureOnViewport&&!n&&(e.textureCache=null);var B=r.extent(),F=e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming||e.hoverData.draggingEles||e.cy.animated(),V=e.hideEdgesOnViewport&&F,$=[];if($[e.NODE]=!f[e.NODE]&&p&&!e.clearedForMotionBlur[e.NODE]||e.clearingMotionBlur,$[e.NODE]&&(e.clearedForMotionBlur[e.NODE]=!0),$[e.DRAG]=!f[e.DRAG]&&p&&!e.clearedForMotionBlur[e.DRAG]||e.clearingMotionBlur,$[e.DRAG]&&(e.clearedForMotionBlur[e.DRAG]=!0),f[e.NODE]||i||a||$[e.NODE]){var U=p&&!$[e.NODE]&&m!==1,D=n||(U?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]:h.contexts[e.NODE]),j=p&&!U?"motionBlur":void 0;E(D,j),V?e.drawCachedNodes(D,I.nondrag,u,B):e.drawLayeredElements(D,I.nondrag,u,B),e.debug&&e.drawDebugPoints(D,I.nondrag),!i&&!p&&(f[e.NODE]=!1)}if(!a&&(f[e.DRAG]||i||$[e.DRAG])){var U=p&&!$[e.DRAG]&&m!==1,D=n||(U?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]:h.contexts[e.DRAG]);E(D,p&&!U?"motionBlur":void 0),V?e.drawCachedNodes(D,I.drag,u,B):e.drawCachedElements(D,I.drag,u,B),e.debug&&e.drawDebugPoints(D,I.drag),!i&&!p&&(f[e.DRAG]=!1)}if(this.drawSelectionRectangle(t,E),p&&m!==1){var ee=h.contexts[e.NODE],q=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE],oe=h.contexts[e.DRAG],Q=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG],ue=o(function(re,J,K){re.setTransform(1,0,0,1,0,0),K||!x?re.clearRect(0,0,e.canvasWidth,e.canvasHeight):R(re,0,0,e.canvasWidth,e.canvasHeight);var ae=m;re.drawImage(J,0,0,e.canvasWidth*ae,e.canvasHeight*ae,0,0,e.canvasWidth,e.canvasHeight)},"drawMotionBlur");(f[e.NODE]||$[e.NODE])&&(ue(ee,q,$[e.NODE]),f[e.NODE]=!1),(f[e.DRAG]||$[e.DRAG])&&(ue(oe,Q,$[e.DRAG]),f[e.DRAG]=!1)}e.prevViewport=C,e.clearingMotionBlur&&(e.clearingMotionBlur=!1,e.motionBlurCleared=!0,e.motionBlur=!0),p&&(e.motionBlurTimeout=setTimeout(function(){e.motionBlurTimeout=null,e.clearedForMotionBlur[e.NODE]=!1,e.clearedForMotionBlur[e.DRAG]=!1,e.motionBlur=!1,e.clearingMotionBlur=!d,e.mbFrames=0,f[e.NODE]=!0,f[e.DRAG]=!0,e.redraw()},sqe)),n||r.emit("render")};us.drawSelectionRectangle=function(t,e){var r=this,n=r.cy,i=r.data,a=n.style(),s=t.drawOnlyNodeLayer,l=t.drawAllLayers,u=i.canvasNeedsRedraw,h=t.forcedContext;if(r.showFps||!s&&u[r.SELECT_BOX]&&!l){var f=h||i.contexts[r.SELECT_BOX];if(e(f),r.selection[4]==1&&(r.hoverData.selecting||r.touchData.selecting)){var d=r.cy.zoom(),p=a.core("selection-box-border-width").value/d;f.lineWidth=p,f.fillStyle="rgba("+a.core("selection-box-color").value[0]+","+a.core("selection-box-color").value[1]+","+a.core("selection-box-color").value[2]+","+a.core("selection-box-opacity").value+")",f.fillRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]),p>0&&(f.strokeStyle="rgba("+a.core("selection-box-border-color").value[0]+","+a.core("selection-box-border-color").value[1]+","+a.core("selection-box-border-color").value[2]+","+a.core("selection-box-opacity").value+")",f.strokeRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]))}if(i.bgActivePosistion&&!r.hoverData.selecting){var d=r.cy.zoom(),m=i.bgActivePosistion;f.fillStyle="rgba("+a.core("active-bg-color").value[0]+","+a.core("active-bg-color").value[1]+","+a.core("active-bg-color").value[2]+","+a.core("active-bg-opacity").value+")",f.beginPath(),f.arc(m.x,m.y,a.core("active-bg-size").pfValue/d,0,2*Math.PI),f.fill()}var g=r.lastRedrawTime;if(r.showFps&&g){g=Math.round(g);var y=Math.round(1e3/g),v="1 frame = "+g+" ms = "+y+" fps";if(f.setTransform(1,0,0,1,0,0),f.fillStyle="rgba(255, 0, 0, 0.75)",f.strokeStyle="rgba(255, 0, 0, 0.75)",f.font="30px Arial",!K2){var x=f.measureText(v);K2=x.actualBoundingBoxAscent}f.fillText(v,0,K2);var b=60;f.strokeRect(0,K2+10,250,20),f.fillRect(0,K2+10,250*Math.min(y/b,1),20)}l||(u[r.SELECT_BOX]=!1)}};o(eue,"compileShader");o(oqe,"createProgram");o(lqe,"createTextureCanvas");o(MI,"getEffectivePanZoom");o(cqe,"getEffectiveZoom");o(uqe,"modelToRenderedPosition");o(hqe,"isSimpleShape");o(fqe,"arrayEqual");o(dp,"toWebGLColor");o(Zm,"indexToVec4");o(dqe,"vec4ToIndex");o(pqe,"createTexture");o(zhe,"getTypeInfo");o(Ghe,"createTypedArray");o(mqe,"createTypedArrayView");o(gqe,"createBufferStaticDraw");o(Mc,"createBufferDynamicDraw");o(yqe,"create3x3MatrixBufferDynamicDraw");o(vqe,"createPickingFrameBuffer");tue=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});o(BM,"create");o(rue,"identity");o(xqe,"multiply");o(Xk,"translate");o(nue,"rotate");o(aI,"scale");o(bqe,"projection");Tqe=(function(){function t(e,r,n,i){Af(this,t),this.debugID=Math.floor(Math.random()*1e4),this.r=e,this.texSize=r,this.texRows=n,this.texHeight=Math.floor(r/n),this.enableWrapping=!0,this.locked=!1,this.texture=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=i(e,r,r),this.scratch=i(e,r,this.texHeight,"scratch")}return o(t,"Atlas"),_f(t,[{key:"lock",value:o(function(){this.locked=!0},"lock")},{key:"getKeys",value:o(function(){return new Set(this.keyToLocation.keys())},"getKeys")},{key:"getScale",value:o(function(r){var n=r.w,i=r.h,a=this.texHeight,s=this.texSize,l=a/i,u=n*l,h=i*l;return u>s&&(l=s/n,u=n*l,h=i*l),{scale:l,texW:u,texH:h}},"getScale")},{key:"draw",value:o(function(r,n,i){var a=this;if(this.locked)throw new Error("can't draw, atlas is locked");var s=this.texSize,l=this.texRows,u=this.texHeight,h=this.getScale(n),f=h.scale,d=h.texW,p=h.texH,m=o(function(T,S){if(i&&S){var w=S.context,k=T.x,C=T.row,A=k,L=u*C;w.save(),w.translate(A,L),w.scale(f,f),i(w,n),w.restore()}},"drawAt"),g=[null,null],y=o(function(){m(a.freePointer,a.canvas),g[0]={x:a.freePointer.x,y:a.freePointer.row*u,w:d,h:p},g[1]={x:a.freePointer.x+d,y:a.freePointer.row*u,w:0,h:p},a.freePointer.x+=d,a.freePointer.x==s&&(a.freePointer.x=0,a.freePointer.row++)},"drawNormal"),v=o(function(){var T=a.scratch,S=a.canvas;T.clear(),m({x:0,row:0},T);var w=s-a.freePointer.x,k=d-w,C=u;{var A=a.freePointer.x,L=a.freePointer.row*u,I=w;S.context.drawImage(T,0,0,I,C,A,L,I,C),g[0]={x:A,y:L,w:I,h:p}}{var R=w,E=(a.freePointer.row+1)*u,_=k;S&&S.context.drawImage(T,R,0,_,C,0,E,_,C),g[1]={x:0,y:E,w:_,h:p}}a.freePointer.x=k,a.freePointer.row++},"drawWrapped"),x=o(function(){a.freePointer.x=0,a.freePointer.row++},"moveToStartOfNextRow");if(this.freePointer.x+d<=s)y();else{if(this.freePointer.row>=l-1)return!1;this.freePointer.x===s?(x(),y()):this.enableWrapping?v():(x(),y())}return this.keyToLocation.set(r,g),this.needsBuffer=!0,g},"draw")},{key:"getOffsets",value:o(function(r){return this.keyToLocation.get(r)},"getOffsets")},{key:"isEmpty",value:o(function(){return this.freePointer.x===0&&this.freePointer.row===0},"isEmpty")},{key:"canFit",value:o(function(r){if(this.locked)return!1;var n=this.texSize,i=this.texRows,a=this.getScale(r),s=a.texW;return this.freePointer.x+s>n?this.freePointer.row1&&arguments[1]!==void 0?arguments[1]:{},a=i.forceRedraw,s=a===void 0?!1:a,l=i.filterEle,u=l===void 0?function(){return!0}:l,h=i.filterType,f=h===void 0?function(){return!0}:h,d=!1,p=!1,m=qs(r),g;try{for(m.s();!(g=m.n()).done;){var y=g.value;if(u(y)){var v=qs(this.renderTypes.values()),x;try{var b=o(function(){var S=x.value,w=S.type;if(f(w)){var k=n.collections.get(S.collection),C=S.getKey(y),A=Array.isArray(C)?C:[C];if(s)A.forEach(function(E){return k.markKeyForGC(E)}),p=!0;else{var L=S.getID?S.getID(y):y.id(),I=n._key(w,L),R=n.typeAndIdToKey.get(I);R!==void 0&&!fqe(A,R)&&(d=!0,n.typeAndIdToKey.delete(I),R.forEach(function(E){return k.markKeyForGC(E)}))}}},"_loop2");for(v.s();!(x=v.n()).done;)b()}catch(T){v.e(T)}finally{v.f()}}}}catch(T){m.e(T)}finally{m.f()}return p&&(this.gc(),d=!1),d},"invalidate")},{key:"gc",value:o(function(){var r=qs(this.collections.values()),n;try{for(r.s();!(n=r.n()).done;){var i=n.value;i.gc()}}catch(a){r.e(a)}finally{r.f()}},"gc")},{key:"getOrCreateAtlas",value:o(function(r,n,i,a){var s=this.renderTypes.get(n),l=this.collections.get(s.collection),u=!1,h=l.draw(a,i,function(p){s.drawClipped?(p.save(),p.beginPath(),p.rect(0,0,i.w,i.h),p.clip(),s.drawElement(p,r,i,!0,!0),p.restore()):s.drawElement(p,r,i,!0,!0),u=!0});if(u){var f=s.getID?s.getID(r):r.id(),d=this._key(n,f);this.typeAndIdToKey.has(d)?this.typeAndIdToKey.get(d).push(a):this.typeAndIdToKey.set(d,[a])}return h},"getOrCreateAtlas")},{key:"getAtlasInfo",value:o(function(r,n){var i=this,a=this.renderTypes.get(n),s=a.getKey(r),l=Array.isArray(s)?s:[s];return l.map(function(u){var h=a.getBoundingBox(r,u),f=i.getOrCreateAtlas(r,n,h,u),d=f.getOffsets(u),p=_i(d,2),m=p[0],g=p[1];return{atlas:f,tex:m,tex1:m,tex2:g,bb:h}})},"getAtlasInfo")},{key:"getDebugInfo",value:o(function(){var r=[],n=qs(this.collections),i;try{for(n.s();!(i=n.n()).done;){var a=_i(i.value,2),s=a[0],l=a[1],u=l.getCounts(),h=u.keyCount,f=u.atlasCount;r.push({type:s,keyCount:h,atlasCount:f})}}catch(d){n.e(d)}finally{n.f()}return r},"getDebugInfo")}])})(),Sqe=(function(){function t(e){Af(this,t),this.globalOptions=e,this.atlasSize=e.webglTexSize,this.maxAtlasesPerBatch=e.webglTexPerBatch,this.batchAtlases=[]}return o(t,"AtlasBatchManager"),_f(t,[{key:"getMaxAtlasesPerBatch",value:o(function(){return this.maxAtlasesPerBatch},"getMaxAtlasesPerBatch")},{key:"getAtlasSize",value:o(function(){return this.atlasSize},"getAtlasSize")},{key:"getIndexArray",value:o(function(){return Array.from({length:this.maxAtlasesPerBatch},function(r,n){return n})},"getIndexArray")},{key:"startBatch",value:o(function(){this.batchAtlases=[]},"startBatch")},{key:"getAtlasCount",value:o(function(){return this.batchAtlases.length},"getAtlasCount")},{key:"getAtlases",value:o(function(){return this.batchAtlases},"getAtlases")},{key:"canAddToCurrentBatch",value:o(function(r){return this.batchAtlases.length===this.maxAtlasesPerBatch?this.batchAtlases.includes(r):!0},"canAddToCurrentBatch")},{key:"getAtlasIndexForBatch",value:o(function(r){var n=this.batchAtlases.indexOf(r);if(n<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)throw new Error("cannot add more atlases to batch");this.batchAtlases.push(r),n=this.batchAtlases.length-1}return n},"getAtlasIndexForBatch")}])})(),Cqe=` +Parent cluster`,i.height),e.setNode(i.id,x),e.parent(y)||(X.trace("Setting parent",y,i.id),e.setParent(y,i.id,x))}if(X.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),v?.clusterNode){X.info("Cluster identified XBX",y,v.width,e.node(y));let{ranksep:x,nodesep:b}=e.graph();v.graph.setGraph({...v.graph.graph(),ranksep:x+25,nodesep:b});let T=await gfe(d,v.graph,r,n,e.node(y),a),E=T.elem;Ze(v,E),v.diff=T.diff||0,X.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),Ose(E,v)}else e.children(y).length>0?(X.trace("Cluster - the non recursive path XBX",y,v.id,v,v.width,"Graph:",e),X.trace(D1(v.id,e)),Lr.set(v.id,{id:D1(v.id,e),node:v})):(X.trace("Node - the non recursive path XAX",y,d,e.node(y),s),await c1(d,e.node(y),{config:a,dir:s}))})),await o(async()=>{let y=e.edges().map(async function(v){let x=e.edge(v.v,v.w,v.name);X.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),X.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(e.edge(v))),X.info("Fix",Lr,"ids:",v.v,v.w,"Translating: ",Lr.get(v.v),Lr.get(v.w)),await Jk(f,x)});await Promise.all(y)},"processEdges")(),X.info("Graph before layout:",JSON.stringify(kl(e))),X.info("############################################# XXX"),X.info("### Layout ### XXX"),X.info("############################################# XXX"),pb(e),X.info("Graph after layout:",JSON.stringify(kl(e)));let m=0,{subGraphTitleTotalMargin:g}=Eh(a);return await Promise.all(pfe(e).map(async function(y){let v=e.node(y);if(X.info("Position XBX => "+y+": ("+v.x,","+v.y,") width: ",v.width," height: ",v.height),v?.clusterNode)v.y+=g,X.info("A tainted cluster node XBX1",y,v.id,v.width,v.height,v.x,v.y,e.parent(y)),Lr.get(v.id).node=v,sb(v);else if(e.children(y).length>0){X.info("A pure cluster node XBX1",y,v.id,v.x,v.y,v.width,v.height,e.parent(y)),v.height+=g,e.node(v.parentId);let x=v?.padding/2||0,b=v?.labelBBox?.height||0,T=b-x||0;X.debug("OffsetY",T,"labelHeight",b,"halfPadding",x),await l1(u,v),Lr.get(v.id).node=v}else{let x=e.node(v.parentId);v.y+=g/2,X.info("A regular node XBX1 - using the padding",v.id,"parent",v.parentId,v.width,v.height,v.x,v.y,"offsetY",v.offsetY,"parent",x,x?.offsetY,v),sb(v)}})),e.edges().forEach(function(y){let v=e.edge(y);X.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(v),v),v.points.forEach(E=>E.y+=g/2);let x=e.node(y.v);var b=e.node(y.w);let T=tS(h,v,Lr,r,x,b,n);eS(v,T)}),e.nodes().forEach(function(y){let v=e.node(y);X.info(y,v.type,v.diff),v.isGroup&&(m=v.diff)}),X.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),kHe=o(async(t,e)=>{let r=new vn({multigraph:!0,compound:!0}).setGraph({rankdir:t.direction,nodesep:t.config?.nodeSpacing||t.config?.flowchart?.nodeSpacing||t.nodeSpacing,ranksep:t.config?.rankSpacing||t.config?.flowchart?.rankSpacing||t.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=e.select("g");rS(n,t.markers,t.type,t.diagramId),Pse(),Ise(),Ase(),lfe(),t.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),X.debug("Edges:",t.edges),t.edges.forEach(a=>{if(a.start===a.end){let s=a.start,l=s+"---"+s+"---1",u=s+"---"+s+"---2",h=r.node(s);r.setNode(l,{domId:l,id:l,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),r.setParent(l,h.parentId),r.setNode(u,{domId:u,id:u,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),r.setParent(u,h.parentId);let f=structuredClone(a),d=structuredClone(a),p=structuredClone(a);f.label="",f.arrowTypeEnd="none",f.id=s+"-cyclic-special-1",d.arrowTypeStart="none",d.arrowTypeEnd="none",d.id=s+"-cyclic-special-mid",p.label="",h.isGroup&&(f.fromCluster=s,p.toCluster=s),p.id=s+"-cyclic-special-2",p.arrowTypeStart="none",r.setEdge(s,l,f,s+"-cyclic-special-0"),r.setEdge(l,u,d,s+"-cyclic-special-1"),r.setEdge(u,s,p,s+"-cyct.length)&&(e=t.length);for(var r=0,n=Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},"n"),e:o(function(u){throw u},"e"),f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,s=!0,l=!1;return{s:o(function(){r=r.call(t)},"s"),n:o(function(){var u=r.next();return s=u.done,u},"n"),e:o(function(u){l=!0,a=u},"e"),f:o(function(){try{s||r.return==null||r.return()}finally{if(l)throw a}},"f")}}function Ype(t,e,r){return(e=jpe(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function AHe(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function _He(t,e){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var n,i,a,s,l=[],u=!0,h=!1;try{if(a=(r=r.call(t)).next,e===0){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=a.call(r)).done)&&(l.push(n.value),l.length!==e);u=!0);}catch(f){h=!0,i=f}finally{try{if(!u&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(h)throw i}}return l}}function DHe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function RHe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Vi(t,e){return SHe(t)||_He(t,e)||FP(t,e)||DHe()}function NE(t){return EHe(t)||AHe(t)||FP(t)||RHe()}function LHe(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}function jpe(t){var e=LHe(t,"string");return typeof e=="symbol"?e:e+""}function ea(t){"@babel/helpers - typeof";return ea=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ea(t)}function FP(t,e){if(t){if(typeof t=="string")return vP(t,e);var r={}.toString.call(t).slice(8,-1);return r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set"?Array.from(t):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?vP(t,e):void 0}}function zb(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Gb(){if(Tfe)return VI;Tfe=1;function t(e){var r=typeof e;return e!=null&&(r=="object"||r=="function")}return o(t,"isObject"),VI=t,VI}function eYe(){if(wfe)return qI;wfe=1;var t=typeof lE=="object"&&lE&&lE.Object===Object&≦return qI=t,qI}function YE(){if(kfe)return UI;kfe=1;var t=eYe(),e=typeof self=="object"&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return UI=r,UI}function tYe(){if(Sfe)return WI;Sfe=1;var t=YE(),e=o(function(){return t.Date.now()},"now");return WI=e,WI}function rYe(){if(Efe)return HI;Efe=1;var t=/\s/;function e(r){for(var n=r.length;n--&&t.test(r.charAt(n)););return n}return o(e,"trimmedEndIndex"),HI=e,HI}function nYe(){if(Cfe)return YI;Cfe=1;var t=rYe(),e=/^\s+/;function r(n){return n&&n.slice(0,t(n)+1).replace(e,"")}return o(r,"baseTrim"),YI=r,YI}function GP(){if(Afe)return jI;Afe=1;var t=YE(),e=t.Symbol;return jI=e,jI}function iYe(){if(_fe)return XI;_fe=1;var t=GP(),e=Object.prototype,r=e.hasOwnProperty,n=e.toString,i=t?t.toStringTag:void 0;function a(s){var l=r.call(s,i),u=s[i];try{s[i]=void 0;var h=!0}catch{}var f=n.call(s);return h&&(l?s[i]=u:delete s[i]),f}return o(a,"getRawTag"),XI=a,XI}function aYe(){if(Dfe)return KI;Dfe=1;var t=Object.prototype,e=t.toString;function r(n){return e.call(n)}return o(r,"objectToString"),KI=r,KI}function n0e(){if(Rfe)return QI;Rfe=1;var t=GP(),e=iYe(),r=aYe(),n="[object Null]",i="[object Undefined]",a=t?t.toStringTag:void 0;function s(l){return l==null?l===void 0?i:n:a&&a in Object(l)?e(l):r(l)}return o(s,"baseGetTag"),QI=s,QI}function sYe(){if(Lfe)return ZI;Lfe=1;function t(e){return e!=null&&typeof e=="object"}return o(t,"isObjectLike"),ZI=t,ZI}function Vb(){if(Nfe)return JI;Nfe=1;var t=n0e(),e=sYe(),r="[object Symbol]";function n(i){return typeof i=="symbol"||e(i)&&t(i)==r}return o(n,"isSymbol"),JI=n,JI}function oYe(){if(Mfe)return eO;Mfe=1;var t=nYe(),e=Gb(),r=Vb(),n=NaN,i=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt;function u(h){if(typeof h=="number")return h;if(r(h))return n;if(e(h)){var f=typeof h.valueOf=="function"?h.valueOf():h;h=e(f)?f+"":f}if(typeof h!="string")return h===0?h:+h;h=t(h);var d=a.test(h);return d||s.test(h)?l(h.slice(2),d?2:8):i.test(h)?n:+h}return o(u,"toNumber"),eO=u,eO}function lYe(){if(Ife)return tO;Ife=1;var t=Gb(),e=tYe(),r=oYe(),n="Expected a function",i=Math.max,a=Math.min;function s(l,u,h){var f,d,p,m,g,y,v=0,x=!1,b=!1,T=!0;if(typeof l!="function")throw new TypeError(n);u=r(u)||0,t(h)&&(x=!!h.leading,b="maxWait"in h,p=b?i(r(h.maxWait)||0,u):p,T="trailing"in h?!!h.trailing:T);function E(A){var _=f,N=d;return f=d=void 0,v=A,m=l.apply(N,_),m}o(E,"invokeFunc");function w(A){return v=A,g=setTimeout(D,u),x?E(A):m}o(w,"leadingEdge");function k(A){var _=A-y,N=A-v,M=u-_;return b?a(M,p-N):M}o(k,"remainingWait");function C(A){var _=A-y,N=A-v;return y===void 0||_>=u||_<0||b&&N>=p}o(C,"shouldInvoke");function D(){var A=e();if(C(A))return R(A);g=setTimeout(D,k(A))}o(D,"timerExpired");function R(A){return g=void 0,T&&f?E(A):(f=d=void 0,m)}o(R,"trailingEdge");function O(){g!==void 0&&clearTimeout(g),v=0,f=y=d=g=void 0}o(O,"cancel");function L(){return g===void 0?m:R(e())}o(L,"flush");function S(){var A=e(),_=C(A);if(f=arguments,d=this,y=A,_){if(g===void 0)return w(y);if(b)return clearTimeout(g),g=setTimeout(D,u),E(y)}return g===void 0&&(g=setTimeout(D,u)),m}return o(S,"debounced"),S.cancel=O,S.flush=L,S}return o(s,"debounce"),tO=s,tO}function dYe(t,e,r,n,i){var a=i*Math.PI/180,s=Math.cos(a)*(t-r)-Math.sin(a)*(e-n)+r,l=Math.sin(a)*(t-r)+Math.cos(a)*(e-n)+n;return{x:s,y:l}}function mYe(t,e,r){if(r===0)return t;var n=(e.x1+e.x2)/2,i=(e.y1+e.y2)/2,a=e.w/e.h,s=1/a,l=dYe(t.x,t.y,n,i,r),u=pYe(l.x,l.y,n,i,a,s);return{x:u.x,y:u.y}}function CYe(){return $fe||($fe=1,(function(t,e){(function(){var r,n,i,a,s,l,u,h,f,d,p,m,g,y,v;i=Math.floor,d=Math.min,n=o(function(x,b){return xb?1:0},"defaultCmp"),f=o(function(x,b,T,E,w){var k;if(T==null&&(T=0),w==null&&(w=n),T<0)throw new Error("lo must be non-negative");for(E==null&&(E=x.length);TO;0<=O?R++:R--)D.push(R);return D}).apply(this).reverse(),C=[],E=0,w=k.length;EL;0<=L?++D:--D)S.push(s(x,T));return S},"nsmallest"),y=o(function(x,b,T,E){var w,k,C;for(E==null&&(E=n),w=x[T];T>b;){if(C=T-1>>1,k=x[C],E(w,k)<0){x[T]=k,T=C;continue}break}return x[T]=w},"_siftdown"),v=o(function(x,b,T){var E,w,k,C,D;for(T==null&&(T=n),w=x.length,D=b,k=x[b],E=2*b+1;E-1}return o(e,"listCacheHas"),RO=e,RO}function xXe(){if(Cde)return LO;Cde=1;var t=JE();function e(r,n){var i=this.__data__,a=t(i,r);return a<0?(++this.size,i.push([r,n])):i[a][1]=n,this}return o(e,"listCacheSet"),LO=e,LO}function bXe(){if(Ade)return NO;Ade=1;var t=mXe(),e=gXe(),r=yXe(),n=vXe(),i=xXe();function a(s){var l=-1,u=s==null?0:s.length;for(this.clear();++l-1&&n%1==0&&n0;){var f=i.shift();e(f),a.add(f.id()),l&&n(i,a,f)}return t}function I0e(t,e,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:RKe,e=arguments.length>1?arguments[1]:void 0,r=0;r0?S=_:L=_;while(Math.abs(A)>s&&++N=a?b(O,N):M===0?N:E(O,L,L+h)}o(w,"getTForX");var k=!1;function C(){k=!0,(t!==e||r!==n)&&T()}o(C,"precompute");var D=o(function(L){return k||C(),t===e&&r===n?L:L===0?0:L===1?1:v(w(L),e,n)},"f");D.getControlPoints=function(){return[{x:t,y:e},{x:r,y:n}]};var R="generateBezier("+[t,e,r,n]+")";return D.toString=function(){return R},D}function gpe(t,e,r,n,i){if(n===1||e===r)return r;var a=i(e,r,n);return t==null||((t.roundValue||t.color)&&(a=Math.round(a)),t.min!==void 0&&(a=Math.max(a,t.min)),t.max!==void 0&&(a=Math.min(a,t.max))),a}function ype(t,e){return t.pfValue!=null||t.value!=null?t.pfValue!=null&&(e==null||e.type.units!=="%")?t.pfValue:t.value:t}function N1(t,e,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=ype(t,i),l=ype(e,i);if(Rt(s)&&Rt(l))return gpe(a,s,l,r,n);if(Pn(s)&&Pn(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=CE[m].apply(null,g)):s.easingImpl=CE[m]}var y=s.easingImpl,v;if(s.duration===0?v=1:v=(r-u)/s.duration,s.applying&&(v=s.progress),v<0?v=0:v>1&&(v=1),s.delay==null){var x=s.startPosition,b=s.position;if(b&&i&&!t.locked()){var T={};vb(x.x,b.x)&&(T.x=N1(x.x,b.x,v,y)),vb(x.y,b.y)&&(T.y=N1(x.y,b.y,v,y)),t.position(T)}var E=s.startPan,w=s.pan,k=a.pan,C=w!=null&&n;C&&(vb(E.x,w.x)&&(k.x=N1(E.x,w.x,v,y)),vb(E.y,w.y)&&(k.y=N1(E.y,w.y,v,y)),t.emit("pan"));var D=s.startZoom,R=s.zoom,O=R!=null&&n;O&&(vb(D,R)&&(a.zoom=Lb(a.minZoom,N1(D,R,v,y),a.maxZoom)),t.emit("zoom")),(C||O)&&t.emit("viewport");var L=s.style;if(L&&L.length>0&&i){for(var S=0;S=0;C--){var D=k[C];D()}k.splice(0,k.length)},"callbacks"),b=m.length-1;b>=0;b--){var T=m[b],E=T._private;if(E.stopped){m.splice(b,1),E.hooked=!1,E.playing=!1,E.started=!1,x(E.frames);continue}!E.playing&&!E.applying||(E.playing&&E.applying&&(E.applying=!1),E.started||UKe(f,T,t),qKe(f,T,t,d),E.applying&&(E.applying=!1),x(E.frames),E.step!=null&&E.step(t),T.completed()&&(m.splice(b,1),E.hooked=!1,E.playing=!1,E.started=!1,x(E.completes)),y=!0)}return!d&&m.length===0&&g.length===0&&n.push(f),y}o(i,"stepOne");for(var a=!1,s=0;s0?e.notify("draw",r):e.notify("draw")),r.unmerge(n),e.emit("step")}function Z0e(t){this.options=cr({},ZKe,JKe,t)}function J0e(t){this.options=cr({},eQe,t)}function eme(t){this.options=cr({},tQe,t)}function oC(t){this.options=cr({},rQe,t),this.options.layout=this;var e=this.options.eles.nodes(),r=this.options.eles.edges(),n=r.filter(function(i){var a=i.source().data("id"),s=i.target().data("id"),l=e.some(function(h){return h.data("id")===a}),u=e.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function ime(t){this.options=cr({},yQe,t)}function nB(t){this.options=cr({},vQe,t)}function ame(t){this.options=cr({},xQe,t)}function sme(t){this.options=cr({},bQe,t)}function ome(t){this.options=t,this.notifications=0}function ume(t,e){e.radius===0?t.lineTo(e.cx,e.cy):t.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function aB(t,e,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||e.radius===0?{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(kQe(t,e,r,n,i),{cx:DP,cy:RP,radius:M0,startX:lme,startY:cme,stopX:LP,stopY:NP,startAngle:vu.ang+Math.PI/2*O0,endAngle:Sl.ang-Math.PI/2*O0,counterClockwise:DE})}function hme(t){var e=[];if(t!=null){for(var r=0;r5&&arguments[5]!==void 0?arguments[5]:5,s=Math.min(a,n/2,i/2);t.beginPath(),t.moveTo(e+s,r),t.lineTo(e+n-s,r),t.quadraticCurveTo(e+n,r,e+n,r+s),t.lineTo(e+n,r+i-s),t.quadraticCurveTo(e+n,r+i,e+n-s,r+i),t.lineTo(e+s,r+i),t.quadraticCurveTo(e,r+i,e,r+i-s),t.lineTo(e,r+s),t.quadraticCurveTo(e,r,e+s,r),t.closePath()}function Fpe(t,e,r){var n=t.createShader(e);if(t.shaderSource(n,r),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error(t.getShaderInfoLog(n));return n}function fZe(t,e,r){var n=Fpe(t,t.VERTEX_SHADER,e),i=Fpe(t,t.FRAGMENT_SHADER,r),a=t.createProgram();if(t.attachShader(a,n),t.attachShader(a,i),t.linkProgram(a),!t.getProgramParameter(a,t.LINK_STATUS))throw new Error("Could not initialize shaders");return a}function dZe(t,e,r){r===void 0&&(r=e);var n=t.makeOffscreenCanvas(e,r),i=n.context=n.getContext("2d");return n.clear=function(){return i.clearRect(0,0,n.width,n.height)},n.clear(),n}function lB(t){var e=t.pixelRatio,r=t.cy.zoom(),n=t.cy.pan();return{zoom:r*e,pan:{x:n.x*e,y:n.y*e}}}function pZe(t){var e=t.pixelRatio,r=t.cy.zoom();return r*e}function mZe(t,e,r,n,i){var a=n*r+e.x,s=i*r+e.y;return s=Math.round(t.canvasHeight-s),[a,s]}function gZe(t){return t.pstyle("background-fill").value!=="solid"||t.pstyle("background-image").strValue!=="none"?!1:t.pstyle("border-width").value===0||t.pstyle("border-opacity").value===0?!0:t.pstyle("border-style").value==="solid"}function yZe(t,e){if(t.length!==e.length)return!1;for(var r=0;r>0&255)/255,r[1]=(t>>8&255)/255,r[2]=(t>>16&255)/255,r[3]=(t>>24&255)/255,r}function vZe(t){return t[0]+(t[1]<<8)+(t[2]<<16)+(t[3]<<24)}function xZe(t,e){var r=t.createTexture();return r.buffer=function(n){t.bindTexture(t.TEXTURE_2D,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR_MIPMAP_NEAREST),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,n),t.generateMipmap(t.TEXTURE_2D),t.bindTexture(t.TEXTURE_2D,null)},r.deleteTexture=function(){t.deleteTexture(r)},r}function Sme(t,e){switch(e){case"float":return[1,t.FLOAT,4];case"vec2":return[2,t.FLOAT,4];case"vec3":return[3,t.FLOAT,4];case"vec4":return[4,t.FLOAT,4];case"int":return[1,t.INT,4];case"ivec2":return[2,t.INT,4]}}function Eme(t,e,r){switch(e){case t.FLOAT:return new Float32Array(r);case t.INT:return new Int32Array(r)}}function bZe(t,e,r,n,i,a){switch(e){case t.FLOAT:return new Float32Array(r.buffer,a*n,i);case t.INT:return new Int32Array(r.buffer,a*n,i)}}function TZe(t,e,r,n){var i=Sme(t,e),a=Vi(i,2),s=a[0],l=a[1],u=Eme(t,l,n),h=t.createBuffer();return t.bindBuffer(t.ARRAY_BUFFER,h),t.bufferData(t.ARRAY_BUFFER,u,t.STATIC_DRAW),l===t.FLOAT?t.vertexAttribPointer(r,s,l,!1,0,0):l===t.INT&&t.vertexAttribIPointer(r,s,l,0,0),t.enableVertexAttribArray(r),t.bindBuffer(t.ARRAY_BUFFER,null),h}function yu(t,e,r,n){var i=Sme(t,r),a=Vi(i,3),s=a[0],l=a[1],u=a[2],h=Eme(t,l,e*s),f=s*u,d=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,d),t.bufferData(t.ARRAY_BUFFER,e*f,t.DYNAMIC_DRAW),t.enableVertexAttribArray(n),l===t.FLOAT?t.vertexAttribPointer(n,s,l,!1,f,0):l===t.INT&&t.vertexAttribIPointer(n,s,l,f,0),t.vertexAttribDivisor(n,1),t.bindBuffer(t.ARRAY_BUFFER,null);for(var p=new Array(e),m=0;mxme?(FZe(t),e.call(t,a)):($Ze(t),Dme(t,a,Ab.SCREEN)))}}{var r=t.matchCanvasSize;t.matchCanvasSize=function(a){r.call(t,a),t.pickingFrameBuffer.setFramebufferAttachmentSizes(t.canvasWidth,t.canvasHeight),t.pickingFrameBuffer.needsDraw=!0}}t.findNearestElements=function(a,s,l,u){return WZe(t,a,s)};{var n=t.invalidateCachedZSortedEles;t.invalidateCachedZSortedEles=function(){n.call(t),t.pickingFrameBuffer.needsDraw=!0}}{var i=t.notify;t.notify=function(a,s){i.call(t,a,s),a==="viewport"||a==="bounds"?t.pickingFrameBuffer.needsDraw=!0:a==="background"&&t.drawing.invalidate(s,{type:"node-body"})}}}function FZe(t){var e=t.data.contexts[t.WEBGL];e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}function $Ze(t){var e=o(function(n){n.save(),n.setTransform(1,0,0,1,0,0),n.clearRect(0,0,t.canvasWidth,t.canvasHeight),n.restore()},"clear");e(t.data.contexts[t.NODE]),e(t.data.contexts[t.DRAG])}function zZe(t){var e=t.canvasWidth,r=t.canvasHeight,n=lB(t),i=n.pan,a=n.zoom,s=fP();LE(s,s,[i.x,i.y]),IP(s,s,[a,a]);var l=fP();EZe(l,e,r);var u=fP();return SZe(u,l,s),u}function _me(t,e){var r=t.canvasWidth,n=t.canvasHeight,i=lB(t),a=i.pan,s=i.zoom;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,r,n),e.translate(a.x,a.y),e.scale(s,s)}function GZe(t,e){t.drawSelectionRectangle(e,function(r){return _me(t,r)})}function VZe(t){var e=t.data.contexts[t.NODE];e.save(),_me(t,e),e.strokeStyle="rgba(0, 0, 0, 0.3)",e.beginPath(),e.moveTo(-1e3,0),e.lineTo(1e3,0),e.stroke(),e.beginPath(),e.moveTo(0,-1e3),e.lineTo(0,1e3),e.stroke(),e.restore()}function qZe(t){var e=o(function(i,a,s){for(var l=i.atlasManager.getAtlasCollection(a),u=t.data.contexts[t.NODE],h=l.atlases,f=0;f=0&&E.add(C)}return E}function WZe(t,e,r){var n=UZe(t,e,r),i=t.getCachedZSortedEles(),a,s,l=po(n),u;try{for(l.s();!(u=l.n()).done;){var h=u.value,f=i[h];if(!a&&f.isNode()&&(a=f),!s&&f.isEdge()&&(s=f),a&&s)break}}catch(d){l.e(d)}finally{l.f()}return[a,s].filter(Boolean)}function yP(t,e,r){var n=t.drawing;e+=1,r.isNode()?(n.drawNode(r,e,"node-underlay"),n.drawNode(r,e,"node-body"),n.drawTexture(r,e,"label"),n.drawNode(r,e,"node-overlay")):(n.drawEdgeLine(r,e),n.drawEdgeArrow(r,e,"source"),n.drawEdgeArrow(r,e,"target"),n.drawTexture(r,e,"label"),n.drawTexture(r,e,"edge-source-label"),n.drawTexture(r,e,"edge-target-label"))}function Dme(t,e,r){var n;t.webglDebug&&(n=performance.now());var i=t.drawing,a=0;if(r.screen&&t.data.canvasNeedsRedraw[t.SELECT_BOX]&&GZe(t,e),t.data.canvasNeedsRedraw[t.NODE]||r.picking){var s=t.data.contexts[t.WEBGL];r.screen?(s.clearColor(0,0,0,0),s.enable(s.BLEND),s.blendFunc(s.ONE,s.ONE_MINUS_SRC_ALPHA)):s.disable(s.BLEND),s.clear(s.COLOR_BUFFER_BIT|s.DEPTH_BUFFER_BIT),s.viewport(0,0,s.canvas.width,s.canvas.height);var l=zZe(t),u=t.getCachedZSortedEles();if(a=u.length,i.startFrame(l,r),r.screen){for(var h=0;h{"use strict";o(vP,"_arrayLikeToArray");o(SHe,"_arrayWithHoles");o(EHe,"_arrayWithoutHoles");o(Td,"_classCallCheck");o(CHe,"_defineProperties");o(wd,"_createClass");o(po,"_createForOfIteratorHelper");o(Ype,"_defineProperty$1");o(AHe,"_iterableToArray");o(_He,"_iterableToArrayLimit");o(DHe,"_nonIterableRest");o(RHe,"_nonIterableSpread");o(Vi,"_slicedToArray");o(NE,"_toConsumableArray");o(LHe,"_toPrimitive");o(jpe,"_toPropertyKey");o(ea,"_typeof");o(FP,"_unsupportedIterableToArray");Zi=typeof window>"u"?null:window,xfe=Zi?Zi.navigator:null;Zi&&Zi.document;NHe=ea(""),Xpe=ea({}),MHe=ea(function(){}),IHe=typeof HTMLElement>"u"?"undefined":ea(HTMLElement),Fb=o(function(e){return e&&e.instanceString&&xi(e.instanceString)?e.instanceString():null},"instanceStr"),nr=o(function(e){return e!=null&&ea(e)==NHe},"string"),xi=o(function(e){return e!=null&&ea(e)===MHe},"fn"),Pn=o(function(e){return!zo(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},"array"),rn=o(function(e){return e!=null&&ea(e)===Xpe&&!Pn(e)&&e.constructor===Object},"plainObject"),OHe=o(function(e){return e!=null&&ea(e)===Xpe},"object"),Rt=o(function(e){return e!=null&&ea(e)===ea(1)&&!isNaN(e)},"number"),PHe=o(function(e){return Rt(e)&&Math.floor(e)===e},"integer"),ME=o(function(e){if(IHe!=="undefined")return e!=null&&e instanceof HTMLElement},"htmlElement"),zo=o(function(e){return $b(e)||Kpe(e)},"elementOrCollection"),$b=o(function(e){return Fb(e)==="collection"&&e._private.single},"element"),Kpe=o(function(e){return Fb(e)==="collection"&&!e._private.single},"collection"),$P=o(function(e){return Fb(e)==="core"},"core"),Qpe=o(function(e){return Fb(e)==="stylesheet"},"stylesheet"),BHe=o(function(e){return Fb(e)==="event"},"event"),md=o(function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},"emptyString"),FHe=o(function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},"domElement"),$He=o(function(e){return rn(e)&&Rt(e.x1)&&Rt(e.x2)&&Rt(e.y1)&&Rt(e.y2)},"boundingBox"),zHe=o(function(e){return OHe(e)&&xi(e.then)},"promise"),GHe=o(function(){return xfe&&xfe.userAgent.match(/msie|trident|edge/i)},"ms"),W1=o(function(e,r){r||(r=o(function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var a=[],s=0;sr?1:0},"ascending"),jHe=o(function(e,r){return-1*Jpe(e,r)},"descending"),cr=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r1&&(v-=1),v<1/6?g+(y-g)*6*v:v<1/2?y:v<2/3?g+(y-g)*(2/3-v)*6:g}o(f,"hue2rgb");var d=new RegExp("^"+UHe+"$").exec(e);if(d){if(n=parseInt(d[1]),n<0?n=(360- -1*n%360)%360:n>360&&(n=n%360),n/=360,i=parseFloat(d[2]),i<0||i>100||(i=i/100,a=parseFloat(d[3]),a<0||a>100)||(a=a/100,s=d[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(i===0)l=u=h=Math.round(a*255);else{var p=a<.5?a*(1+i):a+i-a*i,m=2*a-p;l=Math.round(255*f(m,p,n+1/3)),u=Math.round(255*f(m,p,n)),h=Math.round(255*f(m,p,n-1/3))}r=[l,u,h,s]}return r},"hsl2tuple"),QHe=o(function(e){var r,n=new RegExp("^"+VHe+"$").exec(e);if(n){r=[];for(var i=[],a=1;a<=3;a++){var s=n[a];if(s[s.length-1]==="%"&&(i[a]=!0),s=parseFloat(s),i[a]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var l=i[1]||i[2]||i[3],u=i[1]&&i[2]&&i[3];if(l&&!u)return;var h=n[4];if(h!==void 0){if(h=parseFloat(h),h<0||h>1)return;r.push(h)}}return r},"rgb2tuple"),ZHe=o(function(e){return JHe[e.toLowerCase()]},"colorname2tuple"),e0e=o(function(e){return(Pn(e)?e:null)||ZHe(e)||XHe(e)||QHe(e)||KHe(e)},"color2tuple"),JHe={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},t0e=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:I0,n=r,i;i=e.next(),!i.done;)n=n*a0e+i.value|0;return n},"hashIterableInts"),_b=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:I0;return r*a0e+e|0},"hashInt"),Db=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:B1;return(r<<5)+r+e|0},"hashIntAlt"),hYe=o(function(e,r){return e*2097152+r},"combineHashes"),od=o(function(e){return e[0]*2097152+e[1]},"combineHashesArray"),cE=o(function(e,r){return[_b(e[0],r[0]),Db(e[1],r[1])]},"hashArrays"),Ofe=o(function(e,r){var n={value:0,done:!1},i=0,a=e.length,s={next:o(function(){return i=0;i--)e[i]===r&&e.splice(i,1)},"removeFromArray"),UP=o(function(e){e.splice(0,e.length)},"clearArray"),TYe=o(function(e,r){for(var n=0;n"u"?"undefined":ea(Set))!==kYe?Set:SYe,jE=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!$P(e)){si("An element must have a core reference and parameters set");return}var i=r.group;if(i==null&&(r.data&&r.data.source!=null&&r.data.target!=null?i="edges":i="nodes"),i!=="nodes"&&i!=="edges"){si("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?i==="edges":!!r.pannable,active:!1,classes:new j1,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(a.position.x==null&&(a.position.x=0),a.position.y==null&&(a.position.y=0),r.renderedPosition){var s=r.renderedPosition,l=e.pan(),u=e.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];Pn(r.classes)?h=r.classes:nr(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;f0;){var k=b.pop(),C=v(k),D=k.id();if(p[D]=C,C!==1/0)for(var R=k.neighborhood().intersect(g),O=0;O0)for(B.unshift(P);d[G];){var $=d[G];B.unshift($.edge),B.unshift($.node),F=$.node,G=F.id()}return l.spawn(B)},"pathTo")}},"dijkstra")},LYe={kruskal:o(function(e){e=e||function(T){return 1};for(var r=this.byGroup(),n=r.nodes,i=r.edges,a=n.length,s=new Array(a),l=n,u=o(function(E){for(var w=0;w0;){if(w(),C++,E===f){for(var D=[],R=a,O=f,L=x[O];D.unshift(R),L!=null&&D.unshift(L),R=v[O],R!=null;)O=R.id(),L=x[O];return{found:!0,distance:d[E],path:this.spawn(D),steps:C}}m[E]=!0;for(var S=T._private.edges,A=0;AL&&(g[O]=L,b[O]=R,T[O]=w),!a){var S=R*f+D;!a&&g[S]>L&&(g[S]=L,b[S]=D,T[S]=w)}}}for(var A=0;A1&&arguments[1]!==void 0?arguments[1]:s,ye=T(j),$e=[],Xe=ye;;){if(Xe==null)return r.spawn();var Ue=b(Xe),Le=Ue.edge,Ie=Ue.pred;if($e.unshift(Xe[0]),Xe.same(Ge)&&$e.length>0)break;Le!=null&&$e.unshift(Le),Xe=Ie}return u.spawn($e)},"pathTo"),k=0;k=0;f--){var d=h[f],p=d[1],m=d[2];(r[p]===l&&r[m]===u||r[p]===u&&r[m]===l)&&h.splice(f,1)}for(var g=0;gi;){var a=Math.floor(Math.random()*r.length);r=$Ye(a,e,r),n--}return r},"contractUntil"),zYe={kargerStein:o(function(){var e=this,r=this.byGroup(),n=r.nodes,i=r.edges;i.unmergeBy(function(B){return B.isLoop()});var a=n.length,s=i.length,l=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),u=Math.floor(a/FYe);if(a<2){si("At least 2 nodes are required for Karger-Stein algorithm");return}for(var h=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,a=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;i?e=e.slice(r,n):(n0&&e.splice(0,r));for(var l=0,u=e.length-1;u>=0;u--){var h=e[u];s?isFinite(h)||(e[u]=-1/0,l++):e.splice(u,1)}a&&e.sort(function(p,m){return p-m});var f=e.length,d=Math.floor(f/2);return f%2!==0?e[d+1+l]:(e[d-1+l]+e[d+l])/2},"median"),HYe=o(function(e){return Math.PI*e/180},"deg2rad"),uE=o(function(e,r){return Math.atan2(r,e)-Math.PI/2},"getAngleFromDisp"),WP=Math.log2||function(t){return Math.log(t)/Math.log(2)},HP=o(function(e){return e>0?1:e<0?-1:0},"signum"),F0=o(function(e,r){return Math.sqrt(N0(e,r))},"dist"),N0=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return n*n+i*i},"sqdist"),YYe=o(function(e){for(var r=e.length,n=0,i=0;i=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},"makeBoundingBox"),XYe=o(function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},"copyBoundingBox"),KYe=o(function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},"clearBoundingBox"),QYe=o(function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},"updateBoundingBox"),d0e=o(function(e,r,n){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},"expandBoundingBoxByPoint"),wE=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBox"),kE=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],n,i,a,s;if(r.length===1)n=i=a=s=r[0];else if(r.length===2)n=a=r[0],s=i=r[1];else if(r.length===4){var l=Vi(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return e.x1-=s,e.x2+=i,e.y1-=n,e.y2+=a,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBoxSides"),Gfe=o(function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},"assignBoundingBox"),YP=o(function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},"boundingBoxesIntersect"),hd=o(function(e,r,n){return e.x1<=r&&r<=e.x2&&e.y1<=n&&n<=e.y2},"inBoundingBox"),Vfe=o(function(e,r){return hd(e,r.x,r.y)},"pointInBoundingBox"),p0e=o(function(e,r){return hd(e,r.x1,r.y1)&&hd(e,r.x2,r.y2)},"boundingBoxInBoundingBox"),ZYe=(aO=Math.hypot)!==null&&aO!==void 0?aO:function(t,e){return Math.sqrt(t*t+e*e)};o(JYe,"inflatePolygon");o(eje,"miterBox");m0e=o(function(e,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?yd(a,s):u,f=a/2,d=s/2;h=Math.min(h,f,d);var p=h!==f,m=h!==d,g;if(p){var y=n-f+h-l,v=i-d-l,x=n+f-h+l,b=v;if(g=fd(e,r,n,i,y,v,x,b,!1),g.length>0)return g}if(m){var T=n+f+l,E=i-d+h-l,w=T,k=i+d-h+l;if(g=fd(e,r,n,i,T,E,w,k,!1),g.length>0)return g}if(p){var C=n-f+h-l,D=i+d+l,R=n+f-h+l,O=D;if(g=fd(e,r,n,i,C,D,R,O,!1),g.length>0)return g}if(m){var L=n-f-l,S=i-d+h-l,A=L,_=i+d-h+l;if(g=fd(e,r,n,i,L,S,A,_,!1),g.length>0)return g}var N;{var M=n-f+h,P=i-d+h;if(N=wb(e,r,n,i,M,P,h+l),N.length>0&&N[0]<=M&&N[1]<=P)return[N[0],N[1]]}{var B=n+f-h,F=i-d+h;if(N=wb(e,r,n,i,B,F,h+l),N.length>0&&N[0]>=B&&N[1]<=F)return[N[0],N[1]]}{var G=n+f-h,$=i+d-h;if(N=wb(e,r,n,i,G,$,h+l),N.length>0&&N[0]>=G&&N[1]>=$)return[N[0],N[1]]}{var V=n-f+h,K=i+d-h;if(N=wb(e,r,n,i,V,K,h+l),N.length>0&&N[0]<=V&&N[1]>=K)return[N[0],N[1]]}return[]},"roundRectangleIntersectLine"),tje=o(function(e,r,n,i,a,s,l){var u=l,h=Math.min(n,a),f=Math.max(n,a),d=Math.min(i,s),p=Math.max(i,s);return h-u<=e&&e<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),rje=o(function(e,r,n,i,a,s,l,u,h){var f={x1:Math.min(n,l,a)-h,x2:Math.max(n,l,a)+h,y1:Math.min(i,u,s)-h,y2:Math.max(i,u,s)+h};return!(ef.x2||rf.y2)},"inBezierVicinity"),nje=o(function(e,r,n,i){n-=i;var a=r*r-4*e*n;if(a<0)return[];var s=Math.sqrt(a),l=2*e,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),ije=o(function(e,r,n,i,a){var s=1e-5;e===0&&(e=s),r/=e,n/=e,i/=e;var l,u,h,f,d,p,m,g;if(u=(3*n-r*r)/9,h=-(27*i)+r*(9*n-2*(r*r)),h/=54,l=u*u*u+h*h,a[1]=0,m=r/3,l>0){d=h+Math.sqrt(l),d=d<0?-Math.pow(-d,1/3):Math.pow(d,1/3),p=h-Math.sqrt(l),p=p<0?-Math.pow(-p,1/3):Math.pow(p,1/3),a[0]=-m+d+p,m+=(d+p)/2,a[4]=a[2]=-m,m=Math.sqrt(3)*(-p+d)/2,a[3]=m,a[5]=-m;return}if(a[5]=a[3]=0,l===0){g=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),a[0]=-m+2*g,a[4]=a[2]=-(g+m);return}u=-u,f=u*u*u,f=Math.acos(h/Math.sqrt(f)),g=2*Math.sqrt(u),a[0]=-m+g*Math.cos(f/3),a[2]=-m+g*Math.cos((f+2*Math.PI)/3),a[4]=-m+g*Math.cos((f+4*Math.PI)/3)},"solveCubic"),aje=o(function(e,r,n,i,a,s,l,u){var h=1*n*n-4*n*a+2*n*l+4*a*a-4*a*l+l*l+i*i-4*i*s+2*i*u+4*s*s-4*s*u+u*u,f=9*n*a-3*n*n-3*n*l-6*a*a+3*a*l+9*i*s-3*i*i-3*i*u-6*s*s+3*s*u,d=3*n*n-6*n*a+n*l-n*e+2*a*a+2*a*e-l*e+3*i*i-6*i*s+i*u-i*r+2*s*s+2*s*r-u*r,p=1*n*a-n*n+n*e-a*e+i*s-i*i+i*r-s*r,m=[];ije(h,f,d,p,m);for(var g=1e-7,y=[],v=0;v<6;v+=2)Math.abs(m[v+1])=0&&m[v]<=1&&y.push(m[v]);y.push(1),y.push(0);for(var x=-1,b,T,E,w=0;w=0?Eh?(e-a)*(e-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),fo=o(function(e,r,n){for(var i,a,s,l,u,h=0,f=0;f=e&&e>=s||i<=e&&e<=s)u=(e-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),Lh=o(function(e,r,n,i,a,s,l,u,h){var f=new Array(n.length),d;u[0]!=null?(d=Math.atan(u[1]/u[0]),u[0]<0?d=d+Math.PI/2:d=-d-Math.PI/2):d=u;for(var p=Math.cos(-d),m=Math.sin(-d),g=0;g0){var v=BE(f,-h);y=PE(v)}else y=f;return fo(e,r,y)},"pointInsidePolygon"),oje=o(function(e,r,n,i,a,s,l,u){for(var h=new Array(n.length*2),f=0;f=0&&v<=1&&b.push(v),x>=0&&x<=1&&b.push(x),b.length===0)return[];var T=b[0]*u[0]+e,E=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[T,E];var w=b[1]*u[0]+e,k=b[1]*u[1]+r;return[T,E,w,k]}else return[T,E]},"intersectLineCircle"),sO=o(function(e,r,n){return r<=e&&e<=n||n<=e&&e<=r?e:e<=r&&r<=n||n<=r&&r<=e?r:n},"midOfThree"),fd=o(function(e,r,n,i,a,s,l,u,h){var f=e-a,d=n-e,p=l-a,m=r-s,g=i-r,y=u-s,v=p*m-y*f,x=d*m-g*f,b=y*d-p*g;if(b!==0){var T=v/b,E=x/b,w=.001,k=0-w,C=1+w;return k<=T&&T<=C&&k<=E&&E<=C?[e+T*d,r+T*g]:h?[e+T*d,r+T*g]:[]}else return v===0||x===0?sO(e,n,l)===l?[l,u]:sO(e,n,a)===a?[a,s]:sO(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),cje=o(function(e,r,n,i,a){var s=[],l=i/2,u=a/2,h=r,f=n;s.push({x:h+l*e[0],y:f+u*e[1]});for(var d=1;d0){var y=BE(d,-u);m=PE(y)}else m=d}else m=n;for(var v,x,b,T,E=0;E2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-e,2)+Math.pow(g[1]-r,2),v=1;vf&&(f=E)},"set"),get:o(function(T){return h[T]},"get")},p=0;p0?N=_.edgesTo(A)[0]:N=A.edgesTo(_)[0];var M=i(N);A=A.id(),C[A]>C[L]+M&&(C[A]=C[L]+M,D.nodes.indexOf(A)<0?D.push(A):D.updateItem(A),k[A]=0,w[A]=[]),C[A]==C[L]+M&&(k[A]=k[A]+k[L],w[A].push(L))}else for(var P=0;P0;){for(var $=E.pop(),V=0;V0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),Sje=o(function(e,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:Aje,l=i,u,h,f=0;f=2?mb(e,r,n,0,Yfe,_je):mb(e,r,n,0,Hfe)},"euclidean"),squaredEuclidean:o(function(e,r,n){return mb(e,r,n,0,Yfe)},"squaredEuclidean"),manhattan:o(function(e,r,n){return mb(e,r,n,0,Hfe)},"manhattan"),max:o(function(e,r,n){return mb(e,r,n,-1/0,Dje)},"max")};H1["squared-euclidean"]=H1.squaredEuclidean;H1.squaredeuclidean=H1.squaredEuclidean;o(KE,"clusteringDistance");Rje=za({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),XP=o(function(e){return Rje(e)},"setOptions"),FE=o(function(e,r,n,i,a){var s=a!=="kMedoids",l=s?function(d){return n[d]}:function(d){return i[d](n)},u=o(function(p){return i[p](r)},"getQ"),h=n,f=r;return KE(e,i.length,l,u,h,f)},"getDist"),lO=o(function(e,r,n){for(var i=n.length,a=new Array(i),s=new Array(i),l=new Array(r),u=null,h=0;hn)return!1}return!0},"haveMatricesConverged"),Mje=o(function(e,r,n){for(var i=0;il&&(l=r[h][f],u=f);a[u].push(e[h])}for(var d=0;d=a.threshold||a.mode==="dendrogram"&&e.length===1)return!1;var g=r[s],y=r[i[s]],v;a.mode==="dendrogram"?v={left:g,right:y,key:g.key}:v={value:g.value.concat(y.value),key:g.key},e[g.index]=v,e.splice(y.index,1),r[g.key]=v;for(var x=0;xn[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="max"?(u=n[g.key][b.key],n[g.key][b.key]0&&i.push(a);return i},"findExemplars"),Jfe=o(function(e,r,n){for(var i=[],a=0;al&&(s=h,l=r[a*e+h])}s>0&&i.push(s)}for(var f=0;fh&&(u=f,h=d)}n[a]=s[u]}return i=Jfe(e,r,n),i},"assign"),ede=o(function(e){for(var r=this.cy(),n=this.nodes(),i=Wje(e),a={},s=0;s=L?(S=L,L=_,A=N):_>S&&(S=_);for(var M=0;M0?1:0;C[R%i.minIterations*l+V]=K,$+=K}if($>0&&(R>=i.minIterations-1||R==i.maxIterations-1)){for(var ee=0,H=0;H1||k>1)&&(l=!0),d[T]=[],b.outgoers().forEach(function(D){D.isEdge()&&d[T].push(D.id())})}else p[T]=[void 0,b.target().id()]}):s.forEach(function(b){var T=b.id();if(b.isNode()){var E=b.degree(!0);E%2&&(u?h?l=!0:h=T:u=T),d[T]=[],b.connectedEdges().forEach(function(w){return d[T].push(w.id())})}else p[T]=[b.source().id(),b.target().id()]});var m={found:!1,trail:void 0};if(l)return m;if(h&&u)if(a){if(f&&h!=f)return m;f=h}else{if(f&&h!=f&&u!=f)return m;f||(f=h)}else f||(f=s[0].id());var g=o(function(T){for(var E=T,w=[T],k,C,D;d[E].length;)k=d[E].shift(),C=p[k][0],D=p[k][1],E!=D?(d[D]=d[D].filter(function(R){return R!=k}),E=D):!a&&E!=C&&(d[C]=d[C].filter(function(R){return R!=k}),E=C),w.unshift(k),w.unshift(E);return w},"walk"),y=[],v=[];for(v=g(f);v.length!=1;)d[v[0]].length==0?(y.unshift(s.getElementById(v.shift())),y.unshift(s.getElementById(v.shift()))):v=g(v.shift()).concat(v);y.unshift(s.getElementById(v.shift()));for(var x in d)if(d[x].length)return m;return m.found=!0,m.trail=this.spawn(y,!0),m},"hierholzer")},fE=o(function(){var e=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],v=e.spawn();s[g].x!=p||s[g].y!=m;)y.push(s.pop().edge),g--;y.push(s.pop().edge),y.forEach(function(x){var b=x.connectedNodes().intersection(e);v.merge(x),b.forEach(function(T){var E=T.id(),w=T.connectedEdges().intersection(e);v.merge(T),r[E].cutVertex?v.merge(w.filter(function(k){return k.isLoop()})):v.merge(w)})}),a.push(v)},"buildComponent"),h=o(function(p,m,g){p===g&&(i+=1),r[m]={id:n,low:n++,cutVertex:!1};var y=e.getElementById(m).connectedEdges().intersection(e);if(y.size()===0)a.push(e.spawn(e.getElementById(m)));else{var v,x,b,T;y.forEach(function(E){v=E.source().id(),x=E.target().id(),b=v===m?x:v,b!==g&&(T=E.id(),l[T]||(l[T]=!0,s.push({x:m,y:b,edge:E})),b in r?r[m].low=Math.min(r[m].low,r[b].id):(h(p,b,m),r[m].low=Math.min(r[m].low,r[b].low),r[m].id<=r[b].low&&(r[m].cutVertex=!0,u(m,b))))})}},"biconnectedSearch");e.forEach(function(d){if(d.isNode()){var p=d.id();p in r||(i=0,h(p,p),r[p].cutVertex=i>1)}});var f=Object.keys(r).filter(function(d){return r[d].cutVertex}).map(function(d){return e.getElementById(d)});return{cut:e.spawn(f),components:a}},"hopcroftTarjanBiconnected"),Jje={hopcroftTarjanBiconnected:fE,htbc:fE,htb:fE,hopcroftTarjanBiconnectedComponents:fE},dE=o(function(){var e=this,r={},n=0,i=[],a=[],s=e.spawn(e),l=o(function(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=e.getElementById(h).connectedEdges().intersection(e);if(f.forEach(function(y){var v=y.target().id();v!==h&&(v in r||l(v),r[v].explored||(r[h].low=Math.min(r[h].low,r[v].low)))}),r[h].index===r[h].low){for(var d=e.spawn();;){var p=a.pop();if(d.merge(e.getElementById(p)),r[p].low=r[h].index,r[p].explored=!0,p===h)break}var m=d.edgesWith(d),g=d.merge(m);i.push(g),s=s.difference(g)}},"stronglyConnectedSearch");return e.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),eXe={tarjanStronglyConnected:dE,tsc:dE,tscc:dE,tarjanStronglyConnectedComponents:dE},w0e={};[Rb,RYe,LYe,MYe,OYe,BYe,zYe,dje,V1,q1,TP,Cje,$je,qje,Kje,Zje,Jje,eXe].forEach(function(t){cr(w0e,t)});k0e=0,S0e=1,E0e=2,dc=o(function(e){if(!(this instanceof dc))return new dc(e);this.id="Thenable/1.0.7",this.state=k0e,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e=="function"&&e.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");dc.prototype={fulfill:o(function(e){return tde(this,S0e,"fulfillValue",e)},"fulfill"),reject:o(function(e){return tde(this,E0e,"rejectReason",e)},"reject"),then:o(function(e,r){var n=this,i=new dc;return n.onFulfilled.push(nde(e,i,"fulfill")),n.onRejected.push(nde(r,i,"reject")),C0e(n),i.proxy},"then")};tde=o(function(e,r,n,i){return e.state===k0e&&(e.state=r,e[n]=i,C0e(e)),e},"deliver"),C0e=o(function(e){e.state===S0e?rde(e,"onFulfilled",e.fulfillValue):e.state===E0e&&rde(e,"onRejected",e.rejectReason)},"execute"),rde=o(function(e,r,n){if(e[r].length!==0){var i=e[r];e[r]=[];var a=o(function(){for(var l=0;l0},"animatedImpl")},"animated"),clearQueue:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return this;for(var s=0;s0&&this.spawn(i).updateStyle().emit("class"),r},"classes"),addClass:o(function(e){return this.toggleClass(e,!0)},"addClass"),hasClass:o(function(e){var r=this[0];return r!=null&&r._private.classes.has(e)},"hasClass"),toggleClass:o(function(e,r){Pn(e)||(e=e.match(/\S+/g)||[]);for(var n=this,i=r===void 0,a=[],s=0,l=n.length;s0&&this.spawn(a).updateStyle().emit("class"),n},"toggleClass"),removeClass:o(function(e){return this.toggleClass(e,!1)},"removeClass"),flashClass:o(function(e,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(e),setTimeout(function(){n.removeClass(e)},r),n},"flashClass")};SE.className=SE.classNames=SE.classes;tn={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Ji,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};tn.variable="(?:[\\w-.]|(?:\\\\"+tn.metaChar+"))+";tn.className="(?:[\\w-]|(?:\\\\"+tn.metaChar+"))+";tn.value=tn.string+"|"+tn.number;tn.id=tn.variable;(function(){var t,e,r;for(t=tn.comparatorOp.split("|"),r=0;r=0)&&e!=="="&&(tn.comparatorOp+="|\\!"+e)})();_n=o(function(){return{checks:[]}},"newQuery"),qt={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},EP=[{selector:":selected",matches:o(function(e){return e.selected()},"matches")},{selector:":unselected",matches:o(function(e){return!e.selected()},"matches")},{selector:":selectable",matches:o(function(e){return e.selectable()},"matches")},{selector:":unselectable",matches:o(function(e){return!e.selectable()},"matches")},{selector:":locked",matches:o(function(e){return e.locked()},"matches")},{selector:":unlocked",matches:o(function(e){return!e.locked()},"matches")},{selector:":visible",matches:o(function(e){return e.visible()},"matches")},{selector:":hidden",matches:o(function(e){return!e.visible()},"matches")},{selector:":transparent",matches:o(function(e){return e.transparent()},"matches")},{selector:":grabbed",matches:o(function(e){return e.grabbed()},"matches")},{selector:":free",matches:o(function(e){return!e.grabbed()},"matches")},{selector:":removed",matches:o(function(e){return e.removed()},"matches")},{selector:":inside",matches:o(function(e){return!e.removed()},"matches")},{selector:":grabbable",matches:o(function(e){return e.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(e){return!e.grabbable()},"matches")},{selector:":animated",matches:o(function(e){return e.animated()},"matches")},{selector:":unanimated",matches:o(function(e){return!e.animated()},"matches")},{selector:":parent",matches:o(function(e){return e.isParent()},"matches")},{selector:":childless",matches:o(function(e){return e.isChildless()},"matches")},{selector:":child",matches:o(function(e){return e.isChild()},"matches")},{selector:":orphan",matches:o(function(e){return e.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(e){return e.isChild()},"matches")},{selector:":compound",matches:o(function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()},"matches")},{selector:":loop",matches:o(function(e){return e.isLoop()},"matches")},{selector:":simple",matches:o(function(e){return e.isSimple()},"matches")},{selector:":active",matches:o(function(e){return e.active()},"matches")},{selector:":inactive",matches:o(function(e){return!e.active()},"matches")},{selector:":backgrounding",matches:o(function(e){return e.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(e){return!e.backgrounding()},"matches")}].sort(function(t,e){return jHe(t.selector,e.selector)}),QXe=(function(){for(var t={},e,r=0;r0&&f.edgeCount>0)return bn("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return bn("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&bn("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},"parse"),nKe=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var e=o(function(f){return f??""},"clean"),r=o(function(f){return nr(f)?'"'+f+'"':e(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case qt.GROUP:{var g=e(m);return g.substring(0,g.length-1)}case qt.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(e(v))+r(m)+"]"}case qt.DATA_BOOL:{var x=f.operator,b=f.field;return"["+e(x)+b+"]"}case qt.DATA_EXIST:{var T=f.field;return"["+T+"]"}case qt.META_COMPARE:{var E=f.operator,w=f.field;return"[["+w+n(e(E))+r(m)+"]]"}case qt.STATE:return m;case qt.ID:return"#"+m;case qt.CLASS:return"."+m;case qt.PARENT:case qt.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case qt.ANCESTOR:case qt.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case qt.COMPOUND_SPLIT:{var k=a(f.left,d),C=a(f.subject,d),D=a(f.right,d);return k+(k.length>0?" ":"")+C+D}case qt.TRUE:return""}},"checkToString"),a=o(function(f,d){return f.checks.reduce(function(p,m,g){return p+(d===f&&g===0?"$":"")+i(m,d)},"")},"queryToString"),s="",l=0;l1&&l=0&&(r=r.replace("!",""),d=!0),r.indexOf("@")>=0&&(r=r.replace("@",""),f=!0),(a||l||f)&&(u=!a&&!s?"":""+e,h=""+n),f&&(e=u=u.toLowerCase(),n=h=h.toLowerCase()),r){case"*=":i=u.indexOf(h)>=0;break;case"$=":i=u.indexOf(h,u.length-h.length)>=0;break;case"^=":i=u.indexOf(h)===0;break;case"=":i=e===n;break;case">":p=!0,i=e>n;break;case">=":p=!0,i=e>=n;break;case"<":p=!0,i=e1&&arguments[1]!==void 0?arguments[1]:!0;return JP(this,t,e,I0e)};o(O0e,"addParent");Y1.forEachUp=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return JP(this,t,e,O0e)};o(hKe,"addParentAndChildren");Y1.forEachUpAndDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return JP(this,t,e,hKe)};Y1.ancestors=Y1.parents;Mb=P0e={data:xn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:xn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:xn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:xn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:xn.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:xn.removeData({field:"rscratch",triggerEvent:!1}),id:o(function(){var e=this[0];if(e)return e._private.data.id},"id")};Mb.attr=Mb.data;Mb.removeAttr=Mb.removeData;fKe=P0e,tC={};o(sP,"defineDegreeFunction");cr(tC,{degree:sP(function(t,e){return e.source().same(e.target())?2:1}),indegree:sP(function(t,e){return e.target().same(t)?1:0}),outdegree:sP(function(t,e){return e.source().same(t)?1:0})});o(L1,"defineDegreeBoundsFunction");cr(tC,{minDegree:L1("degree",function(t,e){return te}),minIndegree:L1("indegree",function(t,e){return te}),minOutdegree:L1("outdegree",function(t,e){return te})});cr(tC,{totalDegree:o(function(e){for(var r=0,n=this.nodes(),i=0;i0,p=d;d&&(f=f[0]);var m=p?f.position():{x:0,y:0};r!==void 0?h.position(e,r+m[e]):a!==void 0&&h.position({x:a.x+m.x,y:a.y+m.y})}else{var g=n.position(),y=l?n.parent():null,v=y&&y.length>0,x=v;v&&(y=y[0]);var b=x?y.position():{x:0,y:0};return a={x:g.x-b.x,y:g.y-b.y},e===void 0?a:a[e]}else if(!s)return;return this},"relativePosition")};fc.modelPosition=fc.point=fc.position;fc.modelPositions=fc.points=fc.positions;fc.renderedPoint=fc.renderedPosition;fc.relativePoint=fc.relativePosition;dKe=B0e;U1=kd={};kd.renderedBoundingBox=function(t){var e=this.boundingBox(t),r=this.cy(),n=r.zoom(),i=r.pan(),a=e.x1*n+i.x,s=e.x2*n+i.x,l=e.y1*n+i.y,u=e.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};kd.dirtyCompoundBoundsCache=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();return!e.styleEnabled()||!e.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,t||r.emitAndNotify("bounds")}}),this)};kd.updateCompoundBounds=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!t&&e.batching())return this;function r(s){if(!s.isParent())return;var l=s._private,u=s.children(),h=s.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:s.pstyle("min-width").pfValue,left:s.pstyle("min-width-bias-left"),right:s.pstyle("min-width-bias-right")},height:{val:s.pstyle("min-height").pfValue,top:s.pstyle("min-height-bias-top"),bottom:s.pstyle("min-height-bias-bottom")}},d=u.boundingBox({includeLabels:h,includeOverlays:!1,useCache:!1}),p=l.position;(d.w===0||d.h===0)&&(d={w:s.pstyle("width").pfValue,h:s.pstyle("height").pfValue},d.x1=p.x-d.w/2,d.x2=p.x+d.w/2,d.y1=p.y-d.h/2,d.y2=p.y+d.h/2);function m(R,O,L){var S=0,A=0,_=O+L;return R>0&&_>0&&(S=O/_*R,A=L/_*R),{biasDiff:S,biasComplementDiff:A}}o(m,"computeBiasValues");function g(R,O,L,S){if(L.units==="%")switch(S){case"width":return R>0?L.pfValue*R:0;case"height":return O>0?L.pfValue*O:0;case"average":return R>0&&O>0?L.pfValue*(R+O)/2:0;case"min":return R>0&&O>0?R>O?L.pfValue*O:L.pfValue*R:0;case"max":return R>0&&O>0?R>O?L.pfValue*R:L.pfValue*O:0;default:return 0}else return L.units==="px"?L.pfValue:0}o(g,"computePaddingValues");var y=f.width.left.value;f.width.left.units==="px"&&f.width.val>0&&(y=y*100/f.width.val);var v=f.width.right.value;f.width.right.units==="px"&&f.width.val>0&&(v=v*100/f.width.val);var x=f.height.top.value;f.height.top.units==="px"&&f.height.val>0&&(x=x*100/f.height.val);var b=f.height.bottom.value;f.height.bottom.units==="px"&&f.height.val>0&&(b=b*100/f.height.val);var T=m(f.width.val-d.w,y,v),E=T.biasDiff,w=T.biasComplementDiff,k=m(f.height.val-d.h,x,b),C=k.biasDiff,D=k.biasComplementDiff;l.autoPadding=g(d.w,d.h,s.pstyle("padding"),s.pstyle("padding-relative-to").value),l.autoWidth=Math.max(d.w,f.width.val),p.x=(-E+d.x1+d.x2+w)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-C+d.y1+d.y2+D)/2}o(r,"update");for(var n=0;ne.x2?i:e.x2,e.y1=ne.y2?a:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},"updateBounds"),cd=o(function(e,r){return r==null?e:hc(e,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),gb=o(function(e,r,n){return ho(e,r,n)},"prefixedProperty"),pE=o(function(e,r,n){if(!r.cy().headless()){var i=r._private,a=i.rstyle,s=a.arrowWidth/2,l=r.pstyle(n+"-arrow-shape").value,u,h;if(l!=="none"){n==="source"?(u=a.srcX,h=a.srcY):n==="target"?(u=a.tgtX,h=a.tgtY):(u=a.midX,h=a.midY);var f=i.arrowBounds=i.arrowBounds||{},d=f[n]=f[n]||{};d.x1=u-s,d.y1=h-s,d.x2=u+s,d.y2=h+s,d.w=d.x2-d.x1,d.h=d.y2-d.y1,wE(d,1),hc(e,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),oP=o(function(e,r,n){if(!r.cy().headless()){var i;n?i=n+"-":i="";var a=r._private,s=a.rstyle,l=r.pstyle(i+"label").strValue;if(l){var u=r.pstyle("text-halign"),h=r.pstyle("text-valign"),f=gb(s,"labelWidth",n),d=gb(s,"labelHeight",n),p=gb(s,"labelX",n),m=gb(s,"labelY",n),g=r.pstyle(i+"text-margin-x").pfValue,y=r.pstyle(i+"text-margin-y").pfValue,v=r.isEdge(),x=r.pstyle(i+"text-rotation"),b=r.pstyle("text-outline-width").pfValue,T=r.pstyle("text-border-width").pfValue,E=T/2,w=r.pstyle("text-background-padding").pfValue,k=2,C=d,D=f,R=D/2,O=C/2,L,S,A,_;if(v)L=p-R,S=p+R,A=m-O,_=m+O;else{switch(u.value){case"left":L=p-D,S=p;break;case"center":L=p-R,S=p+R;break;case"right":L=p,S=p+D;break}switch(h.value){case"top":A=m-C,_=m;break;case"center":A=m-O,_=m+O;break;case"bottom":A=m,_=m+C;break}}var N=g-Math.max(b,E)-w-k,M=g+Math.max(b,E)+w+k,P=y-Math.max(b,E)-w-k,B=y+Math.max(b,E)+w+k;L+=N,S+=M,A+=P,_+=B;var F=n||"main",G=a.labelBounds,$=G[F]=G[F]||{};$.x1=L,$.y1=A,$.x2=S,$.y2=_,$.w=S-L,$.h=_-A,$.leftPad=N,$.rightPad=M,$.topPad=P,$.botPad=B;var V=v&&x.strValue==="autorotate",K=x.pfValue!=null&&x.pfValue!==0;if(V||K){var ee=V?gb(a.rstyle,"labelAngle",n):x.pfValue,H=Math.cos(ee),he=Math.sin(ee),Z=(L+S)/2,de=(A+_)/2;if(!v){switch(u.value){case"left":Z=S;break;case"right":Z=L;break}switch(h.value){case"top":de=_;break;case"bottom":de=A;break}}var re=o(function(Te,j){return Te=Te-Z,j=j-de,{x:Te*H-j*he+Z,y:Te*he+j*H+de}},"rotate"),ne=re(L,A),te=re(L,_),Q=re(S,A),le=re(S,_);L=Math.min(ne.x,te.x,Q.x,le.x),S=Math.max(ne.x,te.x,Q.x,le.x),A=Math.min(ne.y,te.y,Q.y,le.y),_=Math.max(ne.y,te.y,Q.y,le.y)}var J=F+"Rot",ge=G[J]=G[J]||{};ge.x1=L,ge.y1=A,ge.x2=S,ge.y2=_,ge.w=S-L,ge.h=_-A,hc(e,L,A,S,_),hc(a.labelBounds.all,L,A,S,_)}return e}},"updateBoundsFromLabel"),rpe=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("outline-opacity").value,i=r.pstyle("outline-width").value,a=r.pstyle("outline-offset").value,s=i+a;$0e(e,r,n,s,"outside",s/2)}},"updateBoundsFromOutline"),$0e=o(function(e,r,n,i,a,s){if(!(n===0||i<=0||a==="inside")){var l=r.cy(),u=r.pstyle("shape").value,h=l.renderer().nodeShapes[u],f=r.position(),d=f.x,p=f.y,m=r.width(),g=r.height();if(h.hasMiterBounds){a==="center"&&(i/=2);var y=h.miterBounds(d,p,m,g,i);cd(e,y)}else s!=null&&s>0&&kE(e,[s,s,s,s])}},"updateBoundsFromMiter"),pKe=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("border-opacity").value,i=r.pstyle("border-width").pfValue,a=r.pstyle("border-position").value;$0e(e,r,n,i,a)}},"updateBoundsFromMiterBorder"),mKe=o(function(e,r){var n=e._private.cy,i=n.styleEnabled(),a=n.headless(),s=Ls(),l=e._private,u=e.isNode(),h=e.isEdge(),f,d,p,m,g,y,v=l.rstyle,x=u&&i?e.pstyle("bounds-expansion").pfValue:[0],b=o(function(ie){return ie.pstyle("display").value!=="none"},"isDisplayed"),T=!i||b(e)&&(!h||b(e.source())&&b(e.target()));if(T){var E=0,w=0;i&&r.includeOverlays&&(E=e.pstyle("overlay-opacity").value,E!==0&&(w=e.pstyle("overlay-padding").value));var k=0,C=0;i&&r.includeUnderlays&&(k=e.pstyle("underlay-opacity").value,k!==0&&(C=e.pstyle("underlay-padding").value));var D=Math.max(w,C),R=0,O=0;if(i&&(R=e.pstyle("width").pfValue,O=R/2),u&&r.includeNodes){var L=e.position();g=L.x,y=L.y;var S=e.outerWidth(),A=S/2,_=e.outerHeight(),N=_/2;f=g-A,d=g+A,p=y-N,m=y+N,hc(s,f,p,d,m),i&&rpe(s,e),i&&r.includeOutlines&&!a&&rpe(s,e),i&&pKe(s,e)}else if(h&&r.includeEdges)if(i&&!a){var M=e.pstyle("curve-style").strValue;if(f=Math.min(v.srcX,v.midX,v.tgtX),d=Math.max(v.srcX,v.midX,v.tgtX),p=Math.min(v.srcY,v.midY,v.tgtY),m=Math.max(v.srcY,v.midY,v.tgtY),f-=O,d+=O,p-=O,m+=O,hc(s,f,p,d,m),M==="haystack"){var P=v.haystackPts;if(P&&P.length===2){if(f=P[0].x,p=P[0].y,d=P[1].x,m=P[1].y,f>d){var B=f;f=d,d=B}if(p>m){var F=p;p=m,m=F}hc(s,f-O,p-O,d+O,m+O)}}else if(M==="bezier"||M==="unbundled-bezier"||ud(M,"segments")||ud(M,"taxi")){var G;switch(M){case"bezier":case"unbundled-bezier":G=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":G=v.linePts;break}if(G!=null)for(var $=0;$d){var Z=f;f=d,d=Z}if(p>m){var de=p;p=m,m=de}f-=O,d+=O,p-=O,m+=O,hc(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(pE(s,e,"mid-source"),pE(s,e,"mid-target"),pE(s,e,"source"),pE(s,e,"target")),i){var re=e.pstyle("ghost").value==="yes";if(re){var ne=e.pstyle("ghost-offset-x").pfValue,te=e.pstyle("ghost-offset-y").pfValue;hc(s,s.x1+ne,s.y1+te,s.x2+ne,s.y2+te)}}var Q=l.bodyBounds=l.bodyBounds||{};Gfe(Q,s),kE(Q,x),wE(Q,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,hc(s,f-D,p-D,d+D,m+D));var le=l.overlayBounds=l.overlayBounds||{};Gfe(le,s),kE(le,x),wE(le,1);var J=l.labelBounds=l.labelBounds||{};J.all!=null?KYe(J.all):J.all=Ls(),i&&r.includeLabels&&(r.includeMainLabels&&oP(s,e,null),h&&(r.includeSourceLabels&&oP(s,e,"source"),r.includeTargetLabels&&oP(s,e,"target")))}return s.x1=El(s.x1),s.y1=El(s.y1),s.x2=El(s.x2),s.y2=El(s.y2),s.w=El(s.x2-s.x1),s.h=El(s.y2-s.y1),s.w>0&&s.h>0&&T&&(kE(s,x),wE(s,1)),s},"boundingBoxImpl"),z0e=o(function(e){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};bd.removeAllListeners=function(){return this.removeListener("*")};bd.emit=bd.trigger=function(t,e,r){var n=this.listeners,i=n.length;return this.emitting++,Pn(e)||(e=[e]),LKe(this,function(a,s){r!=null&&(n=[{event:s.event,type:s.type,namespace:s.namespace,callback:r}],i=n.length);for(var l=o(function(){var f=n[u];if(f.type===s.type&&(!f.namespace||f.namespace===s.namespace||f.namespace===DKe)&&a.eventMatches(a.context,f,s)){var d=[s];e!=null&&TYe(d,e),a.beforeEmit(a.context,f,s),f.conf&&f.conf.one&&(a.listeners=a.listeners.filter(function(g){return g!==f}));var p=a.callbackContext(a.context,f,s),m=f.callback.apply(p,d);a.afterEmit(a.context,f,s),m===!1&&(s.stopPropagation(),s.preventDefault())}},"_loop2"),u=0;u1&&!s){var l=this.length-1,u=this[l],h=u._private.data.id;this[l]=void 0,this[e]=u,a.set(h,{ele:u,index:e})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(e){e=e[0];var r=this._private,n=e._private.data.id,i=r.map,a=i.get(n);if(!a)return this;var s=a.index;return this.unmergeAt(s),this},"unmergeOne"),unmerge:o(function(e){var r=this._private.cy;if(!e)return this;if(e&&nr(e)){var n=e;e=r.mutableElements().filter(n)}for(var i=0;i=0;r--){var n=this[r];e(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(e,r){for(var n=[],i=this,a=0;an&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(e,r){for(var n=1/0,i,a=this,s=0;s=0&&a"u"?"undefined":ea(Symbol))!=e&&ea(Symbol.iterator)!=e;r&&($E[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return Ype({next:o(function(){return a1&&arguments[1]!==void 0?arguments[1]:!0,n=this[0],i=n.cy();if(i.styleEnabled()&&n){n._private.styleDirty&&(n._private.styleDirty=!1,i.style().apply(n));var a=n._private.style[e];return a??(r?i.style().getDefaultProperty(e):null)}},"parsedStyle"),numericStyle:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(e);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(e).units},"numericStyleUnits"),renderedStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,e)},"renderedStyle"),style:o(function(e,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(rn(e)){var s=e;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(nr(e))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,e):void 0}else a.applyBypass(this,e,r,i),this.emitAndNotify("style");else if(e===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(e===void 0)for(var s=0;s0&&e.push(f[0]),e.push(l[0])}return this.spawn(e,!0).filter(t)},"neighborhood"),closedNeighborhood:o(function(e){return this.neighborhood().add(this).filter(e)},"closedNeighborhood"),openNeighborhood:o(function(e){return this.neighborhood(e)},"openNeighborhood")});ns.neighbourhood=ns.neighborhood;ns.closedNeighbourhood=ns.closedNeighborhood;ns.openNeighbourhood=ns.openNeighborhood;cr(ns,{source:Cl(o(function(e){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&e?n.filter(e):n},"sourceImpl"),"source"),target:Cl(o(function(e){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&e?n.filter(e):n},"targetImpl"),"target"),sources:dpe({attr:"source"}),targets:dpe({attr:"target"})});o(dpe,"defineSourceFunction");cr(ns,{edgesWith:Cl(ppe(),"edgesWith"),edgesTo:Cl(ppe({thisIsSrc:!0}),"edgesTo")});o(ppe,"defineEdgesWithFunction");cr(ns,{connectedEdges:Cl(function(t){for(var e=[],r=this,n=0;n0);return s},"components"),component:o(function(){var e=this[0];return e.cy().mutableElements().components(e)[0]},"component")});ns.componentsOf=ns.components;$a=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){si("A collection must have a reference to the core");return}var a=new Dh,s=!1;if(!r)r=[];else if(r.length>0&&rn(r[0])&&!$b(r[0])){s=!0;for(var l=[],u=new j1,h=0,f=r.length;h0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=r.cy(),i=n._private,a=[],s=[],l,u=0,h=r.length;u0){for(var F=l.length===r.length?r:new $a(n,l),G=0;G0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=[],i={},a=r._private.cy;function s(_){for(var N=_._private.edges,M=0;M0&&(t?L.emitAndNotify("remove"):e&&L.emit("remove"));for(var S=0;Sf&&Math.abs(g.v)>f;);return p?function(y){return u[y*(u.length-1)|0]}:h},"springRK4Factory")})(),Vn=o(function(e,r,n,i){var a=GKe(e,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),CE={linear:o(function(e,r,n){return e+(r-e)*n},"linear"),ease:Vn(.25,.1,.25,1),"ease-in":Vn(.42,0,1,1),"ease-out":Vn(0,0,.58,1),"ease-in-out":Vn(.42,0,.58,1),"ease-in-sine":Vn(.47,0,.745,.715),"ease-out-sine":Vn(.39,.575,.565,1),"ease-in-out-sine":Vn(.445,.05,.55,.95),"ease-in-quad":Vn(.55,.085,.68,.53),"ease-out-quad":Vn(.25,.46,.45,.94),"ease-in-out-quad":Vn(.455,.03,.515,.955),"ease-in-cubic":Vn(.55,.055,.675,.19),"ease-out-cubic":Vn(.215,.61,.355,1),"ease-in-out-cubic":Vn(.645,.045,.355,1),"ease-in-quart":Vn(.895,.03,.685,.22),"ease-out-quart":Vn(.165,.84,.44,1),"ease-in-out-quart":Vn(.77,0,.175,1),"ease-in-quint":Vn(.755,.05,.855,.06),"ease-out-quint":Vn(.23,1,.32,1),"ease-in-out-quint":Vn(.86,0,.07,1),"ease-in-expo":Vn(.95,.05,.795,.035),"ease-out-expo":Vn(.19,1,.22,1),"ease-in-out-expo":Vn(1,0,0,1),"ease-in-circ":Vn(.6,.04,.98,.335),"ease-out-circ":Vn(.075,.82,.165,1),"ease-in-out-circ":Vn(.785,.135,.15,.86),spring:o(function(e,r,n){if(n===0)return CE.linear;var i=VKe(e,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":Vn};o(gpe,"getEasedValue");o(ype,"getValue");o(N1,"ease");o(qKe,"step$1");o(vb,"valid");o(UKe,"startAnimation");o(vpe,"stepAll");WKe={animate:xn.animate(),animation:xn.animation(),animated:xn.animated(),clearQueue:xn.clearQueue(),delay:xn.delay(),delayAnimation:xn.delayAnimation(),stop:xn.stop(),addToAnimationPool:o(function(e){var r=this;r.styleEnabled()&&r._private.aniEles.merge(e)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function r(){e._private.animationsRunning&&IE(o(function(a){vpe(a,e),r()},"animationStep"))}o(r,"headlessStep");var n=e.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){vpe(s,e)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},HKe={qualifierCompare:o(function(e,r){return e==null||r==null?e==null&&r==null:e.sameText(r)},"qualifierCompare"),eventMatches:o(function(e,r,n){var i=r.qualifier;return i!=null?e!==n.target&&$b(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(e,r){r.cy=e,r.target=e},"addEventFields"),callbackContext:o(function(e,r,n){return r.qualifier!=null?n.target:e},"callbackContext")},yE=o(function(e){return nr(e)?new vd(e):e},"argSelector"),Q0e={createEmitter:o(function(){var e=this._private;return e.emitter||(e.emitter=new rC(HKe,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){return this.emitter().on(e,yE(r),n),this},"on"),removeListener:o(function(e,r,n){return this.emitter().removeListener(e,yE(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(e,r,n){return this.emitter().one(e,yE(r),n),this},"one"),once:o(function(e,r,n){return this.emitter().one(e,yE(r),n),this},"once"),emit:o(function(e,r){return this.emitter().emit(e,r),this},"emit"),emitAndNotify:o(function(e,r){return this.emit(e),this.notify(e,r),this},"emitAndNotify")};xn.eventAliasesOn(Q0e);AP={png:o(function(e){var r=this._private.renderer;return e=e||{},r.png(e)},"png"),jpg:o(function(e){var r=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",r.jpg(e)},"jpg")};AP.jpeg=AP.jpg;AE={layout:o(function(e){var r=this;if(e==null){si("Layout options must be specified to make a layout");return}if(e.name==null){si("A `name` must be specified to make a layout");return}var n=e.name,i=r.extension("layout",n);if(i==null){si("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;nr(e.eles)?a=r.$(e.eles):a=e.eles!=null?e.eles:r.$();var s=new i(cr({},e,{cy:r,eles:a}));return s},"layout")};AE.createLayout=AE.makeLayout=AE.layout;YKe={notify:o(function(e,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(e,r)}},"notify"),notifications:o(function(e){var r=this._private;return e===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!e,this)},"notifications"),noNotifications:o(function(e){this.notifications(!1),e(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var e=this._private;return e.batchCount==null&&(e.batchCount=0),e.batchCount===0&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},"startBatch"),endBatch:o(function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(e.batchNotifications).forEach(function(n){var i=e.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(e){return this.startBatch(),e(),this.endBatch(),this},"batch"),batchData:o(function(e){var r=this;return this.batch(function(){for(var n=Object.keys(e),i=0;i0;)r.removeChild(r.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(e){return this.on("render",e)},"onRender"),offRender:o(function(e){return this.off("render",e)},"offRender")};_P.invalidateDimensions=_P.resize;_E={collection:o(function(e,r){return nr(e)?this.$(e):zo(e)?e.collection():Pn(e)?(r||(r={}),new $a(this,e,r.unique,r.removed)):new $a(this)},"collection"),nodes:o(function(e){var r=this.$(function(n){return n.isNode()});return e?r.filter(e):r},"nodes"),edges:o(function(e){var r=this.$(function(n){return n.isEdge()});return e?r.filter(e):r},"edges"),$:o(function(e){var r=this._private.elements;return e?r.filter(e):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};_E.elements=_E.filter=_E.$;Ta={},Eb="t",XKe="f";Ta.apply=function(t){for(var e=this,r=e._private,n=r.cy,i=n.collection(),a=0;a0;if(p||d&&m){var g=void 0;p&&m||p?g=h.properties:m&&(g=h.mappedProperties);for(var y=0;y1&&(E=1),l.color){var k=n.valueMin[0],C=n.valueMax[0],D=n.valueMin[1],R=n.valueMax[1],O=n.valueMin[2],L=n.valueMax[2],S=n.valueMin[3]==null?1:n.valueMin[3],A=n.valueMax[3]==null?1:n.valueMax[3],_=[Math.round(k+(C-k)*E),Math.round(D+(R-D)*E),Math.round(O+(L-O)*E),Math.round(S+(A-S)*E)];a={bypass:n.bypass,name:n.name,value:_,strValue:"rgb("+_[0]+", "+_[1]+", "+_[2]+")"}}else if(l.number){var N=n.valueMin+(n.valueMax-n.valueMin)*E;a=this.parse(n.name,N,n.bypass,p)}else return!1;if(!a)return y(),!1;a.mapping=n,n=a;break}case s.data:{for(var M=n.field.split("."),P=d.data,B=0;B0&&a>0){for(var l={},u=!1,h=0;h0?t.delayAnimation(s).play().promise().then(T):T()}).then(function(){return t.animation({style:l,duration:a,easing:t.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1)};Ta.checkTrigger=function(t,e,r,n,i,a){var s=this.properties[e],l=i(s);t.removed()||l!=null&&l(r,n,t)&&a(s)};Ta.checkZOrderTrigger=function(t,e,r,n){var i=this;this.checkTrigger(t,e,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",t)})};Ta.checkBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBounds},function(i){t.dirtyCompoundBoundsCache(),t.dirtyBoundingBoxCache()})};Ta.checkConnectedEdgesBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBoundsOfConnectedEdges},function(i){t.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};Ta.checkParallelEdgesBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBoundsOfParallelEdges},function(i){t.parallelEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};Ta.checkTriggers=function(t,e,r,n){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,r,n),this.checkBoundsTrigger(t,e,r,n),this.checkConnectedEdgesBoundsTrigger(t,e,r,n),this.checkParallelEdgesBoundsTrigger(t,e,r,n)};Hb={};Hb.applyBypass=function(t,e,r,n){var i=this,a=[],s=!0;if(e==="*"||e==="**"){if(r!==void 0)for(var l=0;li.length?n=n.substr(i.length):n=""}o(l,"removeSelAndBlockFromRemaining");function u(){a.length>s.length?a=a.substr(s.length):a=""}for(o(u,"removePropAndValFromRem");;){var h=n.match(/^\s*$/);if(h)break;var f=n.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){bn("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+n);break}i=f[0];var d=f[1];if(d!=="core"){var p=new vd(d);if(p.invalid){bn("Skipping parsing of block: Invalid selector found in string stylesheet: "+d),l();continue}}var m=f[2],g=!1;a=m;for(var y=[];;){var v=a.match(/^\s*$/);if(v)break;var x=a.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!x){bn("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+m),g=!0;break}s=x[0];var b=x[1],T=x[2],E=e.properties[b];if(!E){bn("Skipping property: Invalid property name in: "+s),u();continue}var w=r.parse(b,T);if(!w){bn("Skipping property: Invalid property definition in: "+s),u();continue}y.push({name:b,val:T}),u()}if(g){l();break}r.selector(d);for(var k=0;k=7&&e[0]==="d"&&(f=new RegExp(l.data.regex).exec(e))){if(r)return!1;var p=l.data;return{name:t,value:f,strValue:""+e,mapped:p,field:f[1],bypass:r}}else if(e.length>=10&&e[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(e))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(t,d[4]);if(!g||g.mapped)return!1;var y=this.parse(t,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return bn("`"+t+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+t+": "+g.strValue+"`"),this.parse(t,g.strValue);if(h.color){var v=g.value,x=y.value,b=v[0]===x[0]&&v[1]===x[1]&&v[2]===x[2]&&(v[3]===x[3]||(v[3]==null||v[3]===1)&&(x[3]==null||x[3]===1));if(b)return!1}return{name:t,value:d,strValue:""+e,mapped:m,field:d[1],fieldMin:parseFloat(d[2]),fieldMax:parseFloat(d[3]),valueMin:g.value,valueMax:y.value,bypass:r}}}if(h.multiple&&n!=="multiple"){var T;if(u?T=e.split(/\s+/):Pn(e)?T=e:T=[e],h.evenMultiple&&T.length%2!==0)return null;for(var E=[],w=[],k=[],C="",D=!1,R=0;R0?" ":"")+O.strValue}return h.validate&&!h.validate(E,w)?null:h.singleEnum&&D?E.length===1&&nr(E[0])?{name:t,value:E[0],strValue:E[0],bypass:r}:null:{name:t,value:E,pfValue:k,strValue:C,bypass:r,units:w}}var L=o(function(){for(var re=0;reh.max||h.strictMax&&e===h.max))return null;var M={name:t,value:e,strValue:""+e+(S||""),units:S,bypass:r};return h.unitless||S!=="px"&&S!=="em"?M.pfValue=e:M.pfValue=S==="px"||!S?e:this.getEmSizeInPixels()*e,(S==="ms"||S==="s")&&(M.pfValue=S==="ms"?e:1e3*e),(S==="deg"||S==="rad")&&(M.pfValue=S==="rad"?e:HYe(e)),S==="%"&&(M.pfValue=e/100),M}else if(h.propList){var P=[],B=""+e;if(B!=="none"){for(var F=B.split(/\s*,\s*|\s+/),G=0;G0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0){u=Math.min((s-2*r)/n.w,(l-2*r)/n.h),u=u>this._private.maxZoom?this._private.maxZoom:u,u=u=n.minZoom&&(n.maxZoom=r),this},"zoomRange"),minZoom:o(function(e){return e===void 0?this._private.minZoom:this.zoomRange({min:e})},"minZoom"),maxZoom:o(function(e){return e===void 0?this._private.maxZoom:this.zoomRange({max:e})},"maxZoom"),getZoomedViewport:o(function(e){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),Rt(e)?s=e:rn(e)&&(s=e.level,e.position!=null?a=XE(e.position,i,n):e.renderedPosition!=null&&(a=e.renderedPosition),a!=null&&!r.panningEnabled&&(l=!0)),s=s>r.maxZoom?r.maxZoom:s,s=sr.maxZoom||!r.zoomingEnabled?s=!0:(r.zoom=u,a.push("zoom"))}if(i&&(!s||!e.cancelOnFailedZoom)&&r.panningEnabled){var h=e.pan;Rt(h.x)&&(r.pan.x=h.x,l=!1),Rt(h.y)&&(r.pan.y=h.y,l=!1),l||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},"viewport"),center:o(function(e){var r=this.getCenterPan(e);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(e,r){if(this._private.panningEnabled){if(nr(e)){var n=e;e=this.mutableElements().filter(n)}else zo(e)||(e=this.mutableElements());if(e.length!==0){var i=e.boundingBox(),a=this.width(),s=this.height();r=r===void 0?this._private.zoom:r;var l={x:(a-r*(i.x1+i.x2))/2,y:(s-r*(i.y1+i.y2))/2};return l}}},"getCenterPan"),reset:o(function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},"reset"),invalidateSize:o(function(){this._private.sizeCache=null},"invalidateSize"),size:o(function(){var e=this._private,r=e.container,n=this;return e.sizeCache=e.sizeCache||(r?(function(){var i=n.window().getComputedStyle(r),a=o(function(l){return parseFloat(i.getPropertyValue(l))},"val");return{width:r.clientWidth-a("padding-left")-a("padding-right"),height:r.clientHeight-a("padding-top")-a("padding-bottom")}})():{width:1,height:1})},"size"),width:o(function(){return this.size().width},"width"),height:o(function(){return this.size().height},"height"),extent:o(function(){var e=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-e.x)/r,x2:(n.x2-e.x)/r,y1:(n.y1-e.y)/r,y2:(n.y2-e.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var e=this.width(),r=this.height();return{x1:0,y1:0,x2:e,y2:r,w:e,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};z0.centre=z0.center;z0.autolockNodes=z0.autolock;z0.autoungrabifyNodes=z0.autoungrabify;Ob={data:xn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:xn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:xn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:xn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Ob.attr=Ob.data;Ob.removeAttr=Ob.removeData;Pb=o(function(e){var r=this;e=cr({},e);var n=e.container;n&&!ME(n)&&ME(n[0])&&(n=n[0]);var i=n?n._cyreg:null;i=i||{},i&&i.cy&&(i.cy.destroy(),i={});var a=i.readies=i.readies||[];n&&(n._cyreg=i),i.cy=r;var s=Zi!==void 0&&n!==void 0&&!e.headless,l=e;l.layout=cr({name:s?"grid":"null"},l.layout),l.renderer=cr({name:s?"canvas":"null"},l.renderer);var u=o(function(g,y,v){return y!==void 0?y:v!==void 0?v:g},"defVal"),h=this._private={container:n,ready:!1,options:l,elements:new $a(this),listeners:[],aniEles:new $a(this),data:l.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:u(!0,l.zoomingEnabled),userZoomingEnabled:u(!0,l.userZoomingEnabled),panningEnabled:u(!0,l.panningEnabled),userPanningEnabled:u(!0,l.userPanningEnabled),boxSelectionEnabled:u(!0,l.boxSelectionEnabled),autolock:u(!1,l.autolock,l.autolockNodes),autoungrabify:u(!1,l.autoungrabify,l.autoungrabifyNodes),autounselectify:u(!1,l.autounselectify),styleEnabled:l.styleEnabled===void 0?s:l.styleEnabled,zoom:Rt(l.zoom)?l.zoom:1,pan:{x:rn(l.pan)&&Rt(l.pan.x)?l.pan.x:0,y:rn(l.pan)&&Rt(l.pan.y)?l.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:u(250,l.multiClickDebounceTime)};this.createEmitter(),this.selectionType(l.selectionType),this.zoomRange({min:l.minZoom,max:l.maxZoom});var f=o(function(g,y){var v=g.some(zHe);if(v)return X1.all(g).then(y);y(g)},"loadExtData");h.styleEnabled&&r.setStyle([]);var d=cr({},l,l.renderer);r.initRenderer(d);var p=o(function(g,y,v){r.notifications(!1);var x=r.mutableElements();x.length>0&&x.remove(),g!=null&&(rn(g)||Pn(g))&&r.add(g),r.one("layoutready",function(T){r.notifications(!0),r.emit(T),r.one("load",y),r.emitAndNotify("load")}).one("layoutstop",function(){r.one("done",v),r.emit("done")});var b=cr({},r._private.options.layout);b.eles=r.elements(),r.layout(b).run()},"setElesAndLayout");f([l.style,l.elements],function(m){var g=m[0],y=m[1];h.styleEnabled&&r.style().append(g),p(y,function(){r.startAnimationLoop(),h.ready=!0,xi(l.ready)&&r.on("ready",l.ready);for(var v=0;v0,l=!!t.boundingBox,u=Ls(l?t.boundingBox:structuredClone(e.extent())),h;if(zo(t.roots))h=t.roots;else if(Pn(t.roots)){for(var f=[],d=0;d0;){var _=A(),N=R(_,L);if(N)_.outgoers().filter(function(Ge){return Ge.isNode()&&r.has(Ge)}).forEach(S);else if(N===null){bn("Detected double maximal shift for node `"+_.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var M=0;if(t.avoidOverlap)for(var P=0;P0&&x[0].length<=3?Le/2:0),Me=2*Math.PI/x[Xe].length*Ue;return Xe===0&&x[0].length===1&&(Ie=1),{x:Q.x+Ie*Math.cos(Me),y:Q.y+Ie*Math.sin(Me)}}else{var Ae=x[Xe].length,ze=Math.max(Ae===1?0:l?(u.w-t.padding*2-le.w)/((t.grid?ge:Ae)-1):(u.w-t.padding*2-le.w)/((t.grid?ge:Ae)+1),M),Y={x:Q.x+(Ue+1-(Ae+1)/2)*ze,y:Q.y+(Xe+1-(H+1)/2)*J};return Y}},"getPositionTopBottom"),Te={downward:0,leftward:90,upward:180,rightward:-90};Object.keys(Te).indexOf(t.direction)===-1&&si("Invalid direction '".concat(t.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(Te).join(", ")));var j=o(function(ye){return mYe(ie(ye),u,Te[t.direction])},"getPosition");return r.nodes().layoutPositions(this,t,j),this};eQe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(J0e,"CircleLayout");J0e.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,a=n.nodes().not(":parent");e.sort&&(a=a.sort(e.sort));for(var s=Ls(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=e.sweep===void 0?2*Math.PI-2*Math.PI/a.length:e.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p1&&e.avoidOverlap){d*=1.75;var x=Math.cos(h)-Math.cos(0),b=Math.sin(h)-Math.sin(0),T=Math.sqrt(d*d/(x*x+b*b));f=Math.max(T,f)}var E=o(function(k,C){var D=e.startAngle+C*h*(i?1:-1),R=f*Math.cos(D),O=f*Math.sin(D),L={x:l.x+R,y:l.y+O};return L},"getPos");return n.nodes().layoutPositions(this,e,E),this};tQe={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:o(function(e){return e.degree()},"concentric"),levelWidth:o(function(e){return e.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(eme,"ConcentricLayout");eme.prototype.run=function(){for(var t=this.options,e=t,r=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,n=t.cy,i=e.eles,a=i.nodes().not(":parent"),s=Ls(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=[],h=0,f=0;f0){var w=Math.abs(b[0].value-E.value);w>=v&&(b=[],x.push(b))}b.push(E)}var k=h+e.minNodeSpacing;if(!e.avoidOverlap){var C=x.length>0&&x[0].length>1,D=Math.min(s.w,s.h)/2-k,R=D/(x.length+C?1:0);k=Math.min(k,R)}for(var O=0,L=0;L1&&e.avoidOverlap){var N=Math.cos(_)-Math.cos(0),M=Math.sin(_)-Math.sin(0),P=Math.sqrt(k*k/(N*N+M*M));O=Math.max(P,O)}S.r=O,O+=k}if(e.equidistant){for(var B=0,F=0,G=0;G=t.numIter||(lQe(n,t),n.temperature=n.temperature*t.coolingFactor,n.temperature=t.animationThreshold&&a(),IE(f)}},"frame");f()}else{for(;h;)h=s(u),u++;Tpe(n,t),l()}return this};oC.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};oC.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};nQe=o(function(e,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=Ls(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),l={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:n.initialTemp,clientWidth:s.w,clientHeight:s.h,boundingBox:s},u=n.eles.components(),h={},f=0;f0){l.graphSet.push(D);for(var f=0;fi.count?0:i.graph},"findLCA"),tme=o(function(e,r,n,i){var a=i.graphSet[n];if(-10)var d=i.nodeOverlap*f,p=Math.sqrt(l*l+u*u),m=d*l/p,g=d*u/p;else var y=GE(e,l,u),v=GE(r,-1*l,-1*u),x=v.x-y.x,b=v.y-y.y,T=x*x+b*b,p=Math.sqrt(T),d=(e.nodeRepulsion+r.nodeRepulsion)/T,m=d*x/p,g=d*b/p;e.isLocked||(e.offsetX-=m,e.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),hQe=o(function(e,r,n,i){if(n>0)var a=e.maxX-r.minX;else var a=r.maxX-e.minX;if(i>0)var s=e.maxY-r.minY;else var s=r.maxY-e.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),GE=o(function(e,r,n){var i=e.positionX,a=e.positionY,s=e.height||1,l=e.width||1,u=n/r,h=s/l,f={};return r===0&&0n?(f.x=i,f.y=a+s/2,f):0r&&-1*h<=u&&u<=h?(f.x=i-l/2,f.y=a-l*n/2/r,f):0=h)?(f.x=i+s*r/2/n,f.y=a+s/2,f):(0>n&&(u<=-1*h||u>=h)&&(f.x=i-s*r/2/n,f.y=a-s/2),f)},"findClippingPoint"),fQe=o(function(e,r){for(var n=0;nn){var v=r.gravity*m/y,x=r.gravity*g/y;p.offsetX+=v,p.offsetY+=x}}}}},"calculateGravityForces"),pQe=o(function(e,r){var n=[],i=0,a=-1;for(n.push.apply(n,e.graphSet[0]),a+=e.graphSet[0].length;i<=a;){var s=n[i++],l=e.idToIndex[s],u=e.layoutNodes[l],h=u.children;if(0n)var a={x:n*e/i,y:n*r/i};else var a={x:e,y:r};return a},"limitForce"),nme=o(function(e,r){var n=e.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||e.maxX+i.padRight>i.maxX)&&(i.maxX=e.maxX+i.padRight,a=!0),(i.minX==null||e.minX-i.padLefti.maxY)&&(i.maxY=e.maxY+i.padBottom,a=!0),(i.minY==null||e.minY-i.padTopx&&(g+=v+r.componentSpacing,m=0,y=0,v=0)}}},"separateComponents"),yQe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:o(function(e){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(ime,"GridLayout");ime.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=n.nodes().not(":parent");e.sort&&(i=i.sort(e.sort));var a=Ls(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,e,function(K){return{x:a.x1,y:a.y1}});else{var s=i.size(),l=Math.sqrt(s*a.h/a.w),u=Math.round(l),h=Math.round(a.w/a.h*l),f=o(function(ee){if(ee==null)return Math.min(u,h);var H=Math.min(u,h);H==u?u=ee:h=ee},"small"),d=o(function(ee){if(ee==null)return Math.max(u,h);var H=Math.max(u,h);H==u?u=ee:h=ee},"large"),p=e.rows,m=e.cols!=null?e.cols:e.columns;if(p!=null&&m!=null)u=p,h=m;else if(p!=null&&m==null)u=p,h=Math.ceil(s/u);else if(p==null&&m!=null)h=m,u=Math.ceil(s/h);else if(h*u>s){var g=f(),y=d();(g-1)*y>=s?f(g-1):(y-1)*g>=s&&d(y-1)}else for(;h*u=s?d(x+1):f(v+1)}var b=a.w/h,T=a.h/u;if(e.condense&&(b=0,T=0),e.avoidOverlap)for(var E=0;E=h&&(N=0,_++)},"moveToNextCell"),P={},B=0;B(N=sje(t,e,M[P],M[P+1],M[P+2],M[P+3])))return v(C,N),!0}else if(R.edgeType==="bezier"||R.edgeType==="multibezier"||R.edgeType==="self"||R.edgeType==="compound"){for(var M=R.allpts,P=0;P+5(N=aje(t,e,M[P],M[P+1],M[P+2],M[P+3],M[P+4],M[P+5])))return v(C,N),!0}for(var B=B||D.source,F=F||D.target,G=i.getArrowWidth(O,L),$=[{name:"source",x:R.arrowStartX,y:R.arrowStartY,angle:R.srcArrowAngle},{name:"target",x:R.arrowEndX,y:R.arrowEndY,angle:R.tgtArrowAngle},{name:"mid-source",x:R.midX,y:R.midY,angle:R.midsrcArrowAngle},{name:"mid-target",x:R.midX,y:R.midY,angle:R.midtgtArrowAngle}],P=0;P<$.length;P++){var V=$[P],K=a.arrowShapes[C.pstyle(V.name+"-arrow-shape").value],ee=C.pstyle("width").pfValue;if(K.roughCollide(t,e,G,V.angle,{x:V.x,y:V.y},ee,f)&&K.collide(t,e,G,V.angle,{x:V.x,y:V.y},ee,f))return v(C),!0}h&&l.length>0&&(x(B),x(F))}o(b,"checkEdge");function T(C,D,R){return ho(C,D,R)}o(T,"preprop");function E(C,D){var R=C._private,O=p,L;D?L=D+"-":L="",C.boundingBox();var S=R.labelBounds[D||"main"],A=C.pstyle(L+"label").value,_=C.pstyle("text-events").strValue==="yes";if(!(!_||!A)){var N=T(R.rscratch,"labelX",D),M=T(R.rscratch,"labelY",D),P=T(R.rscratch,"labelAngle",D),B=C.pstyle(L+"text-margin-x").pfValue,F=C.pstyle(L+"text-margin-y").pfValue,G=S.x1-O-B,$=S.x2+O-B,V=S.y1-O-F,K=S.y2+O-F;if(P){var ee=Math.cos(P),H=Math.sin(P),he=o(function(le,J){return le=le-N,J=J-M,{x:le*ee-J*H+N,y:le*H+J*ee+M}},"rotate"),Z=he(G,V),de=he(G,K),re=he($,V),ne=he($,K),te=[Z.x+B,Z.y+F,re.x+B,re.y+F,ne.x+B,ne.y+F,de.x+B,de.y+F];if(fo(t,e,te))return v(C),!0}else if(hd(S,t,e))return v(C),!0}}o(E,"checkLabel");for(var w=s.length-1;w>=0;w--){var k=s[w];k.isNode()?x(k)||E(k):b(k)||E(k)||E(k,"source")||E(k,"target")}return l};V0.getAllInBox=function(t,e,r,n){var i=this.getCachedZSortedEles().interactive,a=this.cy.zoom(),s=2/a,l=[],u=Math.min(t,r),h=Math.max(t,r),f=Math.min(e,n),d=Math.max(e,n);t=u,r=h,e=f,n=d;var p=Ls({x1:t,y1:e,x2:r,y2:n}),m=[{x:p.x1,y:p.y1},{x:p.x2,y:p.y1},{x:p.x2,y:p.y2},{x:p.x1,y:p.y2}],g=[[m[0],m[1]],[m[1],m[2]],[m[2],m[3]],[m[3],m[0]]];function y(le,J,ge){return ho(le,J,ge)}o(y,"preprop");function v(le,J){var ge=le._private,ie=s,Te="";le.boundingBox();var j=ge.labelBounds.main;if(!j)return null;var Ge=y(ge.rscratch,"labelX",J),ye=y(ge.rscratch,"labelY",J),$e=y(ge.rscratch,"labelAngle",J),Xe=le.pstyle(Te+"text-margin-x").pfValue,Ue=le.pstyle(Te+"text-margin-y").pfValue,Le=j.x1-ie-Xe,Ie=j.x2+ie-Xe,Me=j.y1-ie-Ue,Ae=j.y2+ie-Ue;if($e){var ze=Math.cos($e),Y=Math.sin($e),ce=o(function(ue,z){return ue=ue-Ge,z=z-ye,{x:ue*ze-z*Y+Ge,y:ue*Y+z*ze+ye}},"rotate");return[ce(Le,Me),ce(Ie,Me),ce(Ie,Ae),ce(Le,Ae)]}else return[{x:Le,y:Me},{x:Ie,y:Me},{x:Ie,y:Ae},{x:Le,y:Ae}]}o(v,"getRotatedLabelBox");function x(le,J,ge,ie){function Te(j,Ge,ye){return(ye.y-j.y)*(Ge.x-j.x)>(Ge.y-j.y)*(ye.x-j.x)}return o(Te,"ccw"),Te(le,ge,ie)!==Te(J,ge,ie)&&Te(le,J,ge)!==Te(le,J,ie)}o(x,"doLinesIntersect");for(var b=0;b0?-(Math.PI-e.ang):Math.PI+e.ang},"invertVec"),kQe=o(function(e,r,n,i,a){if(e!==Cpe?Ape(r,e,vu):wQe(Sl,vu),Ape(r,n,Sl),Spe=vu.nx*Sl.ny-vu.ny*Sl.nx,Epe=vu.nx*Sl.nx-vu.ny*-Sl.ny,Ah=Math.asin(Math.max(-1,Math.min(1,Spe))),Math.abs(Ah)<1e-6){DP=r.x,RP=r.y,M0=I1=0;return}O0=1,DE=!1,Epe<0?Ah<0?Ah=Math.PI+Ah:(Ah=Math.PI-Ah,O0=-1,DE=!0):Ah>0&&(O0=-1,DE=!0),r.radius!==void 0?I1=r.radius:I1=i,D0=Ah/2,vE=Math.min(vu.len/2,Sl.len/2),a?(gu=Math.abs(Math.cos(D0)*I1/Math.sin(D0)),gu>vE?(gu=vE,M0=Math.abs(gu*Math.sin(D0)/Math.cos(D0))):M0=I1):(gu=Math.min(vE,I1),M0=Math.abs(gu*Math.sin(D0)/Math.cos(D0))),LP=r.x+Sl.nx*gu,NP=r.y+Sl.ny*gu,DP=LP-Sl.ny*M0*O0,RP=NP+Sl.nx*M0*O0,lme=r.x+vu.nx*gu,cme=r.y+vu.ny*gu,Cpe=r},"calcCornerArc");o(ume,"drawPreparedRoundCorner");o(aB,"getRoundCorner");Bb=.01,SQe=Math.sqrt(2*Bb),as={};as.findMidptPtsEtc=function(t,e){var r=e.posPts,n=e.intersectionPts,i=e.vectorNormInverse,a,s=t.pstyle("source-endpoint"),l=t.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(w,k,C,D){var R=D-k,O=C-w,L=Math.sqrt(O*O+R*R);return{x:-R/L,y:O/L}},"recalcVectorNormInverse"),f=t.pstyle("edge-distances").value;switch(f){case"node-position":a=r;break;case"intersection":a=n;break;case"endpoints":{if(u){var d=this.manualEndptToPx(t.source()[0],s),p=Vi(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(t.target()[0],l),v=Vi(y,2),x=v[0],b=v[1],T={x1:m,y1:g,x2:x,y2:b};i=h(m,g,x,b),a=T}else bn("Edge ".concat(t.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),a=n;break}}return{midptPts:a,vectorNormInverse:i}};as.findHaystackPoints=function(t){for(var e=0;e0?Math.max(z-se,0):Math.min(z+se,0)},"subDWH"),A=S(O,D),_=S(L,R),N=!1;b===h?x=Math.abs(A)>Math.abs(_)?i:n:b===u||b===l?(x=n,N=!0):(b===a||b===s)&&(x=i,N=!0);var M=x===n,P=M?_:A,B=M?L:O,F=HP(B),G=!1;!(N&&(E||k))&&(b===l&&B<0||b===u&&B>0||b===a&&B>0||b===s&&B<0)&&(F*=-1,P=F*Math.abs(P),G=!0);var $;if(E){var V=w<0?1+w:w;$=V*P}else{var K=w<0?P:0;$=K+w*F}var ee=o(function(z){return Math.abs(z)=Math.abs(P)},"getIsTooClose"),H=ee($),he=ee(Math.abs(P)-Math.abs($)),Z=H||he;if(Z&&!G)if(M){var de=Math.abs(B)<=p/2,re=Math.abs(O)<=m/2;if(de){var ne=(f.x1+f.x2)/2,te=f.y1,Q=f.y2;r.segpts=[ne,te,ne,Q]}else if(re){var le=(f.y1+f.y2)/2,J=f.x1,ge=f.x2;r.segpts=[J,le,ge,le]}else r.segpts=[f.x1,f.y2]}else{var ie=Math.abs(B)<=d/2,Te=Math.abs(L)<=g/2;if(ie){var j=(f.y1+f.y2)/2,Ge=f.x1,ye=f.x2;r.segpts=[Ge,j,ye,j]}else if(Te){var $e=(f.x1+f.x2)/2,Xe=f.y1,Ue=f.y2;r.segpts=[$e,Xe,$e,Ue]}else r.segpts=[f.x2,f.y1]}else if(M){var Le=f.y1+$+(v?p/2*F:0),Ie=f.x1,Me=f.x2;r.segpts=[Ie,Le,Me,Le]}else{var Ae=f.x1+$+(v?d/2*F:0),ze=f.y1,Y=f.y2;r.segpts=[Ae,ze,Ae,Y]}if(r.isRound){var ce=t.pstyle("taxi-radius").value,U=t.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(ce),r.isArcRadius=new Array(r.segpts.length/2).fill(U)}};as.tryToCorrectInvalidPoints=function(t,e){var r=t._private.rscratch;if(r.edgeType==="bezier"){var n=e.srcPos,i=e.tgtPos,a=e.srcW,s=e.srcH,l=e.tgtW,u=e.tgtH,h=e.srcShape,f=e.tgtShape,d=e.srcCornerRadius,p=e.tgtCornerRadius,m=e.srcRs,g=e.tgtRs,y=!Rt(r.startX)||!Rt(r.startY),v=!Rt(r.arrowStartX)||!Rt(r.arrowStartY),x=!Rt(r.endX)||!Rt(r.endY),b=!Rt(r.arrowEndX)||!Rt(r.arrowEndY),T=3,E=this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth,w=T*E,k=F0({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),C=kB.poolIndex()){var F=P;P=B,B=F}var G=A.srcPos=P.position(),$=A.tgtPos=B.position(),V=A.srcW=P.outerWidth(),K=A.srcH=P.outerHeight(),ee=A.tgtW=B.outerWidth(),H=A.tgtH=B.outerHeight(),he=A.srcShape=r.nodeShapes[e.getNodeShape(P)],Z=A.tgtShape=r.nodeShapes[e.getNodeShape(B)],de=A.srcCornerRadius=P.pstyle("corner-radius").value==="auto"?"auto":P.pstyle("corner-radius").pfValue,re=A.tgtCornerRadius=B.pstyle("corner-radius").value==="auto"?"auto":B.pstyle("corner-radius").pfValue,ne=A.tgtRs=B._private.rscratch,te=A.srcRs=P._private.rscratch;A.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var Q=0;Q=SQe||(Me=Math.sqrt(Math.max(Ie*Ie,Bb)+Math.max(Le*Le,Bb)));var Ae=A.vector={x:Ie,y:Le},ze=A.vectorNorm={x:Ae.x/Me,y:Ae.y/Me},Y={x:-ze.y,y:ze.x};A.nodesOverlap=!Rt(Me)||Z.checkPoint(j[0],j[1],0,ee,H,$.x,$.y,re,ne)||he.checkPoint(ye[0],ye[1],0,V,K,G.x,G.y,de,te),A.vectorNormInverse=Y,_={nodesOverlap:A.nodesOverlap,dirCounts:A.dirCounts,calculatedIntersection:!0,hasBezier:A.hasBezier,hasUnbundled:A.hasUnbundled,eles:A.eles,srcPos:$,srcRs:ne,tgtPos:G,tgtRs:te,srcW:ee,srcH:H,tgtW:V,tgtH:K,srcIntn:$e,tgtIntn:Ge,srcShape:Z,tgtShape:he,posPts:{x1:Ue.x2,y1:Ue.y2,x2:Ue.x1,y2:Ue.y1},intersectionPts:{x1:Xe.x2,y1:Xe.y2,x2:Xe.x1,y2:Xe.y1},vector:{x:-Ae.x,y:-Ae.y},vectorNorm:{x:-ze.x,y:-ze.y},vectorNormInverse:{x:-Y.x,y:-Y.y}}}var ce=Te?_:A;J.nodesOverlap=ce.nodesOverlap,J.srcIntn=ce.srcIntn,J.tgtIntn=ce.tgtIntn,J.isRound=ge.startsWith("round"),i&&(P.isParent()||P.isChild()||B.isParent()||B.isChild())&&(P.parents().anySame(B)||B.parents().anySame(P)||P.same(B)&&P.isParent())?e.findCompoundLoopPoints(le,ce,Q,ie):P===B?e.findLoopPoints(le,ce,Q,ie):ge.endsWith("segments")?e.findSegmentsPoints(le,ce):ge.endsWith("taxi")?e.findTaxiPoints(le,ce):ge==="straight"||!ie&&A.eles.length%2===1&&Q===Math.floor(A.eles.length/2)?e.findStraightEdgePoints(le):e.findBezierPoints(le,ce,Q,ie,Te),e.findEndpoints(le),e.tryToCorrectInvalidPoints(le,ce),e.checkForInvalidEdgeWarning(le),e.storeAllpts(le),e.storeEdgeProjections(le),e.calculateArrowAngles(le),e.recalculateEdgeLabelProjections(le),e.calculateLabelAngles(le)}},"_loop"),C=0;C0){var j=h,Ge=N0(j,F1(s)),ye=N0(j,F1(Te)),$e=Ge;if(ye2){var Xe=N0(j,{x:Te[2],y:Te[3]});Xe<$e&&(s=[Te[2],Te[3]])}}}var Ue=hE(s,B,a.arrowShapes[d].spacing(t)+m),Le=hE(s,B,a.arrowShapes[d].gap(t)+m);if(b.endX=Le[0],b.endY=Le[1],b.arrowEndX=Ue[0],b.arrowEndY=Ue[1],A==="inside-to-node")s=[h.x,h.y];else if(S.units)s=this.manualEndptToPx(l,S);else if(A==="outside-to-line")s=b.srcIntn;else if(A==="outside-to-node"||A==="outside-to-node-or-label"?$=F:(A==="outside-to-line"||A==="outside-to-line-or-label")&&($=[f.x,f.y]),s=a.nodeShapes[this.getNodeShape(l)].intersectLine(h.x,h.y,l.outerWidth(),l.outerHeight(),$[0],$[1],0,_,y),A==="outside-to-node-or-label"||A==="outside-to-line-or-label"){var Ie=l._private.rscratch,Me=Ie.labelWidth,Ae=Ie.labelHeight,ze=Ie.labelX,Y=Ie.labelY,ce=Me/2,U=Ae/2,ue=l.pstyle("text-valign").value;ue==="top"?Y-=U:ue==="bottom"&&(Y+=U);var z=l.pstyle("text-halign").value;z==="left"?ze-=ce:z==="right"&&(ze+=ce);var se=Nb($[0],$[1],[ze-ce,Y-U,ze+ce,Y-U,ze+ce,Y+U,ze-ce,Y+U],h.x,h.y);if(se.length>0){var oe=f,be=N0(oe,F1(s)),pe=N0(oe,F1(se)),me=be;if(pe2){var De=N0(oe,{x:se[2],y:se[3]});De=g||C){v={cp:E,segment:k};break}}if(v)break}var D=v.cp,R=v.segment,O=(g-x)/R.length,L=R.t1-R.t0,S=m?R.t0+L*O:R.t1-L*O;S=Lb(0,S,1),e=G1(D.p0,D.p1,D.p2,S),p=CQe(D.p0,D.p1,D.p2,S);break}case"straight":case"segments":case"haystack":{for(var A=0,_,N,M,P,B=n.allpts.length,F=0;F+3=g));F+=2);var G=g-N,$=G/_;$=Lb(0,$,1),e=jYe(M,P,$),p=dme(M,P);break}}s("labelX",d,e.x),s("labelY",d,e.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(t)}};Tu.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))};Tu.applyPrefixedLabelDimensions=function(t,e){var r=t._private,n=this.getLabelText(t,e),i=B0(n,t._private.labelDimsKey);if(ho(r.rscratch,"prefixedLabelDimsKey",e)!==i){_h(r.rscratch,"prefixedLabelDimsKey",e,i);var a=this.calculateLabelDimensions(t,n),s=t.pstyle("line-height").pfValue,l=t.pstyle("text-wrap").strValue,u=ho(r.rscratch,"labelWrapCachedLines",e)||[],h=l!=="wrap"?1:Math.max(u.length,1),f=a.height/h,d=f*s,p=a.width,m=a.height+(h-1)*(s-1)*f;_h(r.rstyle,"labelWidth",e,p),_h(r.rscratch,"labelWidth",e,p),_h(r.rstyle,"labelHeight",e,m),_h(r.rscratch,"labelHeight",e,m),_h(r.rscratch,"labelLineHeight",e,d)}};Tu.getLabelText=function(t,e){var r=t._private,n=e?e+"-":"",i=t.pstyle(n+"label").strValue,a=t.pstyle("text-transform").value,s=o(function(K,ee){return ee?(_h(r.rscratch,K,e,ee),ee):ho(r.rscratch,K,e)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=t.pstyle("text-wrap").value;if(l==="wrap"){var u=s("labelKey");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var h="\u200B",f=i.split(` +`),d=t.pstyle("text-max-width").pfValue,p=t.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,v=0;vd){var w=x.matchAll(y),k="",C=0,D=po(w),R;try{for(D.s();!(R=D.n()).done;){var O=R.value,L=O[0],S=x.substring(C,O.index);C=O.index+L.length;var A=k.length===0?S:k+S+L,_=this.calculateLabelDimensions(t,A),N=_.width;N<=d?k+=S+L:(k&&g.push(k),k=S+L)}}catch(V){D.e(V)}finally{D.f()}k.match(/^[\s\u200b]+$/)||g.push(k)}else g.push(x)}s("labelWrapCachedLines",g),i=s("labelWrapCachedText",g.join(` +`)),s("labelWrapKey",u)}else if(l==="ellipsis"){var M=t.pstyle("text-max-width").pfValue,P="",B="\u2026",F=!1;if(this.calculateLabelDimensions(t,i).widthM)break;P+=i[G],G===i.length-1&&(F=!0)}return F||(P+=B),P}return i};Tu.getLabelJustification=function(t){var e=t.pstyle("text-justification").strValue,r=t.pstyle("text-halign").strValue;if(e==="auto")if(t.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return e};Tu.calculateLabelDimensions=function(t,e){var r=this,n=r.cy.window(),i=n.document,a=0,s=t.pstyle("font-style").strValue,l=t.pstyle("font-size").pfValue,u=t.pstyle("font-family").strValue,h=t.pstyle("font-weight").strValue,f=this.labelCalcCanvas,d=this.labelCalcCanvasContext;if(!f){f=this.labelCalcCanvas=i.createElement("canvas"),d=this.labelCalcCanvasContext=f.getContext("2d");var p=f.style;p.position="absolute",p.left="-9999px",p.top="-9999px",p.zIndex="-1",p.visibility="hidden",p.pointerEvents="none"}d.font="".concat(s," ").concat(h," ").concat(l,"px ").concat(u);for(var m=0,g=0,y=e.split(` +`),v=0;v1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(s),l)for(var u=0;u=t.desktopTapThreshold2}var wt=a(z);ut&&(t.hoverData.tapholdCancelled=!0);var St=o(function(){var _e=t.hoverData.dragDelta=t.hoverData.dragDelta||[];_e.length===0?(_e.push(rt[0]),_e.push(rt[1])):(_e[0]+=rt[0],_e[1]+=rt[1])},"updateDragDelta");oe=!0,i(xt,["mousemove","vmousemove","tapdrag"],z,{x:De[0],y:De[1]});var bt=o(function(_e){return{originalEvent:z,type:_e,position:{x:De[0],y:De[1]}}},"makeEvent"),pt=o(function(){t.data.bgActivePosistion=void 0,t.hoverData.selecting||be.emit(bt("boxstart")),Ye[4]=1,t.hoverData.selecting=!0,t.redrawHint("select",!0),t.redraw()},"goIntoBoxMode");if(t.hoverData.which===3){if(ut){var Zr=bt("cxtdrag");Pe?Pe.emit(Zr):be.emit(Zr),t.hoverData.cxtDragged=!0,(!t.hoverData.cxtOver||xt!==t.hoverData.cxtOver)&&(t.hoverData.cxtOver&&t.hoverData.cxtOver.emit(bt("cxtdragout")),t.hoverData.cxtOver=xt,xt&&xt.emit(bt("cxtdragover")))}}else if(t.hoverData.dragging){if(oe=!0,be.panningEnabled()&&be.userPanningEnabled()){var Lt;if(t.hoverData.justStartedPan){var Dn=t.hoverData.mdownPos;Lt={x:(De[0]-Dn[0])*pe,y:(De[1]-Dn[1])*pe},t.hoverData.justStartedPan=!1}else Lt={x:rt[0]*pe,y:rt[1]*pe};be.panBy(Lt),be.emit(bt("dragpan")),t.hoverData.dragged=!0}De=t.projectIntoViewport(z.clientX,z.clientY)}else if(Ye[4]==1&&(Pe==null||Pe.pannable())){if(ut){if(!t.hoverData.dragging&&be.boxSelectionEnabled()&&(wt||!be.panningEnabled()||!be.userPanningEnabled()))pt();else if(!t.hoverData.selecting&&be.panningEnabled()&&be.userPanningEnabled()){var Hr=s(Pe,t.hoverData.downs);Hr&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,Ye[4]=0,t.data.bgActivePosistion=F1(Ce),t.redrawHint("select",!0),t.redraw())}Pe&&Pe.pannable()&&Pe.active()&&Pe.unactivate()}}else{if(Pe&&Pe.pannable()&&Pe.active()&&Pe.unactivate(),(!Pe||!Pe.grabbed())&&xt!=je&&(je&&i(je,["mouseout","tapdragout"],z,{x:De[0],y:De[1]}),xt&&i(xt,["mouseover","tapdragover"],z,{x:De[0],y:De[1]}),t.hoverData.last=xt),Pe)if(ut){if(be.boxSelectionEnabled()&&wt)Pe&&Pe.grabbed()&&(x(We),Pe.emit(bt("freeon")),We.emit(bt("free")),t.dragData.didDrag&&(Pe.emit(bt("dragfreeon")),We.emit(bt("dragfree")))),pt();else if(Pe&&Pe.grabbed()&&t.nodeIsDraggable(Pe)){var mr=!t.dragData.didDrag;mr&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||y(We,{inDragLayer:!0});var hr={x:0,y:0};if(Rt(rt[0])&&Rt(rt[1])&&(hr.x+=rt[0],hr.y+=rt[1],mr)){var Br=t.hoverData.dragDelta;Br&&Rt(Br[0])&&Rt(Br[1])&&(hr.x+=Br[0],hr.y+=Br[1])}t.hoverData.draggingEles=!0,We.silentShift(hr).emit(bt("position")).emit(bt("drag")),t.redrawHint("drag",!0),t.redraw()}}else St();oe=!0}if(Ye[2]=De[0],Ye[3]=De[1],oe)return z.stopPropagation&&z.stopPropagation(),z.preventDefault&&z.preventDefault(),!1}},"mousemoveHandler"),!1);var S,A,_;t.registerBinding(e,"mouseup",o(function(z){if(!(t.hoverData.which===1&&z.which!==1&&t.hoverData.capture)){var se=t.hoverData.capture;if(se){t.hoverData.capture=!1;var oe=t.cy,be=t.projectIntoViewport(z.clientX,z.clientY),pe=t.selection,me=t.findNearestElement(be[0],be[1],!0,!1),De=t.dragData.possibleDragElements,Ce=t.hoverData.down,Fe=a(z);t.data.bgActivePosistion&&(t.redrawHint("select",!0),t.redraw()),t.hoverData.tapholdCancelled=!0,t.data.bgActivePosistion=void 0,Ce&&Ce.unactivate();var Ye=o(function(Ut){return{originalEvent:z,type:Ut,position:{x:be[0],y:be[1]}}},"makeEvent");if(t.hoverData.which===3){var xt=Ye("cxttapend");if(Ce?Ce.emit(xt):oe.emit(xt),!t.hoverData.cxtDragged){var je=Ye("cxttap");Ce?Ce.emit(je):oe.emit(je)}t.hoverData.cxtDragged=!1,t.hoverData.which=null}else if(t.hoverData.which===1){if(i(me,["mouseup","tapend","vmouseup"],z,{x:be[0],y:be[1]}),!t.dragData.didDrag&&!t.hoverData.dragged&&!t.hoverData.selecting&&!t.hoverData.isOverThresholdDrag&&(i(Ce,["click","tap","vclick"],z,{x:be[0],y:be[1]}),A=!1,z.timeStamp-_<=oe.multiClickDebounceTime()?(S&&clearTimeout(S),A=!0,_=null,i(Ce,["dblclick","dbltap","vdblclick"],z,{x:be[0],y:be[1]})):(S=setTimeout(function(){A||i(Ce,["oneclick","onetap","voneclick"],z,{x:be[0],y:be[1]})},oe.multiClickDebounceTime()),_=z.timeStamp)),Ce==null&&!t.dragData.didDrag&&!t.hoverData.selecting&&!t.hoverData.dragged&&!a(z)&&(oe.$(r).unselect(["tapunselect"]),De.length>0&&t.redrawHint("eles",!0),t.dragData.possibleDragElements=De=oe.collection()),me==Ce&&!t.dragData.didDrag&&!t.hoverData.selecting&&me!=null&&me._private.selectable&&(t.hoverData.dragging||(oe.selectionType()==="additive"||Fe?me.selected()?me.unselect(["tapunselect"]):me.select(["tapselect"]):Fe||(oe.$(r).unmerge(me).unselect(["tapunselect"]),me.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var Pe=oe.collection(t.getAllInBox(pe[0],pe[1],pe[2],pe[3]));t.redrawHint("select",!0),Pe.length>0&&t.redrawHint("eles",!0),oe.emit(Ye("boxend"));var rt=o(function(Ut){return Ut.selectable()&&!Ut.selected()},"eleWouldBeSelected");oe.selectionType()==="additive"||Fe||oe.$(r).unmerge(Pe).unselect(),Pe.emit(Ye("box")).stdFilter(rt).select().emit(Ye("boxselect")),t.redraw()}if(t.hoverData.dragging&&(t.hoverData.dragging=!1,t.redrawHint("select",!0),t.redrawHint("eles",!0),t.redraw()),!pe[4]){t.redrawHint("drag",!0),t.redrawHint("eles",!0);var We=Ce&&Ce.grabbed();x(De),We&&(Ce.emit(Ye("freeon")),De.emit(Ye("free")),t.dragData.didDrag&&(Ce.emit(Ye("dragfreeon")),De.emit(Ye("dragfree"))))}}pe[4]=0,t.hoverData.down=null,t.hoverData.cxtStarted=!1,t.hoverData.draggingEles=!1,t.hoverData.selecting=!1,t.hoverData.isOverThresholdDrag=!1,t.dragData.didDrag=!1,t.hoverData.dragged=!1,t.hoverData.dragDelta=[],t.hoverData.mdownPos=null,t.hoverData.mdownGPos=null,t.hoverData.which=null}}},"mouseupHandler"),!1);var N=[],M=4,P,B=1e5,F=o(function(z,se){for(var oe=0;oe=M){var be=N;if(P=F(be,5),!P){var pe=Math.abs(be[0]);P=G(be)&&pe>5}if(P)for(var me=0;me5&&(oe=HP(oe)*5),je=oe/-250,P&&(je/=B,je*=3),je=je*t.wheelSensitivity;var Pe=z.deltaMode===1;Pe&&(je*=33);var rt=De.zoom()*Math.pow(10,je);z.type==="gesturechange"&&(rt=t.gestureStartZoom*z.scale),De.zoom({level:rt,renderedPosition:{x:xt[0],y:xt[1]}}),De.emit({type:z.type==="gesturechange"?"pinchzoom":"scrollzoom",originalEvent:z,position:{x:Ye[0],y:Ye[1]}})}}}},"wheelHandler");t.registerBinding(t.container,"wheel",$,!0),t.registerBinding(e,"scroll",o(function(z){t.scrollingPage=!0,clearTimeout(t.scrollingPageTimeout),t.scrollingPageTimeout=setTimeout(function(){t.scrollingPage=!1},250)},"scrollHandler"),!0),t.registerBinding(t.container,"gesturestart",o(function(z){t.gestureStartZoom=t.cy.zoom(),t.hasTouchStarted||z.preventDefault()},"gestureStartHandler"),!0),t.registerBinding(t.container,"gesturechange",function(ue){t.hasTouchStarted||$(ue)},!0),t.registerBinding(t.container,"mouseout",o(function(z){var se=t.projectIntoViewport(z.clientX,z.clientY);t.cy.emit({originalEvent:z,type:"mouseout",position:{x:se[0],y:se[1]}})},"mouseOutHandler"),!1),t.registerBinding(t.container,"mouseover",o(function(z){var se=t.projectIntoViewport(z.clientX,z.clientY);t.cy.emit({originalEvent:z,type:"mouseover",position:{x:se[0],y:se[1]}})},"mouseOverHandler"),!1);var V,K,ee,H,he,Z,de,re,ne,te,Q,le,J,ge=o(function(z,se,oe,be){return Math.sqrt((oe-z)*(oe-z)+(be-se)*(be-se))},"distance"),ie=o(function(z,se,oe,be){return(oe-z)*(oe-z)+(be-se)*(be-se)},"distanceSq"),Te;t.registerBinding(t.container,"touchstart",Te=o(function(z){if(t.hasTouchStarted=!0,!!O(z)){T(),t.touchData.capture=!0,t.data.bgActivePosistion=void 0;var se=t.cy,oe=t.touchData.now,be=t.touchData.earlier;if(z.touches[0]){var pe=t.projectIntoViewport(z.touches[0].clientX,z.touches[0].clientY);oe[0]=pe[0],oe[1]=pe[1]}if(z.touches[1]){var pe=t.projectIntoViewport(z.touches[1].clientX,z.touches[1].clientY);oe[2]=pe[0],oe[3]=pe[1]}if(z.touches[2]){var pe=t.projectIntoViewport(z.touches[2].clientX,z.touches[2].clientY);oe[4]=pe[0],oe[5]=pe[1]}var me=o(function(wt){return{originalEvent:z,type:wt,position:{x:oe[0],y:oe[1]}}},"makeEvent");if(z.touches[1]){t.touchData.singleTouchMoved=!0,x(t.dragData.touchDragEles);var De=t.findContainerClientCoords();ne=De[0],te=De[1],Q=De[2],le=De[3],V=z.touches[0].clientX-ne,K=z.touches[0].clientY-te,ee=z.touches[1].clientX-ne,H=z.touches[1].clientY-te,J=0<=V&&V<=Q&&0<=ee&&ee<=Q&&0<=K&&K<=le&&0<=H&&H<=le;var Ce=se.pan(),Fe=se.zoom();he=ge(V,K,ee,H),Z=ie(V,K,ee,H),de=[(V+ee)/2,(K+H)/2],re=[(de[0]-Ce.x)/Fe,(de[1]-Ce.y)/Fe];var Ye=200,xt=Ye*Ye;if(Z=1){for(var Tt=t.touchData.startPosition=[null,null,null,null,null,null],Mt=0;Mt=t.touchTapThreshold2}if(se&&t.touchData.cxt){z.preventDefault();var Mt=z.touches[0].clientX-ne,mt=z.touches[0].clientY-te,at=z.touches[1].clientX-ne,wt=z.touches[1].clientY-te,St=ie(Mt,mt,at,wt),bt=St/Z,pt=150,Zr=pt*pt,Lt=1.5,Dn=Lt*Lt;if(bt>=Dn||St>=Zr){t.touchData.cxt=!1,t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var Hr=Fe("cxttapend");t.touchData.start?(t.touchData.start.unactivate().emit(Hr),t.touchData.start=null):be.emit(Hr)}}if(se&&t.touchData.cxt){var Hr=Fe("cxtdrag");t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.touchData.start?t.touchData.start.emit(Hr):be.emit(Hr),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxtDragged=!0;var mr=t.findNearestElement(pe[0],pe[1],!0,!0);(!t.touchData.cxtOver||mr!==t.touchData.cxtOver)&&(t.touchData.cxtOver&&t.touchData.cxtOver.emit(Fe("cxtdragout")),t.touchData.cxtOver=mr,mr&&mr.emit(Fe("cxtdragover")))}else if(se&&z.touches[2]&&be.boxSelectionEnabled())z.preventDefault(),t.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,t.touchData.selecting||be.emit(Fe("boxstart")),t.touchData.selecting=!0,t.touchData.didSelect=!0,oe[4]=1,!oe||oe.length===0||oe[0]===void 0?(oe[0]=(pe[0]+pe[2]+pe[4])/3,oe[1]=(pe[1]+pe[3]+pe[5])/3,oe[2]=(pe[0]+pe[2]+pe[4])/3+1,oe[3]=(pe[1]+pe[3]+pe[5])/3+1):(oe[2]=(pe[0]+pe[2]+pe[4])/3,oe[3]=(pe[1]+pe[3]+pe[5])/3),t.redrawHint("select",!0),t.redraw();else if(se&&z.touches[1]&&!t.touchData.didSelect&&be.zoomingEnabled()&&be.panningEnabled()&&be.userZoomingEnabled()&&be.userPanningEnabled()){z.preventDefault(),t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var hr=t.dragData.touchDragEles;if(hr){t.redrawHint("drag",!0);for(var Br=0;Br0&&!t.hoverData.draggingEles&&!t.swipePanning&&t.data.bgActivePosistion!=null&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},"touchmoveHandler"),!1);var Ge;t.registerBinding(e,"touchcancel",Ge=o(function(z){var se=t.touchData.start;t.touchData.capture=!1,se&&se.unactivate()},"touchcancelHandler"));var ye,$e,Xe,Ue;if(t.registerBinding(e,"touchend",ye=o(function(z){var se=t.touchData.start,oe=t.touchData.capture;if(oe)z.touches.length===0&&(t.touchData.capture=!1),z.preventDefault();else return;var be=t.selection;t.swipePanning=!1,t.hoverData.draggingEles=!1;var pe=t.cy,me=pe.zoom(),De=t.touchData.now,Ce=t.touchData.earlier;if(z.touches[0]){var Fe=t.projectIntoViewport(z.touches[0].clientX,z.touches[0].clientY);De[0]=Fe[0],De[1]=Fe[1]}if(z.touches[1]){var Fe=t.projectIntoViewport(z.touches[1].clientX,z.touches[1].clientY);De[2]=Fe[0],De[3]=Fe[1]}if(z.touches[2]){var Fe=t.projectIntoViewport(z.touches[2].clientX,z.touches[2].clientY);De[4]=Fe[0],De[5]=Fe[1]}var Ye=o(function(Zr){return{originalEvent:z,type:Zr,position:{x:De[0],y:De[1]}}},"makeEvent");se&&se.unactivate();var xt;if(t.touchData.cxt){if(xt=Ye("cxttapend"),se?se.emit(xt):pe.emit(xt),!t.touchData.cxtDragged){var je=Ye("cxttap");se?se.emit(je):pe.emit(je)}t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!1,t.touchData.start=null,t.redraw();return}if(!z.touches[2]&&pe.boxSelectionEnabled()&&t.touchData.selecting){t.touchData.selecting=!1;var Pe=pe.collection(t.getAllInBox(be[0],be[1],be[2],be[3]));be[0]=void 0,be[1]=void 0,be[2]=void 0,be[3]=void 0,be[4]=0,t.redrawHint("select",!0),pe.emit(Ye("boxend"));var rt=o(function(Zr){return Zr.selectable()&&!Zr.selected()},"eleWouldBeSelected");Pe.emit(Ye("box")).stdFilter(rt).select().emit(Ye("boxselect")),Pe.nonempty()&&t.redrawHint("eles",!0),t.redraw()}if(se?.unactivate(),z.touches[2])t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);else if(!z.touches[1]){if(!z.touches[0]){if(!z.touches[0]){t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var We=t.dragData.touchDragEles;if(se!=null){var ut=se._private.grabbed;x(We),t.redrawHint("drag",!0),t.redrawHint("eles",!0),ut&&(se.emit(Ye("freeon")),We.emit(Ye("free")),t.dragData.didDrag&&(se.emit(Ye("dragfreeon")),We.emit(Ye("dragfree")))),i(se,["touchend","tapend","vmouseup","tapdragout"],z,{x:De[0],y:De[1]}),se.unactivate(),t.touchData.start=null}else{var Ut=t.findNearestElement(De[0],De[1],!0,!0);i(Ut,["touchend","tapend","vmouseup","tapdragout"],z,{x:De[0],y:De[1]})}var Tt=t.touchData.startPosition[0]-De[0],Mt=Tt*Tt,mt=t.touchData.startPosition[1]-De[1],at=mt*mt,wt=Mt+at,St=wt*me*me;t.touchData.singleTouchMoved||(se||pe.$(":selected").unselect(["tapunselect"]),i(se,["tap","vclick"],z,{x:De[0],y:De[1]}),$e=!1,z.timeStamp-Ue<=pe.multiClickDebounceTime()?(Xe&&clearTimeout(Xe),$e=!0,Ue=null,i(se,["dbltap","vdblclick"],z,{x:De[0],y:De[1]})):(Xe=setTimeout(function(){$e||i(se,["onetap","voneclick"],z,{x:De[0],y:De[1]})},pe.multiClickDebounceTime()),Ue=z.timeStamp)),se!=null&&!t.dragData.didDrag&&se._private.selectable&&St"u"){var Le=[],Ie=o(function(z){return{clientX:z.clientX,clientY:z.clientY,force:1,identifier:z.pointerId,pageX:z.pageX,pageY:z.pageY,radiusX:z.width/2,radiusY:z.height/2,screenX:z.screenX,screenY:z.screenY,target:z.target}},"makeTouch"),Me=o(function(z){return{event:z,touch:Ie(z)}},"makePointer"),Ae=o(function(z){Le.push(Me(z))},"addPointer"),ze=o(function(z){for(var se=0;se0)return V[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:m0e(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){u=u==="auto"?yd(i,a):u;var h=2*u;if(Lh(e,r,this.points,s,l,i,a-h,[0,-1],n)||Lh(e,r,this.points,s,l,i-h,a,[0,-1],n))return!0;var f=i/2+2*n,d=a/2+2*n,p=[s-f,l-d,s-f,l,s+f,l,s+f,l-d];return!!(fo(e,r,p)||P0(e,r,h,h,s+i/2-u,l+a/2-u,n)||P0(e,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};Nh.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",Rs(3,0)),this.generateRoundPolygon("round-triangle",Rs(3,0)),this.generatePolygon("rectangle",Rs(4,0)),t.square=t.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var r=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",r),this.generateRoundPolygon("round-diamond",r)}this.generatePolygon("pentagon",Rs(5,0)),this.generateRoundPolygon("round-pentagon",Rs(5,0)),this.generatePolygon("hexagon",Rs(6,0)),this.generateRoundPolygon("round-hexagon",Rs(6,0)),this.generatePolygon("heptagon",Rs(7,0)),this.generateRoundPolygon("round-heptagon",Rs(7,0)),this.generatePolygon("octagon",Rs(8,0)),this.generateRoundPolygon("round-octagon",Rs(8,0));var n=new Array(20);{var i=xP(5,0),a=xP(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l=e.deqFastCost*E)break}else if(h){if(b>=e.deqCost*m||b>=e.deqAvgCost*p)break}else if(T>=e.deqNoDrawCost*uP)break;var w=e.deq(n,v,y);if(w.length>0)for(var k=0;k0&&(e.onDeqd(n,g),!h&&e.shouldRedraw(n,g,v,y)&&a())},"dequeue"),l=e.priority||qP;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},_Qe=(function(){function t(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:OE;Td(this,t),this.idsByKey=new Dh,this.keyForId=new Dh,this.cachesByLvl=new Dh,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=r}return o(t,"ElementTextureCacheLookup"),wd(t,[{key:"getIdsFor",value:o(function(r){r==null&&si("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new j1,n.set(r,i)),i},"getIdsFor")},{key:"addIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).add(n)},"addIdForKey")},{key:"deleteIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).delete(n)},"deleteIdForKey")},{key:"getNumberOfIdsForKey",value:o(function(r){return r==null?0:this.getIdsFor(r).size},"getNumberOfIdsForKey")},{key:"updateKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);this.deleteIdForKey(i,n),this.addIdForKey(a,n),this.keyForId.set(n,a)},"updateKeyMappingFor")},{key:"deleteKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteIdForKey(i,n),this.keyForId.delete(n)},"deleteKeyMappingFor")},{key:"keyHasChangedFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);return i!==a},"keyHasChangedFor")},{key:"isInvalid",value:o(function(r){return this.keyHasChangedFor(r)||this.doesEleInvalidateKey(r)},"isInvalid")},{key:"getCachesAt",value:o(function(r){var n=this.cachesByLvl,i=this.lvls,a=n.get(r);return a||(a=new Dh,n.set(r,a),i.push(r)),a},"getCachesAt")},{key:"getCache",value:o(function(r,n){return this.getCachesAt(n).get(r)},"getCache")},{key:"get",value:o(function(r,n){var i=this.getKey(r),a=this.getCache(i,n);return a!=null&&this.updateKeyMappingFor(r),a},"get")},{key:"getForCachedKey",value:o(function(r,n){var i=this.keyForId.get(r.id()),a=this.getCache(i,n);return a},"getForCachedKey")},{key:"hasCache",value:o(function(r,n){return this.getCachesAt(n).has(r)},"hasCache")},{key:"has",value:o(function(r,n){var i=this.getKey(r);return this.hasCache(i,n)},"has")},{key:"setCache",value:o(function(r,n,i){i.key=r,this.getCachesAt(n).set(r,i)},"setCache")},{key:"set",value:o(function(r,n,i){var a=this.getKey(r);this.setCache(a,n,i),this.updateKeyMappingFor(r)},"set")},{key:"deleteCache",value:o(function(r,n){this.getCachesAt(n).delete(r)},"deleteCache")},{key:"delete",value:o(function(r,n){var i=this.getKey(r);this.deleteCache(i,n)},"_delete")},{key:"invalidateKey",value:o(function(r){var n=this;this.lvls.forEach(function(i){return n.deleteCache(r,i)})},"invalidateKey")},{key:"invalidate",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteKeyMappingFor(r);var a=this.doesEleInvalidateKey(r);return a&&this.invalidateKey(i),a||this.getNumberOfIdsForKey(i)===0},"invalidate")}])})(),Lpe=25,xE=50,RE=-4,MP=3,xme=7.99,DQe=8,RQe=1024,LQe=1024,NQe=1024,MQe=.2,IQe=.8,OQe=10,PQe=.15,BQe=.1,FQe=.9,$Qe=.9,zQe=100,GQe=1,z1={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},VQe=za({getKey:null,doesEleInvalidateKey:OE,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:l0e,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Sb=o(function(e,r){var n=this;n.renderer=e,n.onDequeues=[];var i=VQe(r);cr(n,i),n.lookup=new _Qe(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),ta=Sb.prototype;ta.reasons=z1;ta.getTextureQueue=function(t){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[t]=e.eleImgCaches[t]||[]};ta.getRetiredTextureQueue=function(t){var e=this,r=e.eleImgCaches.retired=e.eleImgCaches.retired||{},n=r[t]=r[t]||[];return n};ta.getElementQueue=function(){var t=this,e=t.eleCacheQueue=t.eleCacheQueue||new Ub(function(r,n){return n.reqs-r.reqs});return e};ta.getElementKeyToQueue=function(){var t=this,e=t.eleKeyToCacheQueue=t.eleKeyToCacheQueue||{};return e};ta.getElement=function(t,e,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!t.visible()||t.removed()||!a.allowEdgeTxrCaching&&t.isEdge()||!a.allowParentTxrCaching&&t.isParent())return null;if(n==null&&(n=Math.ceil(WP(l*r))),n=xme||n>MP)return null;var h=Math.pow(2,n),f=e.h*h,d=e.w*h,p=s.eleTextBiggerThanMin(t,h);if(!this.isVisible(t,p))return null;var m=u.get(t,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=Lpe?g=Lpe:f<=xE?g=xE:g=Math.ceil(f/xE)*xE,f>NQe||d>LQe)return null;var y=a.getTextureQueue(g),v=y[y.length-2],x=o(function(){return a.recycleTexture(g,d)||a.addTexture(g,d)},"addNewTxr");v||(v=y[y.length-1]),v||(v=x()),v.width-v.usedWidthn;L--)R=a.getElement(t,e,r,L,z1.downscale);O()}else return a.queueElement(t,k.level-1),k;else{var S;if(!T&&!E&&!w)for(var A=n-1;A>=RE;A--){var _=u.get(t,A);if(_){S=_;break}}if(b(S))return a.queueElement(t,n),S;v.context.translate(v.usedWidth,0),v.context.scale(h,h),this.drawElement(v.context,t,e,p,!1),v.context.scale(1/h,1/h),v.context.translate(-v.usedWidth,0)}return m={x:v.usedWidth,texture:v,level:n,scale:h,width:d,height:f,scaledLabelShown:p},v.usedWidth+=Math.ceil(d+DQe),v.eleCaches.push(m),u.set(t,n,m),a.checkTextureFullness(v),m};ta.invalidateElements=function(t){for(var e=0;e=MQe*t.width&&this.retireTexture(t)};ta.checkTextureFullness=function(t){var e=this,r=e.getTextureQueue(t.height);t.usedWidth/t.width>IQe&&t.fullnessChecks>=OQe?gd(r,t):t.fullnessChecks++};ta.retireTexture=function(t){var e=this,r=t.height,n=e.getTextureQueue(r),i=this.lookup;gd(n,t),t.retired=!0;for(var a=t.eleCaches,s=0;s=e)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,UP(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),gd(i,s),n.push(s),s}};ta.queueElement=function(t,e){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(t),s=i[a];if(s)s.level=Math.max(s.level,e),s.eles.merge(t),s.reqs++,n.updateItem(s);else{var l={eles:t.spawn().merge(t),level:e,reqs:1,key:a};n.push(l),i[a]=l}};ta.dequeue=function(t){for(var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=[],a=e.lookup,s=0;s0;s++){var l=r.pop(),u=l.key,h=l.eles[0],f=a.hasCache(h,l.level);if(n[u]=null,f)continue;i.push(l);var d=e.getBoundingBox(h);e.getElement(h,d,t,l.level,z1.dequeue)}return i};ta.removeFromQueue=function(t){var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=this.getKey(t),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=VP,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(t))};ta.onDequeue=function(t){this.onDequeues.push(t)};ta.offDequeue=function(t){gd(this.onDequeues,t)};ta.setupDequeueing=vme.setupDequeueing({deqRedrawThreshold:zQe,deqCost:PQe,deqAvgCost:BQe,deqNoDrawCost:FQe,deqFastCost:$Qe,deq:o(function(e,r,n){return e.dequeue(r,n)},"deq"),onDeqd:o(function(e,r){for(var n=0;n=UQe||r>qE)return null}n.validateLayersElesOrdering(r,t);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,t),m,g=o(function(){var O=o(function(N){if(n.validateLayersElesOrdering(N,t),n.levelIsComplete(N,t))return m=u[N],!0},"canUseAsTmpLvl"),L=o(function(N){if(!m)for(var M=r+N;Cb<=M&&M<=qE&&!O(M);M+=N);},"checkLvls");L(1),L(-1);for(var S=f.length-1;S>=0;S--){var A=f[S];A.invalid&&gd(f,A)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=Ls();for(var O=0;OMpe||A>Mpe)return null;var _=S*A;if(_>ZQe)return null;var N=n.makeLayer(d,r);if(L!=null){var M=f.indexOf(L)+1;f.splice(M,0,N)}else(O.insert===void 0||O.insert)&&f.unshift(N);return N},"makeLayer");if(n.skipping&&!l)return null;for(var x=null,b=t.length/qQe,T=!l,E=0;E=b||!p0e(x.bb,w.boundingBox()))&&(x=v({insert:!0,after:x}),!x))return null;m||T?n.queueLayer(x,w):n.drawEleInLayer(x,w,r,e),x.eles.push(w),C[r]=x}return m||(T?null:f)};Ga.getEleLevelForLayerLevel=function(t,e){return t};Ga.drawEleInLayer=function(t,e,r,n){var i=this,a=this.renderer,s=t.context,l=e.boundingBox();l.w===0||l.h===0||!e.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,e,null,null,r,JQe),a.setImgSmoothing(s,!0))};Ga.levelIsComplete=function(t,e){var r=this,n=r.layersByLevel[t];if(!n||n.length===0)return!1;for(var i=0,a=0;a0||s.invalid)return!1;i+=s.eles.length}return i===e.length};Ga.validateLayersElesOrdering=function(t,e){var r=this.layersByLevel[t];if(r)for(var n=0;n0){e=!0;break}}return e};Ga.invalidateElements=function(t){var e=this;t.length!==0&&(e.lastInvalidationTime=Rh(),!(t.length===0||!e.haveLayers())&&e.updateElementsInLayers(t,o(function(n,i,a){e.invalidateLayer(n)},"invalAssocLayers")))};Ga.invalidateLayer=function(t){if(this.lastInvalidationTime=Rh(),!t.invalid){var e=t.level,r=t.eles,n=this.layersByLevel[e];gd(n,t),t.elesQueue=[],t.invalid=!0,t.replacement&&(t.replacement.invalid=!0);for(var i=0;i3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l=e._private.rscratch;if(!(a&&!e.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,t.translate(-u.x1,-u.y1));var h=a?e.pstyle("opacity").value:1,f=a?e.pstyle("line-opacity").value:1,d=e.pstyle("curve-style").value,p=e.pstyle("line-style").value,m=e.pstyle("width").pfValue,g=e.pstyle("line-cap").value,y=e.pstyle("line-outline-width").value,v=e.pstyle("line-outline-color").value,x=h*f,b=h*f,T=o(function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;d==="straight-triangle"?(s.eleStrokeStyle(t,e,N),s.drawEdgeTrianglePath(e,t,l.allpts)):(t.lineWidth=m,t.lineCap=g,s.eleStrokeStyle(t,e,N),s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLine"),E=o(function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;if(t.lineWidth=m+y,t.lineCap=g,y>0)s.colorStrokeStyle(t,v[0],v[1],v[2],N);else{t.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(e,t,l.allpts):(s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLineOutline"),w=o(function(){i&&s.drawEdgeOverlay(t,e)},"drawOverlay"),k=o(function(){i&&s.drawEdgeUnderlay(t,e)},"drawUnderlay"),C=o(function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(t,e,N)},"drawArrows"),D=o(function(){s.drawElementText(t,e,null,n)},"drawText");t.lineJoin="round";var R=e.pstyle("ghost").value==="yes";if(R){var O=e.pstyle("ghost-offset-x").pfValue,L=e.pstyle("ghost-offset-y").pfValue,S=e.pstyle("ghost-opacity").value,A=x*S;t.translate(O,L),T(A),C(A),t.translate(-O,-L)}else E();k(),T(),C(),w(),D(),r&&t.translate(u.x1,u.y1)}};wme=o(function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(e,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(e,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(e,"-color")).value;r.lineWidth=h,l.edgeType==="self"&&!s?r.lineCap="butt":r.lineCap="round",a.colorStrokeStyle(r,f[0],f[1],f[2],i),a.drawEdgePath(n,r,l.allpts,"solid")}}}},"drawEdgeOverlayUnderlay");Mh.drawEdgeOverlay=wme("overlay");Mh.drawEdgeUnderlay=wme("underlay");Mh.drawEdgePath=function(t,e,r,n){var i=t._private.rscratch,a=e,s,l=!1,u=this.usePaths(),h=t.pstyle("line-dash-pattern").pfValue,f=t.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=e=i.pathCache,l=!0):(s=e=new Path2D,i.pathCacheKey=d,i.pathCache=s)}if(a.setLineDash)switch(n){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(h),a.lineDashOffset=f;break;case"solid":a.setLineDash([]);break}if(!l&&!i.badLine)switch(e.beginPath&&e.beginPath(),e.moveTo(r[0],r[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var m=2;m+35&&arguments[5]!==void 0?arguments[5]:!0,s=this;if(n==null){if(a&&!s.eleTextBiggerThanMin(e))return}else if(n===!1)return;if(e.isNode()){var l=e.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(e);t.textAlign=u,t.textBaseline="bottom"}else{var h=e.element()._private.rscratch.badLine,f=e.pstyle("label"),d=e.pstyle("source-label"),p=e.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;t.textAlign="center",t.textBaseline="bottom"}var m=!r,g;r&&(g=r,t.translate(-g.x1,-g.y1)),i==null?(s.drawText(t,e,null,m,a),e.isEdge()&&(s.drawText(t,e,"source",m,a),s.drawText(t,e,"target",m,a))):s.drawText(t,e,i,m,a),r&&t.translate(g.x1,g.y1)};q0.getFontCache=function(t){var e;this.fontCaches=this.fontCaches||[];for(var r=0;r2&&arguments[2]!==void 0?arguments[2]:!0,n=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",a=e.pstyle("font-family").strValue,s=e.pstyle("font-weight").strValue,l=r?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,u=e.pstyle("text-outline-opacity").value*l,h=e.pstyle("color").value,f=e.pstyle("text-outline-color").value;t.font=n+" "+s+" "+i+" "+a,t.lineJoin="round",this.colorFillStyle(t,h[0],h[1],h[2],l),this.colorStrokeStyle(t,f[0],f[1],f[2],u)};o(uZe,"circle");o(Bpe,"roundRect");q0.getTextAngle=function(t,e){var r,n=t._private,i=n.rscratch,a=e?e+"-":"",s=t.pstyle(a+"text-rotation");if(s.strValue==="autorotate"){var l=ho(i,"labelAngle",e);r=t.isEdge()?l:0}else s.strValue==="none"?r=0:r=s.pfValue;return r};q0.drawText=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=e._private,s=a.rscratch,l=i?e.effectiveOpacity():1;if(!(i&&(l===0||e.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=ho(s,"labelX",r),h=ho(s,"labelY",r),f,d,p=this.getLabelText(e,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(t,e,i);var m=r?r+"-":"",g=ho(s,"labelWidth",r),y=ho(s,"labelHeight",r),v=e.pstyle(m+"text-margin-x").pfValue,x=e.pstyle(m+"text-margin-y").pfValue,b=e.isEdge(),T=e.pstyle("text-halign").value,E=e.pstyle("text-valign").value;b&&(T="center",E="center"),u+=v,h+=x;var w;switch(n?w=this.getTextAngle(e,r):w=0,w!==0&&(f=u,d=h,t.translate(f,d),t.rotate(w),u=0,h=0),E){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var k=e.pstyle("text-background-opacity").value,C=e.pstyle("text-border-opacity").value,D=e.pstyle("text-border-width").pfValue,R=e.pstyle("text-background-padding").pfValue,O=e.pstyle("text-background-shape").strValue,L=O==="round-rectangle"||O==="roundrectangle",S=O==="circle",A=2;if(k>0||D>0&&C>0){var _=t.fillStyle,N=t.strokeStyle,M=t.lineWidth,P=e.pstyle("text-background-color").value,B=e.pstyle("text-border-color").value,F=e.pstyle("text-border-style").value,G=k>0,$=D>0&&C>0,V=u-R;switch(T){case"left":V-=g;break;case"center":V-=g/2;break}var K=h-y-R,ee=g+2*R,H=y+2*R;if(G&&(t.fillStyle="rgba(".concat(P[0],",").concat(P[1],",").concat(P[2],",").concat(k*l,")")),$&&(t.strokeStyle="rgba(".concat(B[0],",").concat(B[1],",").concat(B[2],",").concat(C*l,")"),t.lineWidth=D,t.setLineDash))switch(F){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=D/4,t.setLineDash([]);break;case"solid":default:t.setLineDash([]);break}if(L?(t.beginPath(),Bpe(t,V,K,ee,H,A)):S?(t.beginPath(),uZe(t,V,K,ee,H)):(t.beginPath(),t.rect(V,K,ee,H)),G&&t.fill(),$&&t.stroke(),$&&F==="double"){var he=D/2;t.beginPath(),L?Bpe(t,V+he,K+he,ee-2*he,H-2*he,A):t.rect(V+he,K+he,ee-2*he,H-2*he),t.stroke()}t.fillStyle=_,t.strokeStyle=N,t.lineWidth=M,t.setLineDash&&t.setLineDash([])}var Z=2*e.pstyle("text-outline-width").pfValue;if(Z>0&&(t.lineWidth=Z),e.pstyle("text-wrap").value==="wrap"){var de=ho(s,"labelWrapCachedLines",r),re=ho(s,"labelLineHeight",r),ne=g/2,te=this.getLabelJustification(e);switch(te==="auto"||(T==="left"?te==="left"?u+=-g:te==="center"&&(u+=-ne):T==="center"?te==="left"?u+=-ne:te==="right"&&(u+=ne):T==="right"&&(te==="center"?u+=ne:te==="right"&&(u+=g))),E){case"top":h-=(de.length-1)*re;break;case"center":case"bottom":h-=(de.length-1)*re;break}for(var Q=0;Q0&&t.strokeText(de[Q],u,h),t.fillText(de[Q],u,h),h+=re}else Z>0&&t.strokeText(p,u,h),t.fillText(p,u,h);w!==0&&(t.rotate(-w),t.translate(-f,-d))}}};Sd={};Sd.drawNode=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l,u,h=e._private,f=h.rscratch,d=e.position();if(!(!Rt(d.x)||!Rt(d.y))&&!(a&&!e.visible())){var p=a?e.effectiveOpacity():1,m=s.usePaths(),g,y=!1,v=e.padding();l=e.width()+2*v,u=e.height()+2*v;var x;r&&(x=r,t.translate(-x.x1,-x.y1));for(var b=e.pstyle("background-image"),T=b.value,E=new Array(T.length),w=new Array(T.length),k=0,C=0;C0&&arguments[0]!==void 0?arguments[0]:A;s.eleFillStyle(t,e,U)},"setupShapeColor"),re=o(function(){var U=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$;s.colorStrokeStyle(t,_[0],_[1],_[2],U)},"setupBorderColor"),ne=o(function(){var U=arguments.length>0&&arguments[0]!==void 0?arguments[0]:H;s.colorStrokeStyle(t,K[0],K[1],K[2],U)},"setupOutlineColor"),te=o(function(U,ue,z,se){var oe=s.nodePathCache=s.nodePathCache||[],be=o0e(z==="polygon"?z+","+se.join(","):z,""+ue,""+U,""+Z),pe=oe[be],me,De=!1;return pe!=null?(me=pe,De=!0,f.pathCache=me):(me=new Path2D,oe[be]=f.pathCache=me),{path:me,cacheHit:De}},"getPath"),Q=e.pstyle("shape").strValue,le=e.pstyle("shape-polygon-points").pfValue;if(m){t.translate(d.x,d.y);var J=te(l,u,Q,le);g=J.path,y=J.cacheHit}var ge=o(function(){if(!y){var U=d;m&&(U={x:0,y:0}),s.nodeShapes[s.getNodeShape(e)].draw(g||t,U.x,U.y,l,u,Z,f)}m?t.fill(g):t.fill()},"drawShape"),ie=o(function(){for(var U=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,ue=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,z=h.backgrounding,se=0,oe=0;oe0&&arguments[0]!==void 0?arguments[0]:!1,ue=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(e)&&(s.drawPie(t,e,ue),U&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Z,f)))},"drawPie"),j=o(function(){var U=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,ue=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasStripe(e)&&(t.save(),m?t.clip(f.pathCache):(s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Z,f),t.clip()),s.drawStripe(t,e,ue),t.restore(),U&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Z,f)))},"drawStripe"),Ge=o(function(){var U=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,ue=(L>0?L:-L)*U,z=L>0?0:255;L!==0&&(s.colorFillStyle(t,z,z,z,ue),m?t.fill(g):t.fill())},"darken"),ye=o(function(){if(S>0){if(t.lineWidth=S,t.lineCap=P,t.lineJoin=M,t.setLineDash)switch(N){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash(F),t.lineDashOffset=G;break;case"solid":case"double":t.setLineDash([]);break}if(B!=="center"){if(t.save(),t.lineWidth*=2,B==="inside")m?t.clip(g):t.clip();else{var U=new Path2D;U.rect(-l/2-S,-u/2-S,l+2*S,u+2*S),U.addPath(g),t.clip(U,"evenodd")}m?t.stroke(g):t.stroke(),t.restore()}else m?t.stroke(g):t.stroke();if(N==="double"){t.lineWidth=S/3;var ue=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",m?t.stroke(g):t.stroke(),t.globalCompositeOperation=ue}t.setLineDash&&t.setLineDash([])}},"drawBorder"),$e=o(function(){if(V>0){if(t.lineWidth=V,t.lineCap="butt",t.setLineDash)switch(ee){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([]);break}var U=d;m&&(U={x:0,y:0});var ue=s.getNodeShape(e),z=S;B==="inside"&&(z=0),B==="outside"&&(z*=2);var se=(l+z+(V+he))/l,oe=(u+z+(V+he))/u,be=l*se,pe=u*oe,me=s.nodeShapes[ue].points,De;if(m){var Ce=te(be,pe,ue,me);De=Ce.path}if(ue==="ellipse")s.drawEllipsePath(De||t,U.x,U.y,be,pe);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(ue)){var Fe=0,Ye=0,xt=0;ue==="round-diamond"?Fe=(z+he+V)*1.4:ue==="round-heptagon"?(Fe=(z+he+V)*1.075,xt=-(z/2+he+V)/35):ue==="round-hexagon"?Fe=(z+he+V)*1.12:ue==="round-pentagon"?(Fe=(z+he+V)*1.13,xt=-(z/2+he+V)/15):ue==="round-tag"?(Fe=(z+he+V)*1.12,Ye=(z/2+V+he)*.07):ue==="round-triangle"&&(Fe=(z+he+V)*(Math.PI/2),xt=-(z+he/2+V)/Math.PI),Fe!==0&&(se=(l+Fe)/l,be=l*se,["round-hexagon","round-tag"].includes(ue)||(oe=(u+Fe)/u,pe=u*oe)),Z=Z==="auto"?y0e(be,pe):Z;for(var je=be/2,Pe=pe/2,rt=Z+(z+V+he)/2,We=new Array(me.length/2),ut=new Array(me.length/2),Ut=0;Ut0){if(i=i||n.position(),a==null||s==null){var m=n.padding();a=n.width()+2*m,s=n.height()+2*m}l.colorFillStyle(r,f[0],f[1],f[2],h),l.nodeShapes[d].draw(r,i.x,i.y,a+u*2,s+u*2,p),r.fill()}}}},"drawNodeOverlayUnderlay");Sd.drawNodeOverlay=kme("overlay");Sd.drawNodeUnderlay=kme("underlay");Sd.hasPie=function(t){return t=t[0],t._private.hasPie};Sd.hasStripe=function(t){return t=t[0],t._private.hasStripe};Sd.drawPie=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=e.pstyle("pie-size"),s=e.pstyle("pie-hole"),l=e.pstyle("pie-start-angle").pfValue,u=n.x,h=n.y,f=e.width(),d=e.height(),p=Math.min(f,d)/2,m,g=0,y=this.usePaths();if(y&&(u=0,h=0),a.units==="%"?p=p*a.pfValue:a.pfValue!==void 0&&(p=a.pfValue/2),s.units==="%"?m=p*s.pfValue:s.pfValue!==void 0&&(m=s.pfValue/2),!(m>=p))for(var v=1;v<=i.pieBackgroundN;v++){var x=e.pstyle("pie-"+v+"-background-size").value,b=e.pstyle("pie-"+v+"-background-color").value,T=e.pstyle("pie-"+v+"-background-opacity").value*r,E=x/100;E+g>1&&(E=1-g);var w=1.5*Math.PI+2*Math.PI*g;w+=l;var k=2*Math.PI*E,C=w+k;x===0||g>=1||g+E>1||(m===0?(t.beginPath(),t.moveTo(u,h),t.arc(u,h,p,w,C),t.closePath()):(t.beginPath(),t.arc(u,h,p,w,C),t.arc(u,h,m,C,w,!0),t.closePath()),this.colorFillStyle(t,b[0],b[1],b[2],T),t.fill(),g+=E)}};Sd.drawStripe=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=n.x,s=n.y,l=e.width(),u=e.height(),h=0,f=this.usePaths();t.save();var d=e.pstyle("stripe-direction").value,p=e.pstyle("stripe-size");switch(d){case"vertical":break;case"righward":t.rotate(-Math.PI/2);break}var m=l,g=u;p.units==="%"?(m=m*p.pfValue,g=g*p.pfValue):p.pfValue!==void 0&&(m=p.pfValue,g=p.pfValue),f&&(a=0,s=0),s-=m/2,a-=g/2;for(var y=1;y<=i.stripeBackgroundN;y++){var v=e.pstyle("stripe-"+y+"-background-size").value,x=e.pstyle("stripe-"+y+"-background-color").value,b=e.pstyle("stripe-"+y+"-background-opacity").value*r,T=v/100;T+h>1&&(T=1-h),!(v===0||h>=1||h+T>1)&&(t.beginPath(),t.rect(a,s+g*h,m,g*T),t.closePath(),this.colorFillStyle(t,x[0],x[1],x[2],b),t.fill(),h+=T)}t.restore()};Ns={},hZe=100;Ns.getPixelRatio=function(){var t=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),r=t.backingStorePixelRatio||t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/r};Ns.paintCache=function(t){for(var e=this.paintCaches=this.paintCaches||[],r=!0,n,i=0;ie.minMbLowQualFrames&&(e.motionBlurPxRatio=e.mbPxRBlurry)),e.clearingMotionBlur&&(e.motionBlurPxRatio=1),e.textureDrawLastFrame&&!d&&(f[e.NODE]=!0,f[e.SELECT_BOX]=!0);var b=r.style(),T=r.zoom(),E=s!==void 0?s:T,w=r.pan(),k={x:w.x,y:w.y},C={zoom:T,pan:{x:w.x,y:w.y}},D=e.prevViewport,R=D===void 0||C.zoom!==D.zoom||C.pan.x!==D.pan.x||C.pan.y!==D.pan.y;!R&&!(y&&!g)&&(e.motionBlurPxRatio=1),l&&(k=l),E*=u,k.x*=u,k.y*=u;var O=e.getCachedZSortedEles();function L(re,ne,te,Q,le){var J=re.globalCompositeOperation;re.globalCompositeOperation="destination-out",e.colorFillStyle(re,255,255,255,e.motionBlurTransparency),re.fillRect(ne,te,Q,le),re.globalCompositeOperation=J}o(L,"mbclear");function S(re,ne){var te,Q,le,J;!e.clearingMotionBlur&&(re===h.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]||re===h.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG])?(te={x:w.x*m,y:w.y*m},Q=T*m,le=e.canvasWidth*m,J=e.canvasHeight*m):(te=k,Q=E,le=e.canvasWidth,J=e.canvasHeight),re.setTransform(1,0,0,1,0,0),ne==="motionBlur"?L(re,0,0,le,J):!n&&(ne===void 0||ne)&&re.clearRect(0,0,le,J),i||(re.translate(te.x,te.y),re.scale(Q,Q)),l&&re.translate(l.x,l.y),s&&re.scale(s,s)}if(o(S,"setContextTransform"),d||(e.textureDrawLastFrame=!1),d){if(e.textureDrawLastFrame=!0,!e.textureCache){e.textureCache={},e.textureCache.bb=r.mutableElements().boundingBox(),e.textureCache.texture=e.data.bufferCanvases[e.TEXTURE_BUFFER];var A=e.data.bufferContexts[e.TEXTURE_BUFFER];A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,e.canvasWidth*e.textureMult,e.canvasHeight*e.textureMult),e.render({forcedContext:A,drawOnlyNodeLayer:!0,forcedPxRatio:u*e.textureMult});var C=e.textureCache.viewport={zoom:r.zoom(),pan:r.pan(),width:e.canvasWidth,height:e.canvasHeight};C.mpan={x:(0-C.pan.x)/C.zoom,y:(0-C.pan.y)/C.zoom}}f[e.DRAG]=!1,f[e.NODE]=!1;var _=h.contexts[e.NODE],N=e.textureCache.texture,C=e.textureCache.viewport;_.setTransform(1,0,0,1,0,0),p?L(_,0,0,C.width,C.height):_.clearRect(0,0,C.width,C.height);var M=b.core("outside-texture-bg-color").value,P=b.core("outside-texture-bg-opacity").value;e.colorFillStyle(_,M[0],M[1],M[2],P),_.fillRect(0,0,C.width,C.height);var T=r.zoom();S(_,!1),_.clearRect(C.mpan.x,C.mpan.y,C.width/C.zoom/u,C.height/C.zoom/u),_.drawImage(N,C.mpan.x,C.mpan.y,C.width/C.zoom/u,C.height/C.zoom/u)}else e.textureOnViewport&&!n&&(e.textureCache=null);var B=r.extent(),F=e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming||e.hoverData.draggingEles||e.cy.animated(),G=e.hideEdgesOnViewport&&F,$=[];if($[e.NODE]=!f[e.NODE]&&p&&!e.clearedForMotionBlur[e.NODE]||e.clearingMotionBlur,$[e.NODE]&&(e.clearedForMotionBlur[e.NODE]=!0),$[e.DRAG]=!f[e.DRAG]&&p&&!e.clearedForMotionBlur[e.DRAG]||e.clearingMotionBlur,$[e.DRAG]&&(e.clearedForMotionBlur[e.DRAG]=!0),f[e.NODE]||i||a||$[e.NODE]){var V=p&&!$[e.NODE]&&m!==1,_=n||(V?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]:h.contexts[e.NODE]),K=p&&!V?"motionBlur":void 0;S(_,K),G?e.drawCachedNodes(_,O.nondrag,u,B):e.drawLayeredElements(_,O.nondrag,u,B),e.debug&&e.drawDebugPoints(_,O.nondrag),!i&&!p&&(f[e.NODE]=!1)}if(!a&&(f[e.DRAG]||i||$[e.DRAG])){var V=p&&!$[e.DRAG]&&m!==1,_=n||(V?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]:h.contexts[e.DRAG]);S(_,p&&!V?"motionBlur":void 0),G?e.drawCachedNodes(_,O.drag,u,B):e.drawCachedElements(_,O.drag,u,B),e.debug&&e.drawDebugPoints(_,O.drag),!i&&!p&&(f[e.DRAG]=!1)}if(this.drawSelectionRectangle(t,S),p&&m!==1){var ee=h.contexts[e.NODE],H=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE],he=h.contexts[e.DRAG],Z=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG],de=o(function(ne,te,Q){ne.setTransform(1,0,0,1,0,0),Q||!x?ne.clearRect(0,0,e.canvasWidth,e.canvasHeight):L(ne,0,0,e.canvasWidth,e.canvasHeight);var le=m;ne.drawImage(te,0,0,e.canvasWidth*le,e.canvasHeight*le,0,0,e.canvasWidth,e.canvasHeight)},"drawMotionBlur");(f[e.NODE]||$[e.NODE])&&(de(ee,H,$[e.NODE]),f[e.NODE]=!1),(f[e.DRAG]||$[e.DRAG])&&(de(he,Z,$[e.DRAG]),f[e.DRAG]=!1)}e.prevViewport=C,e.clearingMotionBlur&&(e.clearingMotionBlur=!1,e.motionBlurCleared=!0,e.motionBlur=!0),p&&(e.motionBlurTimeout=setTimeout(function(){e.motionBlurTimeout=null,e.clearedForMotionBlur[e.NODE]=!1,e.clearedForMotionBlur[e.DRAG]=!1,e.motionBlur=!1,e.clearingMotionBlur=!d,e.mbFrames=0,f[e.NODE]=!0,f[e.DRAG]=!0,e.redraw()},hZe)),n||r.emit("render")};Ns.drawSelectionRectangle=function(t,e){var r=this,n=r.cy,i=r.data,a=n.style(),s=t.drawOnlyNodeLayer,l=t.drawAllLayers,u=i.canvasNeedsRedraw,h=t.forcedContext;if(r.showFps||!s&&u[r.SELECT_BOX]&&!l){var f=h||i.contexts[r.SELECT_BOX];if(e(f),r.selection[4]==1&&(r.hoverData.selecting||r.touchData.selecting)){var d=r.cy.zoom(),p=a.core("selection-box-border-width").value/d;f.lineWidth=p,f.fillStyle="rgba("+a.core("selection-box-color").value[0]+","+a.core("selection-box-color").value[1]+","+a.core("selection-box-color").value[2]+","+a.core("selection-box-opacity").value+")",f.fillRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]),p>0&&(f.strokeStyle="rgba("+a.core("selection-box-border-color").value[0]+","+a.core("selection-box-border-color").value[1]+","+a.core("selection-box-border-color").value[2]+","+a.core("selection-box-opacity").value+")",f.strokeRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]))}if(i.bgActivePosistion&&!r.hoverData.selecting){var d=r.cy.zoom(),m=i.bgActivePosistion;f.fillStyle="rgba("+a.core("active-bg-color").value[0]+","+a.core("active-bg-color").value[1]+","+a.core("active-bg-color").value[2]+","+a.core("active-bg-opacity").value+")",f.beginPath(),f.arc(m.x,m.y,a.core("active-bg-size").pfValue/d,0,2*Math.PI),f.fill()}var g=r.lastRedrawTime;if(r.showFps&&g){g=Math.round(g);var y=Math.round(1e3/g),v="1 frame = "+g+" ms = "+y+" fps";if(f.setTransform(1,0,0,1,0,0),f.fillStyle="rgba(255, 0, 0, 0.75)",f.strokeStyle="rgba(255, 0, 0, 0.75)",f.font="30px Arial",!xb){var x=f.measureText(v);xb=x.actualBoundingBoxAscent}f.fillText(v,0,xb);var b=60;f.strokeRect(0,xb+10,250,20),f.fillRect(0,xb+10,250*Math.min(y/b,1),20)}l||(u[r.SELECT_BOX]=!1)}};o(Fpe,"compileShader");o(fZe,"createProgram");o(dZe,"createTextureCanvas");o(lB,"getEffectivePanZoom");o(pZe,"getEffectiveZoom");o(mZe,"modelToRenderedPosition");o(gZe,"isSimpleShape");o(yZe,"arrayEqual");o(R0,"toWebGLColor");o(O1,"indexToVec4");o(vZe,"vec4ToIndex");o(xZe,"createTexture");o(Sme,"getTypeInfo");o(Eme,"createTypedArray");o(bZe,"createTypedArrayView");o(TZe,"createBufferStaticDraw");o(yu,"createBufferDynamicDraw");o(wZe,"create3x3MatrixBufferDynamicDraw");o(kZe,"createPickingFrameBuffer");$pe=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});o(fP,"create");o(zpe,"identity");o(SZe,"multiply");o(LE,"translate");o(Gpe,"rotate");o(IP,"scale");o(EZe,"projection");CZe=(function(){function t(e,r,n,i){Td(this,t),this.debugID=Math.floor(Math.random()*1e4),this.r=e,this.texSize=r,this.texRows=n,this.texHeight=Math.floor(r/n),this.enableWrapping=!0,this.locked=!1,this.texture=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=i(e,r,r),this.scratch=i(e,r,this.texHeight,"scratch")}return o(t,"Atlas"),wd(t,[{key:"lock",value:o(function(){this.locked=!0},"lock")},{key:"getKeys",value:o(function(){return new Set(this.keyToLocation.keys())},"getKeys")},{key:"getScale",value:o(function(r){var n=r.w,i=r.h,a=this.texHeight,s=this.texSize,l=a/i,u=n*l,h=i*l;return u>s&&(l=s/n,u=n*l,h=i*l),{scale:l,texW:u,texH:h}},"getScale")},{key:"draw",value:o(function(r,n,i){var a=this;if(this.locked)throw new Error("can't draw, atlas is locked");var s=this.texSize,l=this.texRows,u=this.texHeight,h=this.getScale(n),f=h.scale,d=h.texW,p=h.texH,m=o(function(T,E){if(i&&E){var w=E.context,k=T.x,C=T.row,D=k,R=u*C;w.save(),w.translate(D,R),w.scale(f,f),i(w,n),w.restore()}},"drawAt"),g=[null,null],y=o(function(){m(a.freePointer,a.canvas),g[0]={x:a.freePointer.x,y:a.freePointer.row*u,w:d,h:p},g[1]={x:a.freePointer.x+d,y:a.freePointer.row*u,w:0,h:p},a.freePointer.x+=d,a.freePointer.x==s&&(a.freePointer.x=0,a.freePointer.row++)},"drawNormal"),v=o(function(){var T=a.scratch,E=a.canvas;T.clear(),m({x:0,row:0},T);var w=s-a.freePointer.x,k=d-w,C=u;{var D=a.freePointer.x,R=a.freePointer.row*u,O=w;E.context.drawImage(T,0,0,O,C,D,R,O,C),g[0]={x:D,y:R,w:O,h:p}}{var L=w,S=(a.freePointer.row+1)*u,A=k;E&&E.context.drawImage(T,L,0,A,C,0,S,A,C),g[1]={x:0,y:S,w:A,h:p}}a.freePointer.x=k,a.freePointer.row++},"drawWrapped"),x=o(function(){a.freePointer.x=0,a.freePointer.row++},"moveToStartOfNextRow");if(this.freePointer.x+d<=s)y();else{if(this.freePointer.row>=l-1)return!1;this.freePointer.x===s?(x(),y()):this.enableWrapping?v():(x(),y())}return this.keyToLocation.set(r,g),this.needsBuffer=!0,g},"draw")},{key:"getOffsets",value:o(function(r){return this.keyToLocation.get(r)},"getOffsets")},{key:"isEmpty",value:o(function(){return this.freePointer.x===0&&this.freePointer.row===0},"isEmpty")},{key:"canFit",value:o(function(r){if(this.locked)return!1;var n=this.texSize,i=this.texRows,a=this.getScale(r),s=a.texW;return this.freePointer.x+s>n?this.freePointer.row1&&arguments[1]!==void 0?arguments[1]:{},a=i.forceRedraw,s=a===void 0?!1:a,l=i.filterEle,u=l===void 0?function(){return!0}:l,h=i.filterType,f=h===void 0?function(){return!0}:h,d=!1,p=!1,m=po(r),g;try{for(m.s();!(g=m.n()).done;){var y=g.value;if(u(y)){var v=po(this.renderTypes.values()),x;try{var b=o(function(){var E=x.value,w=E.type;if(f(w)){var k=n.collections.get(E.collection),C=E.getKey(y),D=Array.isArray(C)?C:[C];if(s)D.forEach(function(S){return k.markKeyForGC(S)}),p=!0;else{var R=E.getID?E.getID(y):y.id(),O=n._key(w,R),L=n.typeAndIdToKey.get(O);L!==void 0&&!yZe(D,L)&&(d=!0,n.typeAndIdToKey.delete(O),L.forEach(function(S){return k.markKeyForGC(S)}))}}},"_loop2");for(v.s();!(x=v.n()).done;)b()}catch(T){v.e(T)}finally{v.f()}}}}catch(T){m.e(T)}finally{m.f()}return p&&(this.gc(),d=!1),d},"invalidate")},{key:"gc",value:o(function(){var r=po(this.collections.values()),n;try{for(r.s();!(n=r.n()).done;){var i=n.value;i.gc()}}catch(a){r.e(a)}finally{r.f()}},"gc")},{key:"getOrCreateAtlas",value:o(function(r,n,i,a){var s=this.renderTypes.get(n),l=this.collections.get(s.collection),u=!1,h=l.draw(a,i,function(p){s.drawClipped?(p.save(),p.beginPath(),p.rect(0,0,i.w,i.h),p.clip(),s.drawElement(p,r,i,!0,!0),p.restore()):s.drawElement(p,r,i,!0,!0),u=!0});if(u){var f=s.getID?s.getID(r):r.id(),d=this._key(n,f);this.typeAndIdToKey.has(d)?this.typeAndIdToKey.get(d).push(a):this.typeAndIdToKey.set(d,[a])}return h},"getOrCreateAtlas")},{key:"getAtlasInfo",value:o(function(r,n){var i=this,a=this.renderTypes.get(n),s=a.getKey(r),l=Array.isArray(s)?s:[s];return l.map(function(u){var h=a.getBoundingBox(r,u),f=i.getOrCreateAtlas(r,n,h,u),d=f.getOffsets(u),p=Vi(d,2),m=p[0],g=p[1];return{atlas:f,tex:m,tex1:m,tex2:g,bb:h}})},"getAtlasInfo")},{key:"getDebugInfo",value:o(function(){var r=[],n=po(this.collections),i;try{for(n.s();!(i=n.n()).done;){var a=Vi(i.value,2),s=a[0],l=a[1],u=l.getCounts(),h=u.keyCount,f=u.atlasCount;r.push({type:s,keyCount:h,atlasCount:f})}}catch(d){n.e(d)}finally{n.f()}return r},"getDebugInfo")}])})(),RZe=(function(){function t(e){Td(this,t),this.globalOptions=e,this.atlasSize=e.webglTexSize,this.maxAtlasesPerBatch=e.webglTexPerBatch,this.batchAtlases=[]}return o(t,"AtlasBatchManager"),wd(t,[{key:"getMaxAtlasesPerBatch",value:o(function(){return this.maxAtlasesPerBatch},"getMaxAtlasesPerBatch")},{key:"getAtlasSize",value:o(function(){return this.atlasSize},"getAtlasSize")},{key:"getIndexArray",value:o(function(){return Array.from({length:this.maxAtlasesPerBatch},function(r,n){return n})},"getIndexArray")},{key:"startBatch",value:o(function(){this.batchAtlases=[]},"startBatch")},{key:"getAtlasCount",value:o(function(){return this.batchAtlases.length},"getAtlasCount")},{key:"getAtlases",value:o(function(){return this.batchAtlases},"getAtlases")},{key:"canAddToCurrentBatch",value:o(function(r){return this.batchAtlases.length===this.maxAtlasesPerBatch?this.batchAtlases.includes(r):!0},"canAddToCurrentBatch")},{key:"getAtlasIndexForBatch",value:o(function(r){var n=this.batchAtlases.indexOf(r);if(n<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)throw new Error("cannot add more atlases to batch");this.batchAtlases.push(r),n=this.batchAtlases.length-1}return n},"getAtlasIndexForBatch")}])})(),LZe=` float circleSD(vec2 p, float r) { return distance(vec2(0), p) - r; // signed distance } -`,Aqe=` +`,NZe=` float rectangleSD(vec2 p, vec2 b) { vec2 d = abs(p)-b; return distance(vec2(0),max(d,0.0)) + min(max(d.x,d.y),0.0); } -`,_qe=` +`,MZe=` float roundRectangleSD(vec2 p, vec2 b, vec4 cr) { cr.xy = (p.x > 0.0) ? cr.xy : cr.zw; cr.x = (p.y > 0.0) ? cr.x : cr.y; vec2 q = abs(p) - b + cr.x; return min(max(q.x, q.y), 0.0) + distance(vec2(0), max(q, 0.0)) - cr.x; } -`,Dqe=` +`,IZe=` float ellipseSD(vec2 p, vec2 ab) { p = abs( p ); // symmetry @@ -559,7 +559,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho // return signed distance return (dot(p/ab,p/ab)>1.0) ? d : -d; } -`,ix={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},oE={IGNORE:1,USE_BB:2},FM=0,iue=1,aue=2,$M=3,Jm=4,Bk=5,Q2=6,Z2=7,Lqe=(function(){function t(e,r,n){Af(this,t),this.r=e,this.gl=r,this.maxInstances=n.webglBatchSize,this.atlasSize=n.webglTexSize,this.bgColor=n.bgColor,this.debug=n.webglDebug,this.batchDebugInfo=[],n.enableWrapping=!0,n.createTextureCanvas=lqe,this.atlasManager=new Eqe(e,n),this.batchManager=new Sqe(n),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(ix.SCREEN),this.pickingProgram=this._createShaderProgram(ix.PICKING),this.vao=this._createVAO()}return o(t,"ElementDrawingWebGL"),_f(t,[{key:"addAtlasCollection",value:o(function(r,n){this.atlasManager.addAtlasCollection(r,n)},"addAtlasCollection")},{key:"addTextureAtlasRenderType",value:o(function(r,n){this.atlasManager.addRenderType(r,n)},"addTextureAtlasRenderType")},{key:"addSimpleShapeRenderType",value:o(function(r,n){this.simpleShapeOptions.set(r,n)},"addSimpleShapeRenderType")},{key:"invalidate",value:o(function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.type,a=this.atlasManager;return i?a.invalidate(r,{filterType:o(function(l){return l===i},"filterType"),forceRedraw:!0}):a.invalidate(r)},"invalidate")},{key:"gc",value:o(function(){this.atlasManager.gc()},"gc")},{key:"_createShaderProgram",value:o(function(r){var n=this.gl,i=`#version 300 es +`,Ab={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},UE={IGNORE:1,USE_BB:2},dP=0,Vpe=1,qpe=2,pP=3,P1=4,bE=5,bb=6,Tb=7,OZe=(function(){function t(e,r,n){Td(this,t),this.r=e,this.gl=r,this.maxInstances=n.webglBatchSize,this.atlasSize=n.webglTexSize,this.bgColor=n.bgColor,this.debug=n.webglDebug,this.batchDebugInfo=[],n.enableWrapping=!0,n.createTextureCanvas=dZe,this.atlasManager=new DZe(e,n),this.batchManager=new RZe(n),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(Ab.SCREEN),this.pickingProgram=this._createShaderProgram(Ab.PICKING),this.vao=this._createVAO()}return o(t,"ElementDrawingWebGL"),wd(t,[{key:"addAtlasCollection",value:o(function(r,n){this.atlasManager.addAtlasCollection(r,n)},"addAtlasCollection")},{key:"addTextureAtlasRenderType",value:o(function(r,n){this.atlasManager.addRenderType(r,n)},"addTextureAtlasRenderType")},{key:"addSimpleShapeRenderType",value:o(function(r,n){this.simpleShapeOptions.set(r,n)},"addSimpleShapeRenderType")},{key:"invalidate",value:o(function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.type,a=this.atlasManager;return i?a.invalidate(r,{filterType:o(function(l){return l===i},"filterType"),forceRedraw:!0}):a.invalidate(r)},"invalidate")},{key:"gc",value:o(function(){this.atlasManager.gc()},"gc")},{key:"_createShaderProgram",value:o(function(r){var n=this.gl,i=`#version 300 es precision highp float; uniform mat3 uPanZoomMatrix; @@ -606,7 +606,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho int vid = gl_VertexID; vec2 position = aPosition; // TODO make this a vec3, simplifies some code below - if(aVertType == `.concat(FM,`) { + if(aVertType == `.concat(dP,`) { float texX = aTex.x; // texture coordinates float texY = aTex.y; float texW = aTex.z; @@ -624,8 +624,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0); } - else if(aVertType == `).concat(Jm," || aVertType == ").concat(Z2,` - || aVertType == `).concat(Bk," || aVertType == ").concat(Q2,`) { // simple shapes + else if(aVertType == `).concat(P1," || aVertType == ").concat(Tb,` + || aVertType == `).concat(bE," || aVertType == ").concat(bb,`) { // simple shapes // the bounding box is needed by the fragment shader vBotLeft = (aTransform * vec3(0, 0, 1)).xy; // flat @@ -640,7 +640,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0); } - else if(aVertType == `).concat(iue,`) { + else if(aVertType == `).concat(Vpe,`) { vec2 source = aPointAPointB.xy; vec2 target = aPointAPointB.zw; @@ -655,7 +655,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho gl_Position = vec4(uPanZoomMatrix * vec3(point, 1.0), 1.0); vColor = aColor; } - else if(aVertType == `).concat(aue,`) { + else if(aVertType == `).concat(qpe,`) { vec2 pointA = aPointAPointB.xy; vec2 pointB = aPointAPointB.zw; vec2 pointC = aPointCPointD.xy; @@ -704,7 +704,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho vColor = aColor; } - else if(aVertType == `).concat($M,` && vid < 3) { + else if(aVertType == `).concat(pP,` && vid < 3) { // massage the first triangle into an edge arrow if(vid == 0) position = vec2(-0.15, -0.3); @@ -749,10 +749,10 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho out vec4 outColor; - `).concat(Cqe,` - `).concat(Aqe,` - `).concat(_qe,` - `).concat(Dqe,` + `).concat(LZe,` + `).concat(NZe,` + `).concat(MZe,` + `).concat(IZe,` vec4 blend(vec4 top, vec4 bot) { // blend colors with premultiplied alpha return vec4( @@ -768,21 +768,21 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho } void main(void) { - if(vVertType == `).concat(FM,`) { + if(vVertType == `).concat(dP,`) { // look up the texel from the texture unit `).concat(a.map(function(h){return"if(vAtlasId == ".concat(h,") outColor = texture(uTexture").concat(h,", vTexCoord);")}).join(` else `),` } - else if(vVertType == `).concat($M,`) { + else if(vVertType == `).concat(pP,`) { // mimics how canvas renderer uses context.globalCompositeOperation = 'destination-out'; outColor = blend(vColor, uBGColor); outColor.a = 1.0; // make opaque, masks out line under arrow } - else if(vVertType == `).concat(Jm,` && vBorderWidth == vec2(0.0)) { // simple rectangle with no border + else if(vVertType == `).concat(P1,` && vBorderWidth == vec2(0.0)) { // simple rectangle with no border outColor = vColor; // unit square is already transformed to the rectangle, nothing else needs to be done } - else if(vVertType == `).concat(Jm," || vVertType == ").concat(Z2,` - || vVertType == `).concat(Bk," || vVertType == ").concat(Q2,`) { // use SDF + else if(vVertType == `).concat(P1," || vVertType == ").concat(Tb,` + || vVertType == `).concat(bE," || vVertType == ").concat(bb,`) { // use SDF float outerBorder = vBorderWidth[0]; float innerBorder = vBorderWidth[1]; @@ -793,11 +793,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho vec2 p = vPosition - vec2(vTopRight.x - b[0] - outerBorder, vTopRight.y - b[1] - outerBorder); // translate to center float d; // signed distance - if(vVertType == `).concat(Jm,`) { + if(vVertType == `).concat(P1,`) { d = rectangleSD(p, b); - } else if(vVertType == `).concat(Z2,` && w == h) { + } else if(vVertType == `).concat(Tb,` && w == h) { d = circleSD(p, b.x); // faster than ellipse - } else if(vVertType == `).concat(Z2,`) { + } else if(vVertType == `).concat(Tb,`) { d = ellipseSD(p, b); } else { d = roundRectangleSD(p, b, vCornerRadius.wzyx); @@ -837,13 +837,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho `).concat(r.picking?`if(outColor.a == 0.0) discard; else outColor = vIndex;`:"",` } - `),l=oqe(n,i,s);l.aPosition=n.getAttribLocation(l,"aPosition"),l.aIndex=n.getAttribLocation(l,"aIndex"),l.aVertType=n.getAttribLocation(l,"aVertType"),l.aTransform=n.getAttribLocation(l,"aTransform"),l.aAtlasId=n.getAttribLocation(l,"aAtlasId"),l.aTex=n.getAttribLocation(l,"aTex"),l.aPointAPointB=n.getAttribLocation(l,"aPointAPointB"),l.aPointCPointD=n.getAttribLocation(l,"aPointCPointD"),l.aLineWidth=n.getAttribLocation(l,"aLineWidth"),l.aColor=n.getAttribLocation(l,"aColor"),l.aCornerRadius=n.getAttribLocation(l,"aCornerRadius"),l.aBorderColor=n.getAttribLocation(l,"aBorderColor"),l.uPanZoomMatrix=n.getUniformLocation(l,"uPanZoomMatrix"),l.uAtlasSize=n.getUniformLocation(l,"uAtlasSize"),l.uBGColor=n.getUniformLocation(l,"uBGColor"),l.uZoom=n.getUniformLocation(l,"uZoom"),l.uTextures=[];for(var u=0;u1&&arguments[1]!==void 0?arguments[1]:ix.SCREEN;this.panZoomMatrix=r,this.renderTarget=n,this.batchDebugInfo=[],this.wrappedCount=0,this.simpleCount=0,this.startBatch()},"startFrame")},{key:"startBatch",value:o(function(){this.instanceCount=0,this.batchManager.startBatch()},"startBatch")},{key:"endFrame",value:o(function(){this.endBatch()},"endFrame")},{key:"_isVisible",value:o(function(r,n){return r.visible()?n&&n.isVisible?n.isVisible(r):!0:!1},"_isVisible")},{key:"drawTexture",value:o(function(r,n,i){var a=this.atlasManager,s=this.batchManager,l=a.getRenderTypeOpts(i);if(this._isVisible(r,l)&&!(r.isEdge()&&!this._isValidEdge(r))){if(this.renderTarget.picking&&l.getTexPickingMode){var u=l.getTexPickingMode(r);if(u===oE.IGNORE)return;if(u==oE.USE_BB){this.drawPickingRectangle(r,n,i);return}}var h=a.getAtlasInfo(r,i),f=qs(h),d;try{for(f.s();!(d=f.n()).done;){var p=d.value,m=p.atlas,g=p.tex1,y=p.tex2;s.canAddToCurrentBatch(m)||this.endBatch();for(var v=s.getAtlasIndexForBatch(m),x=0,b=[[g,!0],[y,!1]];x=this.maxInstances&&this.endBatch()}}}}catch(R){f.e(R)}finally{f.f()}}},"drawTexture")},{key:"setTransformMatrix",value:o(function(r,n,i,a){var s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,l=0;if(i.shapeProps&&i.shapeProps.padding&&(l=r.pstyle(i.shapeProps.padding).pfValue),a){var u=a.bb,h=a.tex1,f=a.tex2,d=h.w/(h.w+f.w);s||(d=1-d);var p=this._getAdjustedBB(u,l,s,d);this._applyTransformMatrix(n,p,i,r)}else{var m=i.getBoundingBox(r),g=this._getAdjustedBB(m,l,!0,1);this._applyTransformMatrix(n,g,i,r)}},"setTransformMatrix")},{key:"_applyTransformMatrix",value:o(function(r,n,i,a){var s,l;rue(r);var u=i.getRotation?i.getRotation(a):0;if(u!==0){var h=i.getRotationPoint(a),f=h.x,d=h.y;Xk(r,r,[f,d]),nue(r,r,u);var p=i.getRotationOffset(a);s=p.x+(n.xOffset||0),l=p.y+(n.yOffset||0)}else s=n.x1,l=n.y1;Xk(r,r,[s,l]),aI(r,r,[n.w,n.h])},"_applyTransformMatrix")},{key:"_getAdjustedBB",value:o(function(r,n,i,a){var s=r.x1,l=r.y1,u=r.w,h=r.h,f=r.yOffset;n&&(s-=n,l-=n,u+=2*n,h+=2*n);var d=0,p=u*a;return i&&a<1?u=p:!i&&a<1&&(d=u-p,s+=d,u=p),{x1:s,y1:l,w:u,h,xOffset:d,yOffset:f}},"_getAdjustedBB")},{key:"drawPickingRectangle",value:o(function(r,n,i){var a=this.atlasManager.getRenderTypeOpts(i),s=this.instanceCount;this.vertTypeBuffer.getView(s)[0]=Jm;var l=this.indexBuffer.getView(s);Zm(n,l);var u=this.colorBuffer.getView(s);dp([0,0,0],1,u);var h=this.transformBuffer.getMatrixView(s);this.setTransformMatrix(r,h,a),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()},"drawPickingRectangle")},{key:"drawNode",value:o(function(r,n,i){var a=this.simpleShapeOptions.get(i);if(this._isVisible(r,a)){var s=a.shapeProps,l=this._getVertTypeForShape(r,s.shape);if(l===void 0||a.isSimple&&!a.isSimple(r)){this.drawTexture(r,n,i);return}var u=this.instanceCount;if(this.vertTypeBuffer.getView(u)[0]=l,l===Bk||l===Q2){var h=a.getBoundingBox(r),f=this._getCornerRadius(r,s.radius,h),d=this.cornerRadiusBuffer.getView(u);d[0]=f,d[1]=f,d[2]=f,d[3]=f,l===Q2&&(d[0]=0,d[2]=0)}var p=this.indexBuffer.getView(u);Zm(n,p);var m=r.pstyle(s.color).value,g=r.pstyle(s.opacity).value,y=this.colorBuffer.getView(u);dp(m,g,y);var v=this.lineWidthBuffer.getView(u);if(v[0]=0,v[1]=0,s.border){var x=r.pstyle("border-width").value;if(x>0){var b=r.pstyle("border-color").value,T=r.pstyle("border-opacity").value,S=this.borderColorBuffer.getView(u);dp(b,T,S);var w=r.pstyle("border-position").value;if(w==="inside")v[0]=0,v[1]=-x;else if(w==="outside")v[0]=x,v[1]=0;else{var k=x/2;v[0]=k,v[1]=-k}}}var C=this.transformBuffer.getMatrixView(u);this.setTransformMatrix(r,C,a),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}},"drawNode")},{key:"_getVertTypeForShape",value:o(function(r,n){var i=r.pstyle(n).value;switch(i){case"rectangle":return Jm;case"ellipse":return Z2;case"roundrectangle":case"round-rectangle":return Bk;case"bottom-round-rectangle":return Q2;default:return}},"_getVertTypeForShape")},{key:"_getCornerRadius",value:o(function(r,n,i){var a=i.w,s=i.h;if(r.pstyle(n).value==="auto")return kf(a,s);var l=r.pstyle(n).pfValue,u=a/2,h=s/2;return Math.min(l,h,u)},"_getCornerRadius")},{key:"drawEdgeArrow",value:o(function(r,n,i){if(r.visible()){var a=r._private.rscratch,s,l,u;if(i==="source"?(s=a.arrowStartX,l=a.arrowStartY,u=a.srcArrowAngle):(s=a.arrowEndX,l=a.arrowEndY,u=a.tgtArrowAngle),!(isNaN(s)||s==null||isNaN(l)||l==null||isNaN(u)||u==null)){var h=r.pstyle(i+"-arrow-shape").value;if(h!=="none"){var f=r.pstyle(i+"-arrow-color").value,d=r.pstyle("opacity").value,p=r.pstyle("line-opacity").value,m=d*p,g=r.pstyle("width").pfValue,y=r.pstyle("arrow-scale").value,v=this.r.getArrowWidth(g,y),x=this.instanceCount,b=this.transformBuffer.getMatrixView(x);rue(b),Xk(b,b,[s,l]),aI(b,b,[v,v]),nue(b,b,u),this.vertTypeBuffer.getView(x)[0]=$M;var T=this.indexBuffer.getView(x);Zm(n,T);var S=this.colorBuffer.getView(x);dp(f,m,S),this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}}},"drawEdgeArrow")},{key:"drawEdgeLine",value:o(function(r,n){if(r.visible()){var i=this._getEdgePoints(r);if(i){var a=r.pstyle("opacity").value,s=r.pstyle("line-opacity").value,l=r.pstyle("width").pfValue,u=r.pstyle("line-color").value,h=a*s;if(i.length/2+this.instanceCount>this.maxInstances&&this.endBatch(),i.length==4){var f=this.instanceCount;this.vertTypeBuffer.getView(f)[0]=iue;var d=this.indexBuffer.getView(f);Zm(n,d);var p=this.colorBuffer.getView(f);dp(u,h,p);var m=this.lineWidthBuffer.getView(f);m[0]=l;var g=this.pointAPointBBuffer.getView(f);g[0]=i[0],g[1]=i[1],g[2]=i[2],g[3]=i[3],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}else for(var y=0;y=this.maxInstances&&this.endBatch()}}}},"drawEdgeLine")},{key:"_isValidEdge",value:o(function(r){var n=r._private.rscratch;return!(n.badLine||n.allpts==null||isNaN(n.allpts[0]))},"_isValidEdge")},{key:"_getEdgePoints",value:o(function(r){var n=r._private.rscratch;if(this._isValidEdge(r)){var i=n.allpts;if(i.length==4)return i;var a=this._getNumSegments(r);return this._getCurveSegmentPoints(i,a)}},"_getEdgePoints")},{key:"_getNumSegments",value:o(function(r){var n=15;return Math.min(Math.max(n,5),this.maxInstances)},"_getNumSegments")},{key:"_getCurveSegmentPoints",value:o(function(r,n){if(r.length==4)return r;for(var i=Array((n+1)*2),a=0;a<=n;a++)if(a==0)i[0]=r[0],i[1]=r[1];else if(a==n)i[a*2]=r[r.length-2],i[a*2+1]=r[r.length-1];else{var s=a/n;this._setCurvePoint(r,s,i,a*2)}return i},"_getCurveSegmentPoints")},{key:"_setCurvePoint",value:o(function(r,n,i,a){if(r.length<=2)i[a]=r[0],i[a+1]=r[1];else{for(var s=Array(r.length-2),l=0;l0}},"isLayerVisible"),l=o(function(d){var p=d.pstyle("text-events").strValue==="yes";return p?oE.USE_BB:oE.IGNORE},"getTexPickingMode"),u=o(function(d){var p=d.position(),m=p.x,g=p.y,y=d.outerWidth(),v=d.outerHeight();return{w:y,h:v,x1:m-y/2,y1:g-v/2}},"getBBForSimpleShape");r.drawing.addAtlasCollection("node",{texRows:t.webglTexRowsNodes}),r.drawing.addAtlasCollection("label",{texRows:t.webglTexRows}),r.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:e.getStyleKey,getBoundingBox:e.getElementBox,drawElement:e.drawElement}),r.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:u,isSimple:hqe,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),r.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:u,isVisible:s("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),r.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:u,isVisible:s("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),r.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:l,getKey:zM(e.getLabelKey,null),getBoundingBox:GM(e.getLabelBox,null),drawClipped:!0,drawElement:e.drawLabel,getRotation:i(null),getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:a("label")}),r.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:l,getKey:zM(e.getSourceLabelKey,"source"),getBoundingBox:GM(e.getSourceLabelBox,"source"),drawClipped:!0,drawElement:e.drawSourceLabel,getRotation:i("source"),getRotationPoint:e.getSourceLabelRotationPoint,getRotationOffset:e.getSourceLabelRotationOffset,isVisible:a("source-label")}),r.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:l,getKey:zM(e.getTargetLabelKey,"target"),getBoundingBox:GM(e.getTargetLabelBox,"target"),drawClipped:!0,drawElement:e.drawTargetLabel,getRotation:i("target"),getRotationPoint:e.getTargetLabelRotationPoint,getRotationOffset:e.getTargetLabelRotationOffset,isVisible:a("target-label")});var h=bx(function(){console.log("garbage collect flag set"),r.data.gc=!0},1e4);r.onUpdateEleCalcs(function(f,d){var p=!1;d&&d.length>0&&(p|=r.drawing.invalidate(d)),p&&h()}),Nqe(r)};o(Rqe,"getBGColor");o(Uhe,"getLabelLines");zM=o(function(e,r){return function(n){var i=e(n),a=Uhe(n,r);return a.length>1?a.map(function(s,l){return"".concat(i,"_").concat(l)}):i}},"getStyleKeysForLabel"),GM=o(function(e,r){return function(n,i){var a=e(n);if(typeof i=="string"){var s=i.indexOf("_");if(s>0){var l=Number(i.substring(s+1)),u=Uhe(n,r),h=a.h/u.length,f=h*l,d=a.y1+f;return{x1:a.x1,w:a.w,y1:d,h,yOffset:f}}}return a}},"getBoundingBoxForLabel");o(Nqe,"overrideCanvasRendererFunctions");o(Mqe,"clearWebgl");o(Iqe,"clearCanvas");o(Oqe,"createPanZoomMatrix");o(Hhe,"setContextTransform");o(Pqe,"drawSelectionRectangle");o(Bqe,"drawAxes");o(Fqe,"drawAtlases");o($qe,"getPickingIndexes");o(zqe,"findNearestElementsWebgl");o(VM,"drawEle");o(qhe,"renderWebgl");Rf={};Rf.drawPolygonPath=function(t,e,r,n,i,a){var s=n/2,l=i/2;t.beginPath&&t.beginPath(),t.moveTo(e+s*a[0],r+l*a[1]);for(var u=1;u0&&s>0){m.clearRect(0,0,a,s),m.globalCompositeOperation="source-over";var g=this.getCachedZSortedEles();if(t.full)m.translate(-n.x1*h,-n.y1*h),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(n.x1*h,n.y1*h);else{var y=e.pan(),v={x:y.x*h,y:y.y*h};h*=e.zoom(),m.translate(v.x,v.y),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(-v.x,-v.y)}t.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=t.bg,m.rect(0,0,a,s),m.fill())}return p};o(Gqe,"b64ToBlob");o(lue,"b64UriToB64");o(Yhe,"output");Cx.png=function(t){return Yhe(t,this.bufferCanvasImage(t),"image/png")};Cx.jpg=function(t){return Yhe(t,this.bufferCanvasImage(t),"image/jpeg")};Xhe={};Xhe.nodeShapeImpl=function(t,e,r,n,i,a,s,l){switch(t){case"ellipse":return this.drawEllipsePath(e,r,n,i,a);case"polygon":return this.drawPolygonPath(e,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(e,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,r,n,i,a,l);case"barrel":return this.drawBarrelPath(e,r,n,i,a)}};Vqe=jhe,Cr=jhe.prototype;Cr.CANVAS_LAYERS=3;Cr.SELECT_BOX=0;Cr.DRAG=1;Cr.NODE=2;Cr.WEBGL=3;Cr.CANVAS_TYPES=["2d","2d","2d","webgl2"];Cr.BUFFER_COUNT=3;Cr.TEXTURE_BUFFER=0;Cr.MOTIONBLUR_BUFFER_NODE=1;Cr.MOTIONBLUR_BUFFER_DRAG=2;o(jhe,"CanvasRenderer");Cr.redrawHint=function(t,e){var r=this;switch(t){case"eles":r.data.canvasNeedsRedraw[Cr.NODE]=e;break;case"drag":r.data.canvasNeedsRedraw[Cr.DRAG]=e;break;case"select":r.data.canvasNeedsRedraw[Cr.SELECT_BOX]=e;break;case"gc":r.data.gc=!0;break}};Uqe=typeof Path2D<"u";Cr.path2dEnabled=function(t){if(t===void 0)return this.pathsEnabled;this.pathsEnabled=!!t};Cr.usePaths=function(){return Uqe&&this.pathsEnabled};Cr.setImgSmoothing=function(t,e){t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled=e:(t.webkitImageSmoothingEnabled=e,t.mozImageSmoothingEnabled=e,t.msImageSmoothingEnabled=e)};Cr.getImgSmoothing=function(t){return t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled:t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled};Cr.makeOffscreenCanvas=function(t,e){var r;if((typeof OffscreenCanvas>"u"?"undefined":$i(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(t,e);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=t,r.height=e}return r};[Bhe,Fc,Hu,NI,Cp,Lf,us,Vhe,Rf,Cx,Xhe].forEach(function(t){ir(Cr,t)});Hqe=[{name:"null",impl:khe},{name:"base",impl:Mhe},{name:"canvas",impl:Vqe}],qqe=[{type:"layout",extensions:gHe},{type:"renderer",extensions:Hqe}],Khe={},Qhe={};o(Zhe,"setExtension");o(Jhe,"getExtension");o(Wqe,"setModule");o(Yqe,"getModule");lI=o(function(){if(arguments.length===2)return Jhe.apply(null,arguments);if(arguments.length===3)return Zhe.apply(null,arguments);if(arguments.length===4)return Yqe.apply(null,arguments);if(arguments.length===5)return Wqe.apply(null,arguments);Kn("Invalid extension access syntax")},"extension");dx.prototype.extension=lI;qqe.forEach(function(t){t.extensions.forEach(function(e){Zhe(t.type,e.name,e.impl)})});lE=o(function(){if(!(this instanceof lE))return new lE;this.length=0},"Stylesheet"),Ep=lE.prototype;Ep.instanceString=function(){return"stylesheet"};Ep.selector=function(t){var e=this.length++;return this[e]={selector:t,properties:[]},this};Ep.css=function(t,e){var r=this.length-1;if(Jt(t))this[r].properties.push({name:t,value:e});else if(Yr(t))for(var n=t,i=Object.keys(n),a=0;a{"use strict";o((function(e,r){typeof Ax=="object"&&typeof OI=="object"?OI.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Ax=="object"?Ax.layoutBase=r():e.layoutBase=r()}),"webpackUniversalModuleDefinition")(Ax,function(){return(function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=26)})([(function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s}),(function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(4);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp&&(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)),this.labelHeight>m&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-m)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-m),this.setHeight(this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h}),(function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(6),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,T=0;T-1&&k>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(w,1),x.target!=x.source&&x.target.edges.splice(k,1);var S=x.source.owner.getEdges().indexOf(x);if(S==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,T=this.getNodes(),S=T.length,w=0;wv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(T[0].getParent().paddingLeft!=null?b=T[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,T,S,w,k,C,A=this.nodes,L=A.length,I=0;IT&&(y=T),vw&&(x=w),bT&&(y=T),vw&&(x=w),b=this.nodes.length){var L=0;v.forEach(function(I){I.owner==g&&L++}),L==this.nodes.length&&(this.isConnected=!0)}},t.exports=p}),(function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(5),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=A,!1;if(hf)return l[0]=p,l[1]=h,l[2]=k,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,E=!0):(l[0]=g,l[1]=m,E=!0):D===N&&(u>f?(l[0]=p,l[1]=m,E=!0):(l[0]=x,l[1]=v,E=!0)),-O===N?f>u?(l[2]=C,l[3]=A,_=!0):(l[2]=k,l[3]=w,_=!0):O===N&&(f>u?(l[2]=S,l[3]=w,_=!0):(l[2]=L,l[3]=A,_=!0)),E&&_)return!1;if(u>f?h>d?(P=this.getCardinalDirection(D,N,4),B=this.getCardinalDirection(O,N,2)):(P=this.getCardinalDirection(-D,N,3),B=this.getCardinalDirection(-O,N,1)):h>d?(P=this.getCardinalDirection(-D,N,1),B=this.getCardinalDirection(-O,N,3)):(P=this.getCardinalDirection(D,N,2),B=this.getCardinalDirection(O,N,4)),!E)switch(P){case 1:V=m,F=u+-T/N,l[0]=F,l[1]=V;break;case 2:F=x,V=h+b*N,l[0]=F,l[1]=V;break;case 3:V=v,F=u+T/N,l[0]=F,l[1]=V;break;case 4:F=y,V=h+-b*N,l[0]=F,l[1]=V;break}if(!_)switch(B){case 1:U=w,$=f+-R/N,l[2]=$,l[3]=U;break;case 2:$=L,U=d+I*N,l[2]=$,l[3]=U;break;case 3:U=A,$=f+R/N,l[2]=$,l[3]=U;break;case 4:$=C,U=d+-I*N,l[2]=$,l[3]=U;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,T=void 0,S=void 0,w=void 0,k=void 0,C=void 0,A=void 0,L=void 0;return T=p-f,w=h-d,C=d*f-h*p,S=v-g,k=m-y,A=y*g-m*v,L=T*k-S*w,L===0?null:(x=(w*A-k*C)/L,b=(S*C-T*A)/L,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n}),(function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n}),(function(t,e,r){"use strict";var n=(function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i}),(function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(T.push(w[0]);T.length>0&&g;){var k=T[0];T.splice(0,1),b.add(k);for(var C=k.getEdges(),x=0;x-1&&w.splice(R,1)}b=new Set,S=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(A,1);var L=S.getNeighborsList();L.forEach(function(E){if(y.indexOf(E)<0){var _=v.get(E),D=_-1;D==1&&k.push(E),v.set(E,D)}})}y=y.concat(k),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p}),(function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n}),(function(t,e,r){"use strict";var n=r(4);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i}),(function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mT||b>T)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(T=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||T>=x[0].length)){for(var S=0;Sh},"_defaultCompareFunction")}]),l})();t.exports=s}),(function(t,e,r){"use strict";var n=(function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o((function(e,r){typeof _x=="object"&&typeof BI=="object"?BI.exports=r(PI()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof _x=="object"?_x.coseBase=r(PI()):e.coseBase=r(e.layoutBase)}),"webpackUniversalModuleDefinition")(_x,function(t){return(function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=7)})([(function(e,r){e.exports=t}),(function(e,r,n){"use strict";var i=n(0).FDLayoutConstants;function a(){}o(a,"CoSEConstants");for(var s in i)a[s]=i[s];a.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,a.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,a.DEFAULT_COMPONENT_SEPERATION=60,a.TILE=!0,a.TILING_PADDING_VERTICAL=10,a.TILING_PADDING_HORIZONTAL=10,a.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=a}),(function(e,r,n){"use strict";var i=n(0).FDLayoutEdge;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEEdge"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a}),(function(e,r,n){"use strict";var i=n(0).LGraph;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEGraph"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a}),(function(e,r,n){"use strict";var i=n(0).LGraphManager;function a(l){i.call(this,l)}o(a,"CoSEGraphManager"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a}),(function(e,r,n){"use strict";var i=n(0).FDLayoutNode,a=n(0).IMath;function s(u,h,f,d){i.call(this,u,h,f,d)}o(s,"CoSENode"),s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.move=function(){var u=this.graphManager.getLayout();this.displacementX=u.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=u.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementX=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementX)),Math.abs(this.displacementY)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementY=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),u.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},s.prototype.propogateDisplacementToChildren=function(u,h){for(var f=this.getChild().getNodes(),d,p=0;p0)this.positionNodesRadially(w);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var k=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(A){return k.has(A)});this.graphManager.setAllNodesToApplyGravitation(C),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},T.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%f.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var w=new Set(this.getAllNodes()),k=this.nodesWithGravity.filter(function(L){return w.has(L)});this.graphManager.setAllNodesToApplyGravitation(k),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var C=!this.isTreeGrowing&&!this.isGrowthFinished,A=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(C,A),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},T.prototype.getPositionsData=function(){for(var w=this.graphManager.getAllNodes(),k={},C=0;C1){var E;for(E=0;EA&&(A=Math.floor(R.y)),I=Math.floor(R.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-R.x/2,d.WORLD_CENTER_Y-R.y/2))},T.radialLayout=function(w,k,C){var A=Math.max(this.maxDiagonalInTree(w),h.DEFAULT_RADIAL_SEPARATION);T.branchRadialLayout(k,null,0,359,0,A);var L=x.calculateBounds(w),I=new b;I.setDeviceOrgX(L.getMinX()),I.setDeviceOrgY(L.getMinY()),I.setWorldOrgX(C.x),I.setWorldOrgY(C.y);for(var R=0;R1;){var j=U[0];U.splice(0,1);var ee=P.indexOf(j);ee>=0&&P.splice(ee,1),V--,B--}k!=null?$=(P.indexOf(U[0])+1)%V:$=0;for(var q=Math.abs(A-C)/B,oe=$;F!=B;oe=++oe%V){var Q=P[oe].getOtherEnd(w);if(Q!=k){var ue=(C+F*q)%360,te=(ue+q)%360;T.branchRadialLayout(Q,w,ue,te,L+I,I),F++}}},T.maxDiagonalInTree=function(w){for(var k=y.MIN_VALUE,C=0;Ck&&(k=L)}return k},T.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},T.prototype.groupZeroDegreeMembers=function(){var w=this,k={};this.memberGroups={},this.idToDummyNode={};for(var C=[],A=this.graphManager.getAllNodes(),L=0;L"u"&&(k[E]=[]),k[E]=k[E].concat(I)}Object.keys(k).forEach(function(_){if(k[_].length>1){var D="DummyCompound_"+_;w.memberGroups[D]=k[_];var O=k[_][0].getParent(),N=new l(w.graphManager);N.id=D,N.paddingLeft=O.paddingLeft||0,N.paddingRight=O.paddingRight||0,N.paddingBottom=O.paddingBottom||0,N.paddingTop=O.paddingTop||0,w.idToDummyNode[D]=N;var P=w.getGraphManager().add(w.newGraph(),N),B=O.getChild();B.add(N);for(var F=0;F=0;w--){var k=this.compoundOrder[w],C=k.id,A=k.paddingLeft,L=k.paddingTop;this.adjustLocations(this.tiledMemberPack[C],k.rect.x,k.rect.y,A,L)}},T.prototype.repopulateZeroDegreeMembers=function(){var w=this,k=this.tiledZeroDegreePack;Object.keys(k).forEach(function(C){var A=w.idToDummyNode[C],L=A.paddingLeft,I=A.paddingTop;w.adjustLocations(k[C],A.rect.x,A.rect.y,L,I)})},T.prototype.getToBeTiled=function(w){var k=w.id;if(this.toBeTiled[k]!=null)return this.toBeTiled[k];var C=w.getChild();if(C==null)return this.toBeTiled[k]=!1,!1;for(var A=C.getNodes(),L=0;L0)return this.toBeTiled[k]=!1,!1;if(I.getChild()==null){this.toBeTiled[I.id]=!1;continue}if(!this.getToBeTiled(I))return this.toBeTiled[k]=!1,!1}return this.toBeTiled[k]=!0,!0},T.prototype.getNodeDegree=function(w){for(var k=w.id,C=w.getEdges(),A=0,L=0;L_&&(_=O.rect.height)}C+=_+w.verticalPadding}},T.prototype.tileCompoundMembers=function(w,k){var C=this;this.tiledMemberPack=[],Object.keys(w).forEach(function(A){var L=k[A];C.tiledMemberPack[A]=C.tileNodes(w[A],L.paddingLeft+L.paddingRight),L.rect.width=C.tiledMemberPack[A].width,L.rect.height=C.tiledMemberPack[A].height})},T.prototype.tileNodes=function(w,k){var C=h.TILING_PADDING_VERTICAL,A=h.TILING_PADDING_HORIZONTAL,L={rows:[],rowWidth:[],rowHeight:[],width:0,height:k,verticalPadding:C,horizontalPadding:A};w.sort(function(E,_){return E.rect.width*E.rect.height>_.rect.width*_.rect.height?-1:E.rect.width*E.rect.height<_.rect.width*_.rect.height?1:0});for(var I=0;I0&&(R+=w.horizontalPadding),w.rowWidth[C]=R,w.width0&&(E+=w.verticalPadding);var _=0;E>w.rowHeight[C]&&(_=w.rowHeight[C],w.rowHeight[C]=E,_=w.rowHeight[C]-_),w.height+=_,w.rows[C].push(k)},T.prototype.getShortestRowIndex=function(w){for(var k=-1,C=Number.MAX_VALUE,A=0;AC&&(k=A,C=w.rowWidth[A]);return k},T.prototype.canAddHorizontal=function(w,k,C){var A=this.getShortestRowIndex(w);if(A<0)return!0;var L=w.rowWidth[A];if(L+w.horizontalPadding+k<=w.width)return!0;var I=0;w.rowHeight[A]0&&(I=C+w.verticalPadding-w.rowHeight[A]);var R;w.width-L>=k+w.horizontalPadding?R=(w.height+I)/(L+k+w.horizontalPadding):R=(w.height+I)/w.width,I=C+w.verticalPadding;var E;return w.widthI&&k!=C){A.splice(-1,1),w.rows[C].push(L),w.rowWidth[k]=w.rowWidth[k]-I,w.rowWidth[C]=w.rowWidth[C]+I,w.width=w.rowWidth[instance.getLongestRowIndex(w)];for(var R=Number.MIN_VALUE,E=0;ER&&(R=A[E].height);k>0&&(R+=w.verticalPadding);var _=w.rowHeight[k]+w.rowHeight[C];w.rowHeight[k]=R,w.rowHeight[C]0)for(var B=L;B<=I;B++)P[0]+=this.grid[B][R-1].length+this.grid[B][R].length-1;if(I0)for(var B=R;B<=E;B++)P[3]+=this.grid[L-1][B].length+this.grid[L][B].length-1;for(var F=y.MAX_VALUE,V,$,U=0;U{"use strict";o((function(e,r){typeof Dx=="object"&&typeof $I=="object"?$I.exports=r(FI()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Dx=="object"?Dx.cytoscapeCoseBilkent=r(FI()):e.cytoscapeCoseBilkent=r(e.coseBase)}),"webpackUniversalModuleDefinition")(Dx,function(t){return(function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=1)})([(function(e,r){e.exports=t}),(function(e,r,n){"use strict";var i=n(0).layoutBase.LayoutConstants,a=n(0).layoutBase.FDLayoutConstants,s=n(0).CoSEConstants,l=n(0).CoSELayout,u=n(0).CoSENode,h=n(0).layoutBase.PointD,f=n(0).layoutBase.DimensionD,d={ready:o(function(){},"ready"),stop:o(function(){},"stop"),quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:.45,nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.5};function p(v,x){var b={};for(var T in v)b[T]=v[T];for(var T in x)b[T]=x[T];return b}o(p,"extend");function m(v){this.options=p(d,v),g(this.options)}o(m,"_CoSELayout");var g=o(function(x){x.nodeRepulsion!=null&&(s.DEFAULT_REPULSION_STRENGTH=a.DEFAULT_REPULSION_STRENGTH=x.nodeRepulsion),x.idealEdgeLength!=null&&(s.DEFAULT_EDGE_LENGTH=a.DEFAULT_EDGE_LENGTH=x.idealEdgeLength),x.edgeElasticity!=null&&(s.DEFAULT_SPRING_STRENGTH=a.DEFAULT_SPRING_STRENGTH=x.edgeElasticity),x.nestingFactor!=null&&(s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=x.nestingFactor),x.gravity!=null&&(s.DEFAULT_GRAVITY_STRENGTH=a.DEFAULT_GRAVITY_STRENGTH=x.gravity),x.numIter!=null&&(s.MAX_ITERATIONS=a.MAX_ITERATIONS=x.numIter),x.gravityRange!=null&&(s.DEFAULT_GRAVITY_RANGE_FACTOR=a.DEFAULT_GRAVITY_RANGE_FACTOR=x.gravityRange),x.gravityCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_STRENGTH=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=x.gravityCompound),x.gravityRangeCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=x.gravityRangeCompound),x.initialEnergyOnIncremental!=null&&(s.DEFAULT_COOLING_FACTOR_INCREMENTAL=a.DEFAULT_COOLING_FACTOR_INCREMENTAL=x.initialEnergyOnIncremental),x.quality=="draft"?i.QUALITY=0:x.quality=="proof"?i.QUALITY=2:i.QUALITY=1,s.NODE_DIMENSIONS_INCLUDE_LABELS=a.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=x.nodeDimensionsIncludeLabels,s.DEFAULT_INCREMENTAL=a.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!x.randomize,s.ANIMATE=a.ANIMATE=i.ANIMATE=x.animate,s.TILE=x.tile,s.TILING_PADDING_VERTICAL=typeof x.tilingPaddingVertical=="function"?x.tilingPaddingVertical.call():x.tilingPaddingVertical,s.TILING_PADDING_HORIZONTAL=typeof x.tilingPaddingHorizontal=="function"?x.tilingPaddingHorizontal.call():x.tilingPaddingHorizontal},"getUserOptions");m.prototype.run=function(){var v,x,b=this.options,T=this.idToLNode={},S=this.layout=new l,w=this;w.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var k=S.newGraphManager();this.gm=k;var C=this.options.eles.nodes(),A=this.options.eles.edges();this.root=k.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(C),S);for(var L=0;L0){var E;E=b.getGraphManager().add(b.newGraph(),C),this.processChildrenList(E,k,b)}}},m.prototype.stop=function(){return this.stopped=!0,this};var y=o(function(x){x("layout","cose-bilkent",m)},"register");typeof cytoscape<"u"&&y(cytoscape),e.exports=y})])})});function jqe(t,e){t.forEach(r=>{let n={id:r.id,labelText:r.label,height:r.height,width:r.width,padding:r.padding??0};Object.keys(r).forEach(i=>{["id","label","height","width","padding","x","y"].includes(i)||(n[i]=r[i])}),e.add({group:"nodes",data:n,position:{x:r.x??0,y:r.y??0}})})}function Kqe(t,e){t.forEach(r=>{let n={id:r.id,source:r.start,target:r.end};Object.keys(r).forEach(i=>{["id","start","end"].includes(i)||(n[i]=r[i])}),e.add({group:"edges",data:n})})}function rfe(t){return new Promise(e=>{let r=qe("body").append("div").attr("id","cy").attr("style","display:none"),n=Ko({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),jqe(t.nodes,n),Kqe(t.edges,n),n.nodes().forEach(function(a){a.layoutDimensions=()=>{let s=a.data();return{w:s.width,h:s.height}}});let i={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};n.layout(i).run(),n.ready(a=>{X.info("Cytoscape ready",a),e(n)})})}function nfe(t){return t.nodes().map(e=>{let r=e.data(),n=e.position(),i={id:r.id,x:n.x,y:n.y};return Object.keys(r).forEach(a=>{a!=="id"&&(i[a]=r[a])}),i})}function ife(t){return t.edges().map(e=>{let r=e.data(),n=e._private.rscratch,i={id:r.id,source:r.source,target:r.target,startX:n.startX,startY:n.startY,midX:n.midX,midY:n.midY,endX:n.endX,endY:n.endY};return Object.keys(r).forEach(a=>{["id","source","target"].includes(a)||(i[a]=r[a])}),i})}var tfe,afe=M(()=>{"use strict";II();tfe=La(efe(),1);yr();pt();Ko.use(tfe.default);o(jqe,"addNodes");o(Kqe,"addEdges");o(rfe,"createCytoscapeInstance");o(nfe,"extractPositionedNodes");o(ife,"extractPositionedEdges")});async function sfe(t,e){X.debug("Starting cose-bilkent layout algorithm");try{Qqe(t);let r=await rfe(t),n=nfe(r),i=ife(r);return X.debug(`Layout completed: ${n.length} nodes, ${i.length} edges`),{nodes:n,edges:i}}catch(r){throw X.error("Error in cose-bilkent layout algorithm:",r),r}}function Qqe(t){if(!t)throw new Error("Layout data is required");if(!t.config)throw new Error("Configuration is required in layout data");if(!t.rootNode)throw new Error("Root node is required");if(!t.nodes||!Array.isArray(t.nodes))throw new Error("No nodes found in layout data");if(!Array.isArray(t.edges))throw new Error("Edges array is required in layout data");return!0}var ofe=M(()=>{"use strict";pt();afe();o(sfe,"executeCoseBilkentLayout");o(Qqe,"validateLayoutData")});var lfe,cfe=M(()=>{"use strict";ofe();lfe=o(async(t,e,{insertCluster:r,insertEdge:n,insertEdgeLabel:i,insertMarkers:a,insertNode:s,log:l,positionEdgeLabel:u},{algorithm:h})=>{let f={},d={},p=e.select("g");a(p,t.markers,t.type,t.diagramId);let m=p.insert("g").attr("class","subgraphs"),g=p.insert("g").attr("class","edgePaths"),y=p.insert("g").attr("class","edgeLabels"),v=p.insert("g").attr("class","nodes");l.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(t.nodes.map(async T=>{if(T.isGroup){let S={...T};d[T.id]=S,f[T.id]=S,await r(m,T)}else{let S={...T};f[T.id]=S;let w=await s(v,T,{config:t.config,dir:t.direction||"TB"}),k=w.node().getBBox();S.width=k.width,S.height=k.height,S.domId=w,l.debug(`Node ${T.id} dimensions: ${k.width}x${k.height}`)}})),l.debug("Running cose-bilkent layout algorithm");let x={...t,nodes:t.nodes.map(T=>{let S=f[T.id];return{...T,width:S.width,height:S.height}})},b=await sfe(x,t.config);l.debug("Positioning nodes based on layout results"),b.nodes.forEach(T=>{let S=f[T.id];S?.domId&&(S.domId.attr("transform",`translate(${T.x}, ${T.y})`),S.x=T.x,S.y=T.y,l.debug(`Positioned node ${S.id} at center (${T.x}, ${T.y})`))}),b.edges.forEach(T=>{let S=t.edges.find(w=>w.id===T.id);S&&(S.points=[{x:T.startX,y:T.startY},{x:T.midX,y:T.midY},{x:T.endX,y:T.endY}])}),l.debug("Inserting and positioning edges"),await Promise.all(t.edges.map(async T=>{let S=await i(y,T),w=f[T.start??""],k=f[T.end??""];if(w&&k){let C=b.edges.find(A=>A.id===T.id);if(C){l.debug("APA01 positionedEdge",C);let A={...T},L=n(g,A,d,t.type,w,k,t.diagramId);u(A,L)}else{let A={...T,points:[{x:w.x||0,y:w.y||0},{x:k.x||0,y:k.y||0}]},L=n(g,A,d,t.type,w,k,t.diagramId);u(A,L)}}})),l.debug("Cose-bilkent rendering completed")},"render")});var ufe={};dr(ufe,{render:()=>Zqe});var Zqe,hfe=M(()=>{"use strict";cfe();Zqe=lfe});var Lx,zI,Jqe,Qo,$c,Nf=M(()=>{"use strict";ere();pt();Lx={},zI=o(t=>{for(let e of t)Lx[e.name]=e},"registerLayoutLoaders"),Jqe=o(()=>{zI([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(Ioe(),Moe)),"loader")},{name:"cose-bilkent",loader:o(async()=>await Promise.resolve().then(()=>(hfe(),ufe)),"loader")}])},"registerDefaultLayoutLoaders");Jqe();Qo=o(async(t,e)=>{if(!(t.layoutAlgorithm in Lx))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);let r=Lx[t.layoutAlgorithm];return(await r.loader()).render(t,e,Jte,{algorithm:r.algorithm})},"render"),$c=o((t="",{fallback:e="dagre"}={})=>{if(t in Lx)return t;if(e in Lx)return X.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm")});var Ws,eWe,tWe,Mf=M(()=>{"use strict";Ei();pt();Ws=o((t,e,r,n)=>{t.attr("class",r);let{width:i,height:a,x:s,y:l}=eWe(t,e);mn(t,a,i,n);let u=tWe(s,l,i,a,e);t.attr("viewBox",u),X.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),eWe=o((t,e)=>{let r=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+e*2,height:r.height+e*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),tWe=o((t,e,r,n,i)=>`${t-i} ${e-i} ${r} ${n}`,"createViewBox")});var rWe,nWe,ffe,dfe=M(()=>{"use strict";yr();Xt();pt();ep();Nf();Mf();tr();rWe=o(function(t,e){return e.db.getClasses()},"getClasses"),nWe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing state diagram (v2)",e);let{securityLevel:i,flowchart:a,layout:s}=ge(),l;i==="sandbox"&&(l=qe("#i"+e));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;X.debug("Before getData: ");let h=n.db.getData();X.debug("Data: ",h);let f=Vo(e,i),d=n.db.getDirection();h.type=n.type,h.layoutAlgorithm=$c(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&X.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),h.direction=d,h.nodeSpacing=a?.nodeSpacing||50,h.rankSpacing=a?.rankSpacing||50,h.markers=["point","circle","cross"],h.diagramId=e,X.debug("REF1:",h),await Qo(h,f);let p=h.config.flowchart?.diagramPadding??8;qt.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),Ws(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=qe(`#${e} [id="${m.id}"]`);if(!g||!m.link)continue;let y=u.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",m.cssClasses),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):m.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",m.linkTarget);let v=g.insert(function(){return y},":first-child"),x=g.select(".label-container");x&&v.append(function(){return x.node()});let b=g.select(".label");b&&v.append(function(){return b.node()})}},"draw"),ffe={getClasses:rWe,draw:nWe}});var GI,VI,pfe=M(()=>{"use strict";GI=(function(){var t=o(function(fr,it,kt,jt){for(kt=kt||{},jt=fr.length;jt--;kt[fr[jt]]=it);return kt},"o"),e=[1,4],r=[1,3],n=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],a=[2,2],s=[1,13],l=[1,14],u=[1,15],h=[1,16],f=[1,23],d=[1,25],p=[1,26],m=[1,27],g=[1,49],y=[1,48],v=[1,29],x=[1,30],b=[1,31],T=[1,32],S=[1,33],w=[1,44],k=[1,46],C=[1,42],A=[1,47],L=[1,43],I=[1,50],R=[1,45],E=[1,51],_=[1,52],D=[1,34],O=[1,35],N=[1,36],P=[1,37],B=[1,57],F=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],V=[1,61],$=[1,60],U=[1,62],j=[8,9,11,75,77,78],ee=[1,78],q=[1,91],oe=[1,96],Q=[1,95],ue=[1,92],te=[1,88],re=[1,94],J=[1,90],K=[1,97],ae=[1,93],Z=[1,98],de=[1,89],ne=[8,9,10,11,40,75,77,78],Te=[8,9,10,11,40,46,75,77,78],W=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],Ve=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],pe=[44,60,89,102,105,106,109,111,114,115,116],Be=[1,121],Ye=[1,122],He=[1,124],Le=[1,123],Ie=[44,60,62,74,89,102,105,106,109,111,114,115,116],Ne=[1,133],Ce=[1,147],Fe=[1,148],fe=[1,149],xe=[1,150],Y=[1,135],he=[1,137],z=[1,141],se=[1,142],le=[1,143],ke=[1,144],ve=[1,145],ye=[1,146],Re=[1,151],_e=[1,152],ze=[1,131],Ke=[1,132],xt=[1,139],We=[1,134],Oe=[1,138],et=[1,136],Ue=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],lt=[1,154],Gt=[1,156],vt=[8,9,11],Lt=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],dt=[1,176],nt=[1,172],bt=[1,173],wt=[1,177],yt=[1,174],ft=[1,175],Ur=[77,116,119],_t=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],bn=[10,106],Br=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],cr=[1,247],ar=[1,245],_r=[1,249],Ct=[1,243],Se=[1,244],at=[1,246],Nt=[1,248],wr=[1,250],Tn=[1,268],yn=[8,9,11,106],sn=[8,9,10,11,60,84,105,106,109,110,111,112],Hi={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1]],performAction:o(function(it,kt,jt,ht,Dr,me,Yl){var be=me.length-1;switch(Dr){case 2:this.$=[];break;case 3:(!Array.isArray(me[be])||me[be].length>0)&&me[be-1].push(me[be]),this.$=me[be-1];break;case 4:case 183:this.$=me[be];break;case 11:ht.setDirection("TB"),this.$="TB";break;case 12:ht.setDirection(me[be-1]),this.$=me[be-1];break;case 27:this.$=me[be-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=ht.addSubGraph(me[be-6],me[be-1],me[be-4]);break;case 34:this.$=ht.addSubGraph(me[be-3],me[be-1],me[be-3]);break;case 35:this.$=ht.addSubGraph(void 0,me[be-1],void 0);break;case 37:this.$=me[be].trim(),ht.setAccTitle(this.$);break;case 38:case 39:this.$=me[be].trim(),ht.setAccDescription(this.$);break;case 43:this.$=me[be-1]+me[be];break;case 44:this.$=me[be];break;case 45:ht.addVertex(me[be-1][me[be-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,me[be]),ht.addLink(me[be-3].stmt,me[be-1],me[be-2]),this.$={stmt:me[be-1],nodes:me[be-1].concat(me[be-3].nodes)};break;case 46:ht.addLink(me[be-2].stmt,me[be],me[be-1]),this.$={stmt:me[be],nodes:me[be].concat(me[be-2].nodes)};break;case 47:ht.addLink(me[be-3].stmt,me[be-1],me[be-2]),this.$={stmt:me[be-1],nodes:me[be-1].concat(me[be-3].nodes)};break;case 48:this.$={stmt:me[be-1],nodes:me[be-1]};break;case 49:ht.addVertex(me[be-1][me[be-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,me[be]),this.$={stmt:me[be-1],nodes:me[be-1],shapeData:me[be]};break;case 50:this.$={stmt:me[be],nodes:me[be]};break;case 51:this.$=[me[be]];break;case 52:ht.addVertex(me[be-5][me[be-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,me[be-4]),this.$=me[be-5].concat(me[be]);break;case 53:this.$=me[be-4].concat(me[be]);break;case 54:this.$=me[be];break;case 55:this.$=me[be-2],ht.setClass(me[be-2],me[be]);break;case 56:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"square");break;case 57:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"doublecircle");break;case 58:this.$=me[be-5],ht.addVertex(me[be-5],me[be-2],"circle");break;case 59:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"ellipse");break;case 60:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"stadium");break;case 61:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"subroutine");break;case 62:this.$=me[be-7],ht.addVertex(me[be-7],me[be-1],"rect",void 0,void 0,void 0,Object.fromEntries([[me[be-5],me[be-3]]]));break;case 63:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"cylinder");break;case 64:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"round");break;case 65:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"diamond");break;case 66:this.$=me[be-5],ht.addVertex(me[be-5],me[be-2],"hexagon");break;case 67:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"odd");break;case 68:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"trapezoid");break;case 69:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"inv_trapezoid");break;case 70:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"lean_right");break;case 71:this.$=me[be-3],ht.addVertex(me[be-3],me[be-1],"lean_left");break;case 72:this.$=me[be],ht.addVertex(me[be]);break;case 73:me[be-1].text=me[be],this.$=me[be-1];break;case 74:case 75:me[be-2].text=me[be-1],this.$=me[be-2];break;case 76:this.$=me[be];break;case 77:var jr=ht.destructLink(me[be],me[be-2]);this.$={type:jr.type,stroke:jr.stroke,length:jr.length,text:me[be-1]};break;case 78:var jr=ht.destructLink(me[be],me[be-2]);this.$={type:jr.type,stroke:jr.stroke,length:jr.length,text:me[be-1],id:me[be-3]};break;case 79:this.$={text:me[be],type:"text"};break;case 80:this.$={text:me[be-1].text+""+me[be],type:me[be-1].type};break;case 81:this.$={text:me[be],type:"string"};break;case 82:this.$={text:me[be],type:"markdown"};break;case 83:var jr=ht.destructLink(me[be]);this.$={type:jr.type,stroke:jr.stroke,length:jr.length};break;case 84:var jr=ht.destructLink(me[be]);this.$={type:jr.type,stroke:jr.stroke,length:jr.length,id:me[be-1]};break;case 85:this.$=me[be-1];break;case 86:this.$={text:me[be],type:"text"};break;case 87:this.$={text:me[be-1].text+""+me[be],type:me[be-1].type};break;case 88:this.$={text:me[be],type:"string"};break;case 89:case 104:this.$={text:me[be],type:"markdown"};break;case 101:this.$={text:me[be],type:"text"};break;case 102:this.$={text:me[be-1].text+""+me[be],type:me[be-1].type};break;case 103:this.$={text:me[be],type:"text"};break;case 105:this.$=me[be-4],ht.addClass(me[be-2],me[be]);break;case 106:this.$=me[be-4],ht.setClass(me[be-2],me[be]);break;case 107:case 115:this.$=me[be-1],ht.setClickEvent(me[be-1],me[be]);break;case 108:case 116:this.$=me[be-3],ht.setClickEvent(me[be-3],me[be-2]),ht.setTooltip(me[be-3],me[be]);break;case 109:this.$=me[be-2],ht.setClickEvent(me[be-2],me[be-1],me[be]);break;case 110:this.$=me[be-4],ht.setClickEvent(me[be-4],me[be-3],me[be-2]),ht.setTooltip(me[be-4],me[be]);break;case 111:this.$=me[be-2],ht.setLink(me[be-2],me[be]);break;case 112:this.$=me[be-4],ht.setLink(me[be-4],me[be-2]),ht.setTooltip(me[be-4],me[be]);break;case 113:this.$=me[be-4],ht.setLink(me[be-4],me[be-2],me[be]);break;case 114:this.$=me[be-6],ht.setLink(me[be-6],me[be-4],me[be]),ht.setTooltip(me[be-6],me[be-2]);break;case 117:this.$=me[be-1],ht.setLink(me[be-1],me[be]);break;case 118:this.$=me[be-3],ht.setLink(me[be-3],me[be-2]),ht.setTooltip(me[be-3],me[be]);break;case 119:this.$=me[be-3],ht.setLink(me[be-3],me[be-2],me[be]);break;case 120:this.$=me[be-5],ht.setLink(me[be-5],me[be-4],me[be]),ht.setTooltip(me[be-5],me[be-2]);break;case 121:this.$=me[be-4],ht.addVertex(me[be-2],void 0,void 0,me[be]);break;case 122:this.$=me[be-4],ht.updateLink([me[be-2]],me[be]);break;case 123:this.$=me[be-4],ht.updateLink(me[be-2],me[be]);break;case 124:this.$=me[be-8],ht.updateLinkInterpolate([me[be-6]],me[be-2]),ht.updateLink([me[be-6]],me[be]);break;case 125:this.$=me[be-8],ht.updateLinkInterpolate(me[be-6],me[be-2]),ht.updateLink(me[be-6],me[be]);break;case 126:this.$=me[be-6],ht.updateLinkInterpolate([me[be-4]],me[be]);break;case 127:this.$=me[be-6],ht.updateLinkInterpolate(me[be-4],me[be]);break;case 128:case 130:this.$=[me[be]];break;case 129:case 131:me[be-2].push(me[be]),this.$=me[be-2];break;case 133:this.$=me[be-1]+me[be];break;case 181:this.$=me[be];break;case 182:this.$=me[be-1]+""+me[be];break;case 184:this.$=me[be-1]+""+me[be];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:r,12:n},{1:[3]},t(i,a,{5:6}),{4:7,9:e,10:r,12:n},{4:8,9:e,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:S,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_,121:D,122:O,123:N,124:P},t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),{8:[1,54],9:[1,55],10:B,15:53,18:56},t(F,[2,3]),t(F,[2,4]),t(F,[2,5]),t(F,[2,6]),t(F,[2,7]),t(F,[2,8]),{8:V,9:$,11:U,21:58,41:59,72:63,75:[1,64],77:[1,66],78:[1,65]},{8:V,9:$,11:U,21:67},{8:V,9:$,11:U,21:68},{8:V,9:$,11:U,21:69},{8:V,9:$,11:U,21:70},{8:V,9:$,11:U,21:71},{8:V,9:$,10:[1,72],11:U,21:73},t(F,[2,36]),{35:[1,74]},{37:[1,75]},t(F,[2,39]),t(j,[2,50],{18:76,39:77,10:B,40:ee}),{10:[1,79]},{10:[1,80]},{10:[1,81]},{10:[1,82]},{14:q,44:oe,60:Q,80:[1,86],89:ue,95:[1,83],97:[1,84],101:85,105:te,106:re,109:J,111:K,114:ae,115:Z,116:de,120:87},t(F,[2,185]),t(F,[2,186]),t(F,[2,187]),t(F,[2,188]),t(ne,[2,51]),t(ne,[2,54],{46:[1,99]}),t(Te,[2,72],{113:112,29:[1,100],44:g,48:[1,101],50:[1,102],52:[1,103],54:[1,104],56:[1,105],58:[1,106],60:y,63:[1,107],65:[1,108],67:[1,109],68:[1,110],70:[1,111],89:w,102:k,105:C,106:A,109:L,111:I,114:R,115:E,116:_}),t(W,[2,181]),t(W,[2,142]),t(W,[2,143]),t(W,[2,144]),t(W,[2,145]),t(W,[2,146]),t(W,[2,147]),t(W,[2,148]),t(W,[2,149]),t(W,[2,150]),t(W,[2,151]),t(W,[2,152]),t(i,[2,12]),t(i,[2,18]),t(i,[2,19]),{9:[1,113]},t(Ve,[2,26],{18:114,10:B}),t(F,[2,27]),{42:115,43:38,44:g,45:39,47:40,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},t(F,[2,40]),t(F,[2,41]),t(F,[2,42]),t(pe,[2,76],{73:116,62:[1,118],74:[1,117]}),{76:119,79:120,80:Be,81:Ye,116:He,119:Le},{75:[1,125],77:[1,126]},t(Ie,[2,83]),t(F,[2,28]),t(F,[2,29]),t(F,[2,30]),t(F,[2,31]),t(F,[2,32]),{10:Ne,12:Ce,14:Fe,27:fe,28:127,32:xe,44:Y,60:he,75:z,80:[1,129],81:[1,130],83:140,84:se,85:le,86:ke,87:ve,88:ye,89:Re,90:_e,91:128,105:ze,109:Ke,111:xt,114:We,115:Oe,116:et},t(Ue,a,{5:153}),t(F,[2,37]),t(F,[2,38]),t(j,[2,48],{44:lt}),t(j,[2,49],{18:155,10:B,40:Gt}),t(ne,[2,44]),{44:g,47:157,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},{102:[1,158],103:159,105:[1,160]},{44:g,47:161,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},{44:g,47:162,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},t(vt,[2,107],{10:[1,163],96:[1,164]}),{80:[1,165]},t(vt,[2,115],{120:167,10:[1,166],14:q,44:oe,60:Q,89:ue,105:te,106:re,109:J,111:K,114:ae,115:Z,116:de}),t(vt,[2,117],{10:[1,168]}),t(Lt,[2,183]),t(Lt,[2,170]),t(Lt,[2,171]),t(Lt,[2,172]),t(Lt,[2,173]),t(Lt,[2,174]),t(Lt,[2,175]),t(Lt,[2,176]),t(Lt,[2,177]),t(Lt,[2,178]),t(Lt,[2,179]),t(Lt,[2,180]),{44:g,47:169,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},{30:170,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:178,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:180,50:[1,179],67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:181,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:182,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:183,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{109:[1,184]},{30:185,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:186,65:[1,187],67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:188,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:189,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{30:190,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},t(W,[2,182]),t(i,[2,20]),t(Ve,[2,25]),t(j,[2,46],{39:191,18:192,10:B,40:ee}),t(pe,[2,73],{10:[1,193]}),{10:[1,194]},{30:195,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{77:[1,196],79:197,116:He,119:Le},t(Ur,[2,79]),t(Ur,[2,81]),t(Ur,[2,82]),t(Ur,[2,168]),t(Ur,[2,169]),{76:198,79:120,80:Be,81:Ye,116:He,119:Le},t(Ie,[2,84]),{8:V,9:$,10:Ne,11:U,12:Ce,14:Fe,21:200,27:fe,29:[1,199],32:xe,44:Y,60:he,75:z,83:140,84:se,85:le,86:ke,87:ve,88:ye,89:Re,90:_e,91:201,105:ze,109:Ke,111:xt,114:We,115:Oe,116:et},t(_t,[2,101]),t(_t,[2,103]),t(_t,[2,104]),t(_t,[2,157]),t(_t,[2,158]),t(_t,[2,159]),t(_t,[2,160]),t(_t,[2,161]),t(_t,[2,162]),t(_t,[2,163]),t(_t,[2,164]),t(_t,[2,165]),t(_t,[2,166]),t(_t,[2,167]),t(_t,[2,90]),t(_t,[2,91]),t(_t,[2,92]),t(_t,[2,93]),t(_t,[2,94]),t(_t,[2,95]),t(_t,[2,96]),t(_t,[2,97]),t(_t,[2,98]),t(_t,[2,99]),t(_t,[2,100]),{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,202],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:S,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_,121:D,122:O,123:N,124:P},{10:B,18:203},{44:[1,204]},t(ne,[2,43]),{10:[1,205],44:g,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:112,114:R,115:E,116:_},{10:[1,206]},{10:[1,207],106:[1,208]},t(bn,[2,128]),{10:[1,209],44:g,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:112,114:R,115:E,116:_},{10:[1,210],44:g,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:112,114:R,115:E,116:_},{80:[1,211]},t(vt,[2,109],{10:[1,212]}),t(vt,[2,111],{10:[1,213]}),{80:[1,214]},t(Lt,[2,184]),{80:[1,215],98:[1,216]},t(ne,[2,55],{113:112,44:g,60:y,89:w,102:k,105:C,106:A,109:L,111:I,114:R,115:E,116:_}),{31:[1,217],67:dt,82:218,116:wt,117:yt,118:ft},t(Br,[2,86]),t(Br,[2,88]),t(Br,[2,89]),t(Br,[2,153]),t(Br,[2,154]),t(Br,[2,155]),t(Br,[2,156]),{49:[1,219],67:dt,82:218,116:wt,117:yt,118:ft},{30:220,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{51:[1,221],67:dt,82:218,116:wt,117:yt,118:ft},{53:[1,222],67:dt,82:218,116:wt,117:yt,118:ft},{55:[1,223],67:dt,82:218,116:wt,117:yt,118:ft},{57:[1,224],67:dt,82:218,116:wt,117:yt,118:ft},{60:[1,225]},{64:[1,226],67:dt,82:218,116:wt,117:yt,118:ft},{66:[1,227],67:dt,82:218,116:wt,117:yt,118:ft},{30:228,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},{31:[1,229],67:dt,82:218,116:wt,117:yt,118:ft},{67:dt,69:[1,230],71:[1,231],82:218,116:wt,117:yt,118:ft},{67:dt,69:[1,233],71:[1,232],82:218,116:wt,117:yt,118:ft},t(j,[2,45],{18:155,10:B,40:Gt}),t(j,[2,47],{44:lt}),t(pe,[2,75]),t(pe,[2,74]),{62:[1,234],67:dt,82:218,116:wt,117:yt,118:ft},t(pe,[2,77]),t(Ur,[2,80]),{77:[1,235],79:197,116:He,119:Le},{30:236,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},t(Ue,a,{5:237}),t(_t,[2,102]),t(F,[2,35]),{43:238,44:g,45:39,47:40,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},{10:B,18:239},{10:cr,60:ar,84:_r,92:240,105:Ct,107:241,108:242,109:Se,110:at,111:Nt,112:wr},{10:cr,60:ar,84:_r,92:251,104:[1,252],105:Ct,107:241,108:242,109:Se,110:at,111:Nt,112:wr},{10:cr,60:ar,84:_r,92:253,104:[1,254],105:Ct,107:241,108:242,109:Se,110:at,111:Nt,112:wr},{105:[1,255]},{10:cr,60:ar,84:_r,92:256,105:Ct,107:241,108:242,109:Se,110:at,111:Nt,112:wr},{44:g,47:257,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},t(vt,[2,108]),{80:[1,258]},{80:[1,259],98:[1,260]},t(vt,[2,116]),t(vt,[2,118],{10:[1,261]}),t(vt,[2,119]),t(Te,[2,56]),t(Br,[2,87]),t(Te,[2,57]),{51:[1,262],67:dt,82:218,116:wt,117:yt,118:ft},t(Te,[2,64]),t(Te,[2,59]),t(Te,[2,60]),t(Te,[2,61]),{109:[1,263]},t(Te,[2,63]),t(Te,[2,65]),{66:[1,264],67:dt,82:218,116:wt,117:yt,118:ft},t(Te,[2,67]),t(Te,[2,68]),t(Te,[2,70]),t(Te,[2,69]),t(Te,[2,71]),t([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),t(pe,[2,78]),{31:[1,265],67:dt,82:218,116:wt,117:yt,118:ft},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,266],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:S,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_,121:D,122:O,123:N,124:P},t(ne,[2,53]),{43:267,44:g,45:39,47:40,60:y,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_},t(vt,[2,121],{106:Tn}),t(yn,[2,130],{108:269,10:cr,60:ar,84:_r,105:Ct,109:Se,110:at,111:Nt,112:wr}),t(sn,[2,132]),t(sn,[2,134]),t(sn,[2,135]),t(sn,[2,136]),t(sn,[2,137]),t(sn,[2,138]),t(sn,[2,139]),t(sn,[2,140]),t(sn,[2,141]),t(vt,[2,122],{106:Tn}),{10:[1,270]},t(vt,[2,123],{106:Tn}),{10:[1,271]},t(bn,[2,129]),t(vt,[2,105],{106:Tn}),t(vt,[2,106],{113:112,44:g,60:y,89:w,102:k,105:C,106:A,109:L,111:I,114:R,115:E,116:_}),t(vt,[2,110]),t(vt,[2,112],{10:[1,272]}),t(vt,[2,113]),{98:[1,273]},{51:[1,274]},{62:[1,275]},{66:[1,276]},{8:V,9:$,11:U,21:277},t(F,[2,34]),t(ne,[2,52]),{10:cr,60:ar,84:_r,105:Ct,107:278,108:242,109:Se,110:at,111:Nt,112:wr},t(sn,[2,133]),{14:q,44:oe,60:Q,89:ue,101:279,105:te,106:re,109:J,111:K,114:ae,115:Z,116:de,120:87},{14:q,44:oe,60:Q,89:ue,101:280,105:te,106:re,109:J,111:K,114:ae,115:Z,116:de,120:87},{98:[1,281]},t(vt,[2,120]),t(Te,[2,58]),{30:282,67:dt,80:nt,81:bt,82:171,116:wt,117:yt,118:ft},t(Te,[2,66]),t(Ue,a,{5:283}),t(yn,[2,131],{108:269,10:cr,60:ar,84:_r,105:Ct,109:Se,110:at,111:Nt,112:wr}),t(vt,[2,126],{120:167,10:[1,284],14:q,44:oe,60:Q,89:ue,105:te,106:re,109:J,111:K,114:ae,115:Z,116:de}),t(vt,[2,127],{120:167,10:[1,285],14:q,44:oe,60:Q,89:ue,105:te,106:re,109:J,111:K,114:ae,115:Z,116:de}),t(vt,[2,114]),{31:[1,286],67:dt,82:218,116:wt,117:yt,118:ft},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,287],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:S,89:w,102:k,105:C,106:A,109:L,111:I,113:41,114:R,115:E,116:_,121:D,122:O,123:N,124:P},{10:cr,60:ar,84:_r,92:288,105:Ct,107:241,108:242,109:Se,110:at,111:Nt,112:wr},{10:cr,60:ar,84:_r,92:289,105:Ct,107:241,108:242,109:Se,110:at,111:Nt,112:wr},t(Te,[2,62]),t(F,[2,33]),t(vt,[2,124],{106:Tn}),t(vt,[2,125],{106:Tn})],defaultActions:{},parseError:o(function(it,kt){if(kt.recoverable)this.trace(it);else{var jt=new Error(it);throw jt.hash=kt,jt}},"parseError"),parse:o(function(it){var kt=this,jt=[0],ht=[],Dr=[null],me=[],Yl=this.table,be="",jr=0,U4=0,XC=0,jC=2,Hz=1,H3e=me.slice.call(arguments,1),qi=Object.create(this.lexer),ad={yy:{}};for(var KC in this.yy)Object.prototype.hasOwnProperty.call(this.yy,KC)&&(ad.yy[KC]=this.yy[KC]);qi.setInput(it,ad.yy),ad.yy.lexer=qi,ad.yy.parser=this,typeof qi.yylloc>"u"&&(qi.yylloc={});var QC=qi.yylloc;me.push(QC);var q3e=qi.options&&qi.options.ranges;typeof ad.yy.parseError=="function"?this.parseError=ad.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Gat(Js){jt.length=jt.length-2*Js,Dr.length=Dr.length-Js,me.length=me.length-Js}o(Gat,"popStack");function W3e(){var Js;return Js=ht.pop()||qi.lex()||Hz,typeof Js!="number"&&(Js instanceof Array&&(ht=Js,Js=ht.pop()),Js=kt.symbols_[Js]||Js),Js}o(W3e,"lex");for(var ja,ZC,sd,ko,Vat,JC,g0={},H4,iu,qz,q4;;){if(sd=jt[jt.length-1],this.defaultActions[sd]?ko=this.defaultActions[sd]:((ja===null||typeof ja>"u")&&(ja=W3e()),ko=Yl[sd]&&Yl[sd][ja]),typeof ko>"u"||!ko.length||!ko[0]){var e7="";q4=[];for(H4 in Yl[sd])this.terminals_[H4]&&H4>jC&&q4.push("'"+this.terminals_[H4]+"'");qi.showPosition?e7="Parse error on line "+(jr+1)+`: -`+qi.showPosition()+` -Expecting `+q4.join(", ")+", got '"+(this.terminals_[ja]||ja)+"'":e7="Parse error on line "+(jr+1)+": Unexpected "+(ja==Hz?"end of input":"'"+(this.terminals_[ja]||ja)+"'"),this.parseError(e7,{text:qi.match,token:this.terminals_[ja]||ja,line:qi.yylineno,loc:QC,expected:q4})}if(ko[0]instanceof Array&&ko.length>1)throw new Error("Parse Error: multiple actions possible at state: "+sd+", token: "+ja);switch(ko[0]){case 1:jt.push(ja),Dr.push(qi.yytext),me.push(qi.yylloc),jt.push(ko[1]),ja=null,ZC?(ja=ZC,ZC=null):(U4=qi.yyleng,be=qi.yytext,jr=qi.yylineno,QC=qi.yylloc,XC>0&&XC--);break;case 2:if(iu=this.productions_[ko[1]][1],g0.$=Dr[Dr.length-iu],g0._$={first_line:me[me.length-(iu||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(iu||1)].first_column,last_column:me[me.length-1].last_column},q3e&&(g0._$.range=[me[me.length-(iu||1)].range[0],me[me.length-1].range[1]]),JC=this.performAction.apply(g0,[be,U4,jr,ad.yy,ko[1],Dr,me].concat(H3e)),typeof JC<"u")return JC;iu&&(jt=jt.slice(0,-1*iu*2),Dr=Dr.slice(0,-1*iu),me=me.slice(0,-1*iu)),jt.push(this.productions_[ko[1]][0]),Dr.push(g0.$),me.push(g0._$),qz=Yl[jt[jt.length-2]][jt[jt.length-1]],jt.push(qz);break;case 3:return!0}}return!0},"parse")},Zs=(function(){var fr={EOF:1,parseError:o(function(kt,jt){if(this.yy.parser)this.yy.parser.parseError(kt,jt);else throw new Error(kt)},"parseError"),setInput:o(function(it,kt){return this.yy=kt||this.yy||{},this._input=it,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var it=this._input[0];this.yytext+=it,this.yyleng++,this.offset++,this.match+=it,this.matched+=it;var kt=it.match(/(?:\r\n?|\n).*/g);return kt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),it},"input"),unput:o(function(it){var kt=it.length,jt=it.split(/(?:\r\n?|\n)/g);this._input=it+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-kt),this.offset-=kt;var ht=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),jt.length-1&&(this.yylineno-=jt.length-1);var Dr=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:jt?(jt.length===ht.length?this.yylloc.first_column:0)+ht[ht.length-jt.length].length-jt[0].length:this.yylloc.first_column-kt},this.options.ranges&&(this.yylloc.range=[Dr[0],Dr[0]+this.yyleng-kt]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(it){this.unput(this.match.slice(it))},"less"),pastInput:o(function(){var it=this.matched.substr(0,this.matched.length-this.match.length);return(it.length>20?"...":"")+it.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var it=this.match;return it.length<20&&(it+=this._input.substr(0,20-it.length)),(it.substr(0,20)+(it.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var it=this.pastInput(),kt=new Array(it.length+1).join("-");return it+this.upcomingInput()+` -`+kt+"^"},"showPosition"),test_match:o(function(it,kt){var jt,ht,Dr;if(this.options.backtrack_lexer&&(Dr={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Dr.yylloc.range=this.yylloc.range.slice(0))),ht=it[0].match(/(?:\r\n?|\n).*/g),ht&&(this.yylineno+=ht.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ht?ht[ht.length-1].length-ht[ht.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+it[0].length},this.yytext+=it[0],this.match+=it[0],this.matches=it,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(it[0].length),this.matched+=it[0],jt=this.performAction.call(this,this.yy,this,kt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),jt)return jt;if(this._backtrack){for(var me in Dr)this[me]=Dr[me];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var it,kt,jt,ht;this._more||(this.yytext="",this.match="");for(var Dr=this._currentRules(),me=0;mekt[0].length)){if(kt=jt,ht=me,this.options.backtrack_lexer){if(it=this.test_match(jt,Dr[me]),it!==!1)return it;if(this._backtrack){kt=!1;continue}else return!1}else if(!this.options.flex)break}return kt?(it=this.test_match(kt,Dr[ht]),it!==!1?it:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var kt=this.next();return kt||this.lex()},"lex"),begin:o(function(kt){this.conditionStack.push(kt)},"begin"),popState:o(function(){var kt=this.conditionStack.length-1;return kt>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(kt){return kt=this.conditionStack.length-1-Math.abs(kt||0),kt>=0?this.conditionStack[kt]:"INITIAL"},"topState"),pushState:o(function(kt){this.begin(kt)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(kt,jt,ht,Dr){var me=Dr;switch(ht){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),jt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let Yl=/\n\s*/g;return jt.yytext=jt.yytext.replace(Yl,"
    "),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return kt.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return kt.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return kt.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 98;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 78;case 60:return 105;case 61:return 111;case 62:return 46;case 63:return 60;case 64:return 44;case 65:return 8;case 66:return 106;case 67:return 115;case 68:return this.popState(),77;break;case 69:return this.pushState("edgeText"),75;break;case 70:return 119;case 71:return this.popState(),77;break;case 72:return this.pushState("thickEdgeText"),75;break;case 73:return 119;case 74:return this.popState(),77;break;case 75:return this.pushState("dottedEdgeText"),75;break;case 76:return 119;case 77:return 77;case 78:return this.popState(),53;break;case 79:return"TEXT";case 80:return this.pushState("ellipseText"),52;break;case 81:return this.popState(),55;break;case 82:return this.pushState("text"),54;break;case 83:return this.popState(),57;break;case 84:return this.pushState("text"),56;break;case 85:return 58;case 86:return this.pushState("text"),67;break;case 87:return this.popState(),64;break;case 88:return this.pushState("text"),63;break;case 89:return this.popState(),49;break;case 90:return this.pushState("text"),48;break;case 91:return this.popState(),69;break;case 92:return this.popState(),71;break;case 93:return 117;case 94:return this.pushState("trapText"),68;break;case 95:return this.pushState("trapText"),70;break;case 96:return 118;case 97:return 67;case 98:return 90;case 99:return"SEP";case 100:return 89;case 101:return 115;case 102:return 111;case 103:return 44;case 104:return 109;case 105:return 114;case 106:return 116;case 107:return this.popState(),62;break;case 108:return this.pushState("text"),62;break;case 109:return this.popState(),51;break;case 110:return this.pushState("text"),50;break;case 111:return this.popState(),31;break;case 112:return this.pushState("text"),29;break;case 113:return this.popState(),66;break;case 114:return this.pushState("text"),65;break;case 115:return"TEXT";case 116:return"QUOTE";case 117:return 9;case 118:return 10;case 119:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeData:{rules:[8,11,12,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackargs:{rules:[17,18,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackname:{rules:[14,15,16,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},href:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},click:{rules:[21,24,33,34,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dottedEdgeText:{rules:[21,24,74,76,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},thickEdgeText:{rules:[21,24,71,73,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},edgeText:{rules:[21,24,68,70,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},trapText:{rules:[21,24,77,80,82,84,88,90,91,92,93,94,95,108,110,112,114],inclusive:!1},ellipseText:{rules:[21,24,77,78,79,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},text:{rules:[21,24,77,80,81,82,83,84,87,88,89,90,94,95,107,108,109,110,111,112,113,114,115],inclusive:!1},vertex:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr:{rules:[3,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_title:{rules:[1,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},md_string:{rules:[19,20,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},string:{rules:[21,22,23,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,72,74,75,77,80,82,84,85,86,88,90,94,95,96,97,98,99,100,101,102,103,104,105,106,108,110,112,114,116,117,118,119],inclusive:!0}}};return fr})();Hi.lexer=Zs;function Da(){this.yy={}}return o(Da,"Parser"),Da.prototype=Hi,Hi.Parser=Da,new Da})();GI.parser=GI;VI=GI});var mfe,gfe,yfe=M(()=>{"use strict";pfe();mfe=Object.assign({},VI);mfe.parse=t=>{let e=t.replace(/}\s*\n/g,`} -`);return VI.parse(e)};gfe=mfe});var zc,yg=M(()=>{"use strict";zc=o(()=>` + `),l=fZe(n,i,s);l.aPosition=n.getAttribLocation(l,"aPosition"),l.aIndex=n.getAttribLocation(l,"aIndex"),l.aVertType=n.getAttribLocation(l,"aVertType"),l.aTransform=n.getAttribLocation(l,"aTransform"),l.aAtlasId=n.getAttribLocation(l,"aAtlasId"),l.aTex=n.getAttribLocation(l,"aTex"),l.aPointAPointB=n.getAttribLocation(l,"aPointAPointB"),l.aPointCPointD=n.getAttribLocation(l,"aPointCPointD"),l.aLineWidth=n.getAttribLocation(l,"aLineWidth"),l.aColor=n.getAttribLocation(l,"aColor"),l.aCornerRadius=n.getAttribLocation(l,"aCornerRadius"),l.aBorderColor=n.getAttribLocation(l,"aBorderColor"),l.uPanZoomMatrix=n.getUniformLocation(l,"uPanZoomMatrix"),l.uAtlasSize=n.getUniformLocation(l,"uAtlasSize"),l.uBGColor=n.getUniformLocation(l,"uBGColor"),l.uZoom=n.getUniformLocation(l,"uZoom"),l.uTextures=[];for(var u=0;u1&&arguments[1]!==void 0?arguments[1]:Ab.SCREEN;this.panZoomMatrix=r,this.renderTarget=n,this.batchDebugInfo=[],this.wrappedCount=0,this.simpleCount=0,this.startBatch()},"startFrame")},{key:"startBatch",value:o(function(){this.instanceCount=0,this.batchManager.startBatch()},"startBatch")},{key:"endFrame",value:o(function(){this.endBatch()},"endFrame")},{key:"_isVisible",value:o(function(r,n){return r.visible()?n&&n.isVisible?n.isVisible(r):!0:!1},"_isVisible")},{key:"drawTexture",value:o(function(r,n,i){var a=this.atlasManager,s=this.batchManager,l=a.getRenderTypeOpts(i);if(this._isVisible(r,l)&&!(r.isEdge()&&!this._isValidEdge(r))){if(this.renderTarget.picking&&l.getTexPickingMode){var u=l.getTexPickingMode(r);if(u===UE.IGNORE)return;if(u==UE.USE_BB){this.drawPickingRectangle(r,n,i);return}}var h=a.getAtlasInfo(r,i),f=po(h),d;try{for(f.s();!(d=f.n()).done;){var p=d.value,m=p.atlas,g=p.tex1,y=p.tex2;s.canAddToCurrentBatch(m)||this.endBatch();for(var v=s.getAtlasIndexForBatch(m),x=0,b=[[g,!0],[y,!1]];x=this.maxInstances&&this.endBatch()}}}}catch(L){f.e(L)}finally{f.f()}}},"drawTexture")},{key:"setTransformMatrix",value:o(function(r,n,i,a){var s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,l=0;if(i.shapeProps&&i.shapeProps.padding&&(l=r.pstyle(i.shapeProps.padding).pfValue),a){var u=a.bb,h=a.tex1,f=a.tex2,d=h.w/(h.w+f.w);s||(d=1-d);var p=this._getAdjustedBB(u,l,s,d);this._applyTransformMatrix(n,p,i,r)}else{var m=i.getBoundingBox(r),g=this._getAdjustedBB(m,l,!0,1);this._applyTransformMatrix(n,g,i,r)}},"setTransformMatrix")},{key:"_applyTransformMatrix",value:o(function(r,n,i,a){var s,l;zpe(r);var u=i.getRotation?i.getRotation(a):0;if(u!==0){var h=i.getRotationPoint(a),f=h.x,d=h.y;LE(r,r,[f,d]),Gpe(r,r,u);var p=i.getRotationOffset(a);s=p.x+(n.xOffset||0),l=p.y+(n.yOffset||0)}else s=n.x1,l=n.y1;LE(r,r,[s,l]),IP(r,r,[n.w,n.h])},"_applyTransformMatrix")},{key:"_getAdjustedBB",value:o(function(r,n,i,a){var s=r.x1,l=r.y1,u=r.w,h=r.h,f=r.yOffset;n&&(s-=n,l-=n,u+=2*n,h+=2*n);var d=0,p=u*a;return i&&a<1?u=p:!i&&a<1&&(d=u-p,s+=d,u=p),{x1:s,y1:l,w:u,h,xOffset:d,yOffset:f}},"_getAdjustedBB")},{key:"drawPickingRectangle",value:o(function(r,n,i){var a=this.atlasManager.getRenderTypeOpts(i),s=this.instanceCount;this.vertTypeBuffer.getView(s)[0]=P1;var l=this.indexBuffer.getView(s);O1(n,l);var u=this.colorBuffer.getView(s);R0([0,0,0],1,u);var h=this.transformBuffer.getMatrixView(s);this.setTransformMatrix(r,h,a),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()},"drawPickingRectangle")},{key:"drawNode",value:o(function(r,n,i){var a=this.simpleShapeOptions.get(i);if(this._isVisible(r,a)){var s=a.shapeProps,l=this._getVertTypeForShape(r,s.shape);if(l===void 0||a.isSimple&&!a.isSimple(r)){this.drawTexture(r,n,i);return}var u=this.instanceCount;if(this.vertTypeBuffer.getView(u)[0]=l,l===bE||l===bb){var h=a.getBoundingBox(r),f=this._getCornerRadius(r,s.radius,h),d=this.cornerRadiusBuffer.getView(u);d[0]=f,d[1]=f,d[2]=f,d[3]=f,l===bb&&(d[0]=0,d[2]=0)}var p=this.indexBuffer.getView(u);O1(n,p);var m=r.pstyle(s.color).value,g=r.pstyle(s.opacity).value,y=this.colorBuffer.getView(u);R0(m,g,y);var v=this.lineWidthBuffer.getView(u);if(v[0]=0,v[1]=0,s.border){var x=r.pstyle("border-width").value;if(x>0){var b=r.pstyle("border-color").value,T=r.pstyle("border-opacity").value,E=this.borderColorBuffer.getView(u);R0(b,T,E);var w=r.pstyle("border-position").value;if(w==="inside")v[0]=0,v[1]=-x;else if(w==="outside")v[0]=x,v[1]=0;else{var k=x/2;v[0]=k,v[1]=-k}}}var C=this.transformBuffer.getMatrixView(u);this.setTransformMatrix(r,C,a),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}},"drawNode")},{key:"_getVertTypeForShape",value:o(function(r,n){var i=r.pstyle(n).value;switch(i){case"rectangle":return P1;case"ellipse":return Tb;case"roundrectangle":case"round-rectangle":return bE;case"bottom-round-rectangle":return bb;default:return}},"_getVertTypeForShape")},{key:"_getCornerRadius",value:o(function(r,n,i){var a=i.w,s=i.h;if(r.pstyle(n).value==="auto")return yd(a,s);var l=r.pstyle(n).pfValue,u=a/2,h=s/2;return Math.min(l,h,u)},"_getCornerRadius")},{key:"drawEdgeArrow",value:o(function(r,n,i){if(r.visible()){var a=r._private.rscratch,s,l,u;if(i==="source"?(s=a.arrowStartX,l=a.arrowStartY,u=a.srcArrowAngle):(s=a.arrowEndX,l=a.arrowEndY,u=a.tgtArrowAngle),!(isNaN(s)||s==null||isNaN(l)||l==null||isNaN(u)||u==null)){var h=r.pstyle(i+"-arrow-shape").value;if(h!=="none"){var f=r.pstyle(i+"-arrow-color").value,d=r.pstyle("opacity").value,p=r.pstyle("line-opacity").value,m=d*p,g=r.pstyle("width").pfValue,y=r.pstyle("arrow-scale").value,v=this.r.getArrowWidth(g,y),x=this.instanceCount,b=this.transformBuffer.getMatrixView(x);zpe(b),LE(b,b,[s,l]),IP(b,b,[v,v]),Gpe(b,b,u),this.vertTypeBuffer.getView(x)[0]=pP;var T=this.indexBuffer.getView(x);O1(n,T);var E=this.colorBuffer.getView(x);R0(f,m,E),this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}}},"drawEdgeArrow")},{key:"drawEdgeLine",value:o(function(r,n){if(r.visible()){var i=this._getEdgePoints(r);if(i){var a=r.pstyle("opacity").value,s=r.pstyle("line-opacity").value,l=r.pstyle("width").pfValue,u=r.pstyle("line-color").value,h=a*s;if(i.length/2+this.instanceCount>this.maxInstances&&this.endBatch(),i.length==4){var f=this.instanceCount;this.vertTypeBuffer.getView(f)[0]=Vpe;var d=this.indexBuffer.getView(f);O1(n,d);var p=this.colorBuffer.getView(f);R0(u,h,p);var m=this.lineWidthBuffer.getView(f);m[0]=l;var g=this.pointAPointBBuffer.getView(f);g[0]=i[0],g[1]=i[1],g[2]=i[2],g[3]=i[3],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}else for(var y=0;y=this.maxInstances&&this.endBatch()}}}},"drawEdgeLine")},{key:"_isValidEdge",value:o(function(r){var n=r._private.rscratch;return!(n.badLine||n.allpts==null||isNaN(n.allpts[0]))},"_isValidEdge")},{key:"_getEdgePoints",value:o(function(r){var n=r._private.rscratch;if(this._isValidEdge(r)){var i=n.allpts;if(i.length==4)return i;var a=this._getNumSegments(r);return this._getCurveSegmentPoints(i,a)}},"_getEdgePoints")},{key:"_getNumSegments",value:o(function(r){var n=15;return Math.min(Math.max(n,5),this.maxInstances)},"_getNumSegments")},{key:"_getCurveSegmentPoints",value:o(function(r,n){if(r.length==4)return r;for(var i=Array((n+1)*2),a=0;a<=n;a++)if(a==0)i[0]=r[0],i[1]=r[1];else if(a==n)i[a*2]=r[r.length-2],i[a*2+1]=r[r.length-1];else{var s=a/n;this._setCurvePoint(r,s,i,a*2)}return i},"_getCurveSegmentPoints")},{key:"_setCurvePoint",value:o(function(r,n,i,a){if(r.length<=2)i[a]=r[0],i[a+1]=r[1];else{for(var s=Array(r.length-2),l=0;l0}},"isLayerVisible"),l=o(function(d){var p=d.pstyle("text-events").strValue==="yes";return p?UE.USE_BB:UE.IGNORE},"getTexPickingMode"),u=o(function(d){var p=d.position(),m=p.x,g=p.y,y=d.outerWidth(),v=d.outerHeight();return{w:y,h:v,x1:m-y/2,y1:g-v/2}},"getBBForSimpleShape");r.drawing.addAtlasCollection("node",{texRows:t.webglTexRowsNodes}),r.drawing.addAtlasCollection("label",{texRows:t.webglTexRows}),r.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:e.getStyleKey,getBoundingBox:e.getElementBox,drawElement:e.drawElement}),r.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:u,isSimple:gZe,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),r.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:u,isVisible:s("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),r.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:u,isVisible:s("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),r.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:l,getKey:mP(e.getLabelKey,null),getBoundingBox:gP(e.getLabelBox,null),drawClipped:!0,drawElement:e.drawLabel,getRotation:i(null),getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:a("label")}),r.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:l,getKey:mP(e.getSourceLabelKey,"source"),getBoundingBox:gP(e.getSourceLabelBox,"source"),drawClipped:!0,drawElement:e.drawSourceLabel,getRotation:i("source"),getRotationPoint:e.getSourceLabelRotationPoint,getRotationOffset:e.getSourceLabelRotationOffset,isVisible:a("source-label")}),r.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:l,getKey:mP(e.getTargetLabelKey,"target"),getBoundingBox:gP(e.getTargetLabelBox,"target"),drawClipped:!0,drawElement:e.drawTargetLabel,getRotation:i("target"),getRotationPoint:e.getTargetLabelRotationPoint,getRotationOffset:e.getTargetLabelRotationOffset,isVisible:a("target-label")});var h=qb(function(){console.log("garbage collect flag set"),r.data.gc=!0},1e4);r.onUpdateEleCalcs(function(f,d){var p=!1;d&&d.length>0&&(p|=r.drawing.invalidate(d)),p&&h()}),BZe(r)};o(PZe,"getBGColor");o(Ame,"getLabelLines");mP=o(function(e,r){return function(n){var i=e(n),a=Ame(n,r);return a.length>1?a.map(function(s,l){return"".concat(i,"_").concat(l)}):i}},"getStyleKeysForLabel"),gP=o(function(e,r){return function(n,i){var a=e(n);if(typeof i=="string"){var s=i.indexOf("_");if(s>0){var l=Number(i.substring(s+1)),u=Ame(n,r),h=a.h/u.length,f=h*l,d=a.y1+f;return{x1:a.x1,w:a.w,y1:d,h,yOffset:f}}}return a}},"getBoundingBoxForLabel");o(BZe,"overrideCanvasRendererFunctions");o(FZe,"clearWebgl");o($Ze,"clearCanvas");o(zZe,"createPanZoomMatrix");o(_me,"setContextTransform");o(GZe,"drawSelectionRectangle");o(VZe,"drawAxes");o(qZe,"drawAtlases");o(UZe,"getPickingIndexes");o(WZe,"findNearestElementsWebgl");o(yP,"drawEle");o(Dme,"renderWebgl");Ed={};Ed.drawPolygonPath=function(t,e,r,n,i,a){var s=n/2,l=i/2;t.beginPath&&t.beginPath(),t.moveTo(e+s*a[0],r+l*a[1]);for(var u=1;u0&&s>0){m.clearRect(0,0,a,s),m.globalCompositeOperation="source-over";var g=this.getCachedZSortedEles();if(t.full)m.translate(-n.x1*h,-n.y1*h),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(n.x1*h,n.y1*h);else{var y=e.pan(),v={x:y.x*h,y:y.y*h};h*=e.zoom(),m.translate(v.x,v.y),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(-v.x,-v.y)}t.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=t.bg,m.rect(0,0,a,s),m.fill())}return p};o(HZe,"b64ToBlob");o(Hpe,"b64UriToB64");o(Lme,"output");Xb.png=function(t){return Lme(t,this.bufferCanvasImage(t),"image/png")};Xb.jpg=function(t){return Lme(t,this.bufferCanvasImage(t),"image/jpeg")};Nme={};Nme.nodeShapeImpl=function(t,e,r,n,i,a,s,l){switch(t){case"ellipse":return this.drawEllipsePath(e,r,n,i,a);case"polygon":return this.drawPolygonPath(e,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(e,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,r,n,i,a,l);case"barrel":return this.drawBarrelPath(e,r,n,i,a)}};YZe=Mme,Ir=Mme.prototype;Ir.CANVAS_LAYERS=3;Ir.SELECT_BOX=0;Ir.DRAG=1;Ir.NODE=2;Ir.WEBGL=3;Ir.CANVAS_TYPES=["2d","2d","2d","webgl2"];Ir.BUFFER_COUNT=3;Ir.TEXTURE_BUFFER=0;Ir.MOTIONBLUR_BUFFER_NODE=1;Ir.MOTIONBLUR_BUFFER_DRAG=2;o(Mme,"CanvasRenderer");Ir.redrawHint=function(t,e){var r=this;switch(t){case"eles":r.data.canvasNeedsRedraw[Ir.NODE]=e;break;case"drag":r.data.canvasNeedsRedraw[Ir.DRAG]=e;break;case"select":r.data.canvasNeedsRedraw[Ir.SELECT_BOX]=e;break;case"gc":r.data.gc=!0;break}};jZe=typeof Path2D<"u";Ir.path2dEnabled=function(t){if(t===void 0)return this.pathsEnabled;this.pathsEnabled=!!t};Ir.usePaths=function(){return jZe&&this.pathsEnabled};Ir.setImgSmoothing=function(t,e){t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled=e:(t.webkitImageSmoothingEnabled=e,t.mozImageSmoothingEnabled=e,t.msImageSmoothingEnabled=e)};Ir.getImgSmoothing=function(t){return t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled:t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled};Ir.makeOffscreenCanvas=function(t,e){var r;if((typeof OffscreenCanvas>"u"?"undefined":ea(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(t,e);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=t,r.height=e}return r};[Tme,wu,Mh,oB,q0,Sd,Ns,Cme,Ed,Xb,Nme].forEach(function(t){cr(Ir,t)});XZe=[{name:"null",impl:ome},{name:"base",impl:yme},{name:"canvas",impl:YZe}],KZe=[{type:"layout",extensions:TQe},{type:"renderer",extensions:XZe}],Ime={},Ome={};o(Pme,"setExtension");o(Bme,"getExtension");o(QZe,"setModule");o(ZZe,"getModule");BP=o(function(){if(arguments.length===2)return Bme.apply(null,arguments);if(arguments.length===3)return Pme.apply(null,arguments);if(arguments.length===4)return ZZe.apply(null,arguments);if(arguments.length===5)return QZe.apply(null,arguments);si("Invalid extension access syntax")},"extension");Pb.prototype.extension=BP;KZe.forEach(function(t){t.extensions.forEach(function(e){Pme(t.type,e.name,e.impl)})});WE=o(function(){if(!(this instanceof WE))return new WE;this.length=0},"Stylesheet"),G0=WE.prototype;G0.instanceString=function(){return"stylesheet"};G0.selector=function(t){var e=this.length++;return this[e]={selector:t,properties:[]},this};G0.css=function(t,e){var r=this.length-1;if(nr(t))this[r].properties.push({name:t,value:e});else if(rn(t))for(var n=t,i=Object.keys(n),a=0;a{"use strict";o((function(e,r){typeof Kb=="object"&&typeof uB=="object"?uB.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Kb=="object"?Kb.layoutBase=r():e.layoutBase=r()}),"webpackUniversalModuleDefinition")(Kb,function(){return(function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=26)})([(function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s}),(function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(4);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp&&(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)),this.labelHeight>m&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-m)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-m),this.setHeight(this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h}),(function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(6),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,T=0;T-1&&k>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(w,1),x.target!=x.source&&x.target.edges.splice(k,1);var E=x.source.owner.getEdges().indexOf(x);if(E==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(E,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,T=this.getNodes(),E=T.length,w=0;wv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(T[0].getParent().paddingLeft!=null?b=T[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,T,E,w,k,C,D=this.nodes,R=D.length,O=0;OT&&(y=T),vw&&(x=w),bT&&(y=T),vw&&(x=w),b=this.nodes.length){var R=0;v.forEach(function(O){O.owner==g&&R++}),R==this.nodes.length&&(this.isConnected=!0)}},t.exports=p}),(function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(5),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=D,!1;if(hf)return l[0]=p,l[1]=h,l[2]=k,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,S=!0):(l[0]=g,l[1]=m,S=!0):_===M&&(u>f?(l[0]=p,l[1]=m,S=!0):(l[0]=x,l[1]=v,S=!0)),-N===M?f>u?(l[2]=C,l[3]=D,A=!0):(l[2]=k,l[3]=w,A=!0):N===M&&(f>u?(l[2]=E,l[3]=w,A=!0):(l[2]=R,l[3]=D,A=!0)),S&&A)return!1;if(u>f?h>d?(P=this.getCardinalDirection(_,M,4),B=this.getCardinalDirection(N,M,2)):(P=this.getCardinalDirection(-_,M,3),B=this.getCardinalDirection(-N,M,1)):h>d?(P=this.getCardinalDirection(-_,M,1),B=this.getCardinalDirection(-N,M,3)):(P=this.getCardinalDirection(_,M,2),B=this.getCardinalDirection(N,M,4)),!S)switch(P){case 1:G=m,F=u+-T/M,l[0]=F,l[1]=G;break;case 2:F=x,G=h+b*M,l[0]=F,l[1]=G;break;case 3:G=v,F=u+T/M,l[0]=F,l[1]=G;break;case 4:F=y,G=h+-b*M,l[0]=F,l[1]=G;break}if(!A)switch(B){case 1:V=w,$=f+-L/M,l[2]=$,l[3]=V;break;case 2:$=R,V=d+O*M,l[2]=$,l[3]=V;break;case 3:V=D,$=f+L/M,l[2]=$,l[3]=V;break;case 4:$=C,V=d+-O*M,l[2]=$,l[3]=V;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,T=void 0,E=void 0,w=void 0,k=void 0,C=void 0,D=void 0,R=void 0;return T=p-f,w=h-d,C=d*f-h*p,E=v-g,k=m-y,D=y*g-m*v,R=T*k-E*w,R===0?null:(x=(w*D-k*C)/R,b=(E*C-T*D)/R,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n}),(function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n}),(function(t,e,r){"use strict";var n=(function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i}),(function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(T.push(w[0]);T.length>0&&g;){var k=T[0];T.splice(0,1),b.add(k);for(var C=k.getEdges(),x=0;x-1&&w.splice(L,1)}b=new Set,E=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(D,1);var R=E.getNeighborsList();R.forEach(function(S){if(y.indexOf(S)<0){var A=v.get(S),_=A-1;_==1&&k.push(S),v.set(S,_)}})}y=y.concat(k),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p}),(function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n}),(function(t,e,r){"use strict";var n=r(4);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i}),(function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mT||b>T)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(T=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||T>=x[0].length)){for(var E=0;Eh},"_defaultCompareFunction")}]),l})();t.exports=s}),(function(t,e,r){"use strict";var n=(function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o((function(e,r){typeof Qb=="object"&&typeof fB=="object"?fB.exports=r(hB()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Qb=="object"?Qb.coseBase=r(hB()):e.coseBase=r(e.layoutBase)}),"webpackUniversalModuleDefinition")(Qb,function(t){return(function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=7)})([(function(e,r){e.exports=t}),(function(e,r,n){"use strict";var i=n(0).FDLayoutConstants;function a(){}o(a,"CoSEConstants");for(var s in i)a[s]=i[s];a.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,a.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,a.DEFAULT_COMPONENT_SEPERATION=60,a.TILE=!0,a.TILING_PADDING_VERTICAL=10,a.TILING_PADDING_HORIZONTAL=10,a.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=a}),(function(e,r,n){"use strict";var i=n(0).FDLayoutEdge;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEEdge"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a}),(function(e,r,n){"use strict";var i=n(0).LGraph;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEGraph"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a}),(function(e,r,n){"use strict";var i=n(0).LGraphManager;function a(l){i.call(this,l)}o(a,"CoSEGraphManager"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a}),(function(e,r,n){"use strict";var i=n(0).FDLayoutNode,a=n(0).IMath;function s(u,h,f,d){i.call(this,u,h,f,d)}o(s,"CoSENode"),s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.move=function(){var u=this.graphManager.getLayout();this.displacementX=u.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=u.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementX=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementX)),Math.abs(this.displacementY)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementY=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),u.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},s.prototype.propogateDisplacementToChildren=function(u,h){for(var f=this.getChild().getNodes(),d,p=0;p0)this.positionNodesRadially(w);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var k=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(D){return k.has(D)});this.graphManager.setAllNodesToApplyGravitation(C),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},T.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%f.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var w=new Set(this.getAllNodes()),k=this.nodesWithGravity.filter(function(R){return w.has(R)});this.graphManager.setAllNodesToApplyGravitation(k),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var C=!this.isTreeGrowing&&!this.isGrowthFinished,D=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(C,D),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},T.prototype.getPositionsData=function(){for(var w=this.graphManager.getAllNodes(),k={},C=0;C1){var S;for(S=0;SD&&(D=Math.floor(L.y)),O=Math.floor(L.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-L.x/2,d.WORLD_CENTER_Y-L.y/2))},T.radialLayout=function(w,k,C){var D=Math.max(this.maxDiagonalInTree(w),h.DEFAULT_RADIAL_SEPARATION);T.branchRadialLayout(k,null,0,359,0,D);var R=x.calculateBounds(w),O=new b;O.setDeviceOrgX(R.getMinX()),O.setDeviceOrgY(R.getMinY()),O.setWorldOrgX(C.x),O.setWorldOrgY(C.y);for(var L=0;L1;){var K=V[0];V.splice(0,1);var ee=P.indexOf(K);ee>=0&&P.splice(ee,1),G--,B--}k!=null?$=(P.indexOf(V[0])+1)%G:$=0;for(var H=Math.abs(D-C)/B,he=$;F!=B;he=++he%G){var Z=P[he].getOtherEnd(w);if(Z!=k){var de=(C+F*H)%360,re=(de+H)%360;T.branchRadialLayout(Z,w,de,re,R+O,O),F++}}},T.maxDiagonalInTree=function(w){for(var k=y.MIN_VALUE,C=0;Ck&&(k=R)}return k},T.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},T.prototype.groupZeroDegreeMembers=function(){var w=this,k={};this.memberGroups={},this.idToDummyNode={};for(var C=[],D=this.graphManager.getAllNodes(),R=0;R"u"&&(k[S]=[]),k[S]=k[S].concat(O)}Object.keys(k).forEach(function(A){if(k[A].length>1){var _="DummyCompound_"+A;w.memberGroups[_]=k[A];var N=k[A][0].getParent(),M=new l(w.graphManager);M.id=_,M.paddingLeft=N.paddingLeft||0,M.paddingRight=N.paddingRight||0,M.paddingBottom=N.paddingBottom||0,M.paddingTop=N.paddingTop||0,w.idToDummyNode[_]=M;var P=w.getGraphManager().add(w.newGraph(),M),B=N.getChild();B.add(M);for(var F=0;F=0;w--){var k=this.compoundOrder[w],C=k.id,D=k.paddingLeft,R=k.paddingTop;this.adjustLocations(this.tiledMemberPack[C],k.rect.x,k.rect.y,D,R)}},T.prototype.repopulateZeroDegreeMembers=function(){var w=this,k=this.tiledZeroDegreePack;Object.keys(k).forEach(function(C){var D=w.idToDummyNode[C],R=D.paddingLeft,O=D.paddingTop;w.adjustLocations(k[C],D.rect.x,D.rect.y,R,O)})},T.prototype.getToBeTiled=function(w){var k=w.id;if(this.toBeTiled[k]!=null)return this.toBeTiled[k];var C=w.getChild();if(C==null)return this.toBeTiled[k]=!1,!1;for(var D=C.getNodes(),R=0;R0)return this.toBeTiled[k]=!1,!1;if(O.getChild()==null){this.toBeTiled[O.id]=!1;continue}if(!this.getToBeTiled(O))return this.toBeTiled[k]=!1,!1}return this.toBeTiled[k]=!0,!0},T.prototype.getNodeDegree=function(w){for(var k=w.id,C=w.getEdges(),D=0,R=0;RA&&(A=N.rect.height)}C+=A+w.verticalPadding}},T.prototype.tileCompoundMembers=function(w,k){var C=this;this.tiledMemberPack=[],Object.keys(w).forEach(function(D){var R=k[D];C.tiledMemberPack[D]=C.tileNodes(w[D],R.paddingLeft+R.paddingRight),R.rect.width=C.tiledMemberPack[D].width,R.rect.height=C.tiledMemberPack[D].height})},T.prototype.tileNodes=function(w,k){var C=h.TILING_PADDING_VERTICAL,D=h.TILING_PADDING_HORIZONTAL,R={rows:[],rowWidth:[],rowHeight:[],width:0,height:k,verticalPadding:C,horizontalPadding:D};w.sort(function(S,A){return S.rect.width*S.rect.height>A.rect.width*A.rect.height?-1:S.rect.width*S.rect.height0&&(L+=w.horizontalPadding),w.rowWidth[C]=L,w.width0&&(S+=w.verticalPadding);var A=0;S>w.rowHeight[C]&&(A=w.rowHeight[C],w.rowHeight[C]=S,A=w.rowHeight[C]-A),w.height+=A,w.rows[C].push(k)},T.prototype.getShortestRowIndex=function(w){for(var k=-1,C=Number.MAX_VALUE,D=0;DC&&(k=D,C=w.rowWidth[D]);return k},T.prototype.canAddHorizontal=function(w,k,C){var D=this.getShortestRowIndex(w);if(D<0)return!0;var R=w.rowWidth[D];if(R+w.horizontalPadding+k<=w.width)return!0;var O=0;w.rowHeight[D]0&&(O=C+w.verticalPadding-w.rowHeight[D]);var L;w.width-R>=k+w.horizontalPadding?L=(w.height+O)/(R+k+w.horizontalPadding):L=(w.height+O)/w.width,O=C+w.verticalPadding;var S;return w.widthO&&k!=C){D.splice(-1,1),w.rows[C].push(R),w.rowWidth[k]=w.rowWidth[k]-O,w.rowWidth[C]=w.rowWidth[C]+O,w.width=w.rowWidth[instance.getLongestRowIndex(w)];for(var L=Number.MIN_VALUE,S=0;SL&&(L=D[S].height);k>0&&(L+=w.verticalPadding);var A=w.rowHeight[k]+w.rowHeight[C];w.rowHeight[k]=L,w.rowHeight[C]0)for(var B=R;B<=O;B++)P[0]+=this.grid[B][L-1].length+this.grid[B][L].length-1;if(O0)for(var B=L;B<=S;B++)P[3]+=this.grid[R-1][B].length+this.grid[R][B].length-1;for(var F=y.MAX_VALUE,G,$,V=0;V{"use strict";o((function(e,r){typeof Zb=="object"&&typeof pB=="object"?pB.exports=r(dB()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Zb=="object"?Zb.cytoscapeCoseBilkent=r(dB()):e.cytoscapeCoseBilkent=r(e.coseBase)}),"webpackUniversalModuleDefinition")(Zb,function(t){return(function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=1)})([(function(e,r){e.exports=t}),(function(e,r,n){"use strict";var i=n(0).layoutBase.LayoutConstants,a=n(0).layoutBase.FDLayoutConstants,s=n(0).CoSEConstants,l=n(0).CoSELayout,u=n(0).CoSENode,h=n(0).layoutBase.PointD,f=n(0).layoutBase.DimensionD,d={ready:o(function(){},"ready"),stop:o(function(){},"stop"),quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:.45,nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.5};function p(v,x){var b={};for(var T in v)b[T]=v[T];for(var T in x)b[T]=x[T];return b}o(p,"extend");function m(v){this.options=p(d,v),g(this.options)}o(m,"_CoSELayout");var g=o(function(x){x.nodeRepulsion!=null&&(s.DEFAULT_REPULSION_STRENGTH=a.DEFAULT_REPULSION_STRENGTH=x.nodeRepulsion),x.idealEdgeLength!=null&&(s.DEFAULT_EDGE_LENGTH=a.DEFAULT_EDGE_LENGTH=x.idealEdgeLength),x.edgeElasticity!=null&&(s.DEFAULT_SPRING_STRENGTH=a.DEFAULT_SPRING_STRENGTH=x.edgeElasticity),x.nestingFactor!=null&&(s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=x.nestingFactor),x.gravity!=null&&(s.DEFAULT_GRAVITY_STRENGTH=a.DEFAULT_GRAVITY_STRENGTH=x.gravity),x.numIter!=null&&(s.MAX_ITERATIONS=a.MAX_ITERATIONS=x.numIter),x.gravityRange!=null&&(s.DEFAULT_GRAVITY_RANGE_FACTOR=a.DEFAULT_GRAVITY_RANGE_FACTOR=x.gravityRange),x.gravityCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_STRENGTH=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=x.gravityCompound),x.gravityRangeCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=x.gravityRangeCompound),x.initialEnergyOnIncremental!=null&&(s.DEFAULT_COOLING_FACTOR_INCREMENTAL=a.DEFAULT_COOLING_FACTOR_INCREMENTAL=x.initialEnergyOnIncremental),x.quality=="draft"?i.QUALITY=0:x.quality=="proof"?i.QUALITY=2:i.QUALITY=1,s.NODE_DIMENSIONS_INCLUDE_LABELS=a.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=x.nodeDimensionsIncludeLabels,s.DEFAULT_INCREMENTAL=a.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!x.randomize,s.ANIMATE=a.ANIMATE=i.ANIMATE=x.animate,s.TILE=x.tile,s.TILING_PADDING_VERTICAL=typeof x.tilingPaddingVertical=="function"?x.tilingPaddingVertical.call():x.tilingPaddingVertical,s.TILING_PADDING_HORIZONTAL=typeof x.tilingPaddingHorizontal=="function"?x.tilingPaddingHorizontal.call():x.tilingPaddingHorizontal},"getUserOptions");m.prototype.run=function(){var v,x,b=this.options,T=this.idToLNode={},E=this.layout=new l,w=this;w.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var k=E.newGraphManager();this.gm=k;var C=this.options.eles.nodes(),D=this.options.eles.edges();this.root=k.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(C),E);for(var R=0;R0){var S;S=b.getGraphManager().add(b.newGraph(),C),this.processChildrenList(S,k,b)}}},m.prototype.stop=function(){return this.stopped=!0,this};var y=o(function(x){x("layout","cose-bilkent",m)},"register");typeof cytoscape<"u"&&y(cytoscape),e.exports=y})])})});function eJe(t,e){t.forEach(r=>{let n={id:r.id,labelText:r.label,height:r.height,width:r.width,padding:r.padding??0};Object.keys(r).forEach(i=>{["id","label","height","width","padding","x","y"].includes(i)||(n[i]=r[i])}),e.add({group:"nodes",data:n,position:{x:r.x??0,y:r.y??0}})})}function tJe(t,e){t.forEach(r=>{let n={id:r.id,source:r.start,target:r.end};Object.keys(r).forEach(i=>{["id","start","end"].includes(i)||(n[i]=r[i])}),e.add({group:"edges",data:n})})}function zme(t){return new Promise(e=>{let r=He("body").append("div").attr("id","cy").attr("style","display:none"),n=Al({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),eJe(t.nodes,n),tJe(t.edges,n),n.nodes().forEach(function(a){a.layoutDimensions=()=>{let s=a.data();return{w:s.width,h:s.height}}});let i={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};n.layout(i).run(),n.ready(a=>{X.info("Cytoscape ready",a),e(n)})})}function Gme(t){return t.nodes().map(e=>{let r=e.data(),n=e.position(),i={id:r.id,x:n.x,y:n.y};return Object.keys(r).forEach(a=>{a!=="id"&&(i[a]=r[a])}),i})}function Vme(t){return t.edges().map(e=>{let r=e.data(),n=e._private.rscratch,i={id:r.id,source:r.source,target:r.target,startX:n.startX,startY:n.startY,midX:n.midX,midY:n.midY,endX:n.endX,endY:n.endY};return Object.keys(r).forEach(a=>{["id","source","target"].includes(a)||(i[a]=r[a])}),i})}var $me,qme=I(()=>{"use strict";cB();$me=Aa(Fme(),1);kr();gt();Al.use($me.default);o(eJe,"addNodes");o(tJe,"addEdges");o(zme,"createCytoscapeInstance");o(Gme,"extractPositionedNodes");o(Vme,"extractPositionedEdges")});async function Ume(t,e){X.debug("Starting cose-bilkent layout algorithm");try{rJe(t);let r=await zme(t),n=Gme(r),i=Vme(r);return X.debug(`Layout completed: ${n.length} nodes, ${i.length} edges`),{nodes:n,edges:i}}catch(r){throw X.error("Error in cose-bilkent layout algorithm:",r),r}}function rJe(t){if(!t)throw new Error("Layout data is required");if(!t.config)throw new Error("Configuration is required in layout data");if(!t.rootNode)throw new Error("Root node is required");if(!t.nodes||!Array.isArray(t.nodes))throw new Error("No nodes found in layout data");if(!Array.isArray(t.edges))throw new Error("Edges array is required in layout data");return!0}var Wme=I(()=>{"use strict";gt();qme();o(Ume,"executeCoseBilkentLayout");o(rJe,"validateLayoutData")});var Hme,Yme=I(()=>{"use strict";Wme();Hme=o(async(t,e,{insertCluster:r,insertEdge:n,insertEdgeLabel:i,insertMarkers:a,insertNode:s,log:l,positionEdgeLabel:u},{algorithm:h})=>{let f={},d={},p=e.select("g");a(p,t.markers,t.type,t.diagramId);let m=p.insert("g").attr("class","subgraphs"),g=p.insert("g").attr("class","edgePaths"),y=p.insert("g").attr("class","edgeLabels"),v=p.insert("g").attr("class","nodes");l.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(t.nodes.map(async T=>{if(T.isGroup){let E={...T};d[T.id]=E,f[T.id]=E,await r(m,T)}else{let E={...T};f[T.id]=E;let w=await s(v,T,{config:t.config,dir:t.direction||"TB"}),k=w.node().getBBox();E.width=k.width,E.height=k.height,E.domId=w,l.debug(`Node ${T.id} dimensions: ${k.width}x${k.height}`)}})),l.debug("Running cose-bilkent layout algorithm");let x={...t,nodes:t.nodes.map(T=>{let E=f[T.id];return{...T,width:E.width,height:E.height}})},b=await Ume(x,t.config);l.debug("Positioning nodes based on layout results"),b.nodes.forEach(T=>{let E=f[T.id];E?.domId&&(E.domId.attr("transform",`translate(${T.x}, ${T.y})`),E.x=T.x,E.y=T.y,l.debug(`Positioned node ${E.id} at center (${T.x}, ${T.y})`))}),b.edges.forEach(T=>{let E=t.edges.find(w=>w.id===T.id);E&&(E.points=[{x:T.startX,y:T.startY},{x:T.midX,y:T.midY},{x:T.endX,y:T.endY}])}),l.debug("Inserting and positioning edges"),await Promise.all(t.edges.map(async T=>{let E=await i(y,T),w=f[T.start??""],k=f[T.end??""];if(w&&k){let C=b.edges.find(D=>D.id===T.id);if(C){l.debug("APA01 positionedEdge",C);let D={...T},R=n(g,D,d,t.type,w,k,t.diagramId);u(D,R)}else{let D={...T,points:[{x:w.x||0,y:w.y||0},{x:k.x||0,y:k.y||0}]},R=n(g,D,d,t.type,w,k,t.diagramId);u(D,R)}}})),l.debug("Cose-bilkent rendering completed")},"render")});var jme={};vr(jme,{render:()=>nJe});var nJe,Xme=I(()=>{"use strict";Yme();nJe=Hme});var Jb,mB,iJe,_l,ku,Cd=I(()=>{"use strict";Fse();gt();Jb={},mB=o(t=>{for(let e of t)Jb[e.name]=e},"registerLayoutLoaders"),iJe=o(()=>{mB([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(vfe(),yfe)),"loader")},{name:"cose-bilkent",loader:o(async()=>await Promise.resolve().then(()=>(Xme(),jme)),"loader")}])},"registerDefaultLayoutLoaders");iJe();_l=o(async(t,e)=>{if(!(t.layoutAlgorithm in Jb))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);let r=Jb[t.layoutAlgorithm];return(await r.loader()).render(t,e,Bse,{algorithm:r.algorithm})},"render"),ku=o((t="",{fallback:e="dagre"}={})=>{if(t in Jb)return t;if(e in Jb)return X.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm")});var mo,aJe,sJe,Ad=I(()=>{"use strict";Fi();gt();mo=o((t,e,r,n)=>{t.attr("class",r);let{width:i,height:a,x:s,y:l}=aJe(t,e);Sn(t,a,i,n);let u=sJe(s,l,i,a,e);t.attr("viewBox",u),X.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),aJe=o((t,e)=>{let r=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+e*2,height:r.height+e*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),sJe=o((t,e,r,n,i)=>`${t-i} ${e-i} ${r} ${n}`,"createViewBox")});var oJe,lJe,Kme,Qme=I(()=>{"use strict";kr();Qt();gt();y0();Cd();Ad();sr();oJe=o(function(t,e){return e.db.getClasses()},"getClasses"),lJe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing state diagram (v2)",e);let{securityLevel:i,flowchart:a,layout:s}=xe(),l;i==="sandbox"&&(l=He("#i"+e));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;X.debug("Before getData: ");let h=n.db.getData();X.debug("Data: ",h);let f=xl(e,i),d=n.db.getDirection();h.type=n.type,h.layoutAlgorithm=ku(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&X.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),h.direction=d,h.nodeSpacing=a?.nodeSpacing||50,h.rankSpacing=a?.rankSpacing||50,h.markers=["point","circle","cross"],h.diagramId=e,X.debug("REF1:",h),await _l(h,f);let p=h.config.flowchart?.diagramPadding??8;jt.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),mo(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=He(`#${e} [id="${m.id}"]`);if(!g||!m.link)continue;let y=u.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",m.cssClasses),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):m.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",m.linkTarget);let v=g.insert(function(){return y},":first-child"),x=g.select(".label-container");x&&v.append(function(){return x.node()});let b=g.select(".label");b&&v.append(function(){return b.node()})}},"draw"),Kme={getClasses:oJe,draw:lJe}});var gB,yB,Zme=I(()=>{"use strict";gB=(function(){var t=o(function(br,st,Ct,Zt){for(Ct=Ct||{},Zt=br.length;Zt--;Ct[br[Zt]]=st);return Ct},"o"),e=[1,4],r=[1,3],n=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],a=[2,2],s=[1,13],l=[1,14],u=[1,15],h=[1,16],f=[1,23],d=[1,25],p=[1,26],m=[1,27],g=[1,49],y=[1,48],v=[1,29],x=[1,30],b=[1,31],T=[1,32],E=[1,33],w=[1,44],k=[1,46],C=[1,42],D=[1,47],R=[1,43],O=[1,50],L=[1,45],S=[1,51],A=[1,52],_=[1,34],N=[1,35],M=[1,36],P=[1,37],B=[1,57],F=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],G=[1,61],$=[1,60],V=[1,62],K=[8,9,11,75,77,78],ee=[1,78],H=[1,91],he=[1,96],Z=[1,95],de=[1,92],re=[1,88],ne=[1,94],te=[1,90],Q=[1,97],le=[1,93],J=[1,98],ge=[1,89],ie=[8,9,10,11,40,75,77,78],Te=[8,9,10,11,40,46,75,77,78],j=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],Ge=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],ye=[44,60,89,102,105,106,109,111,114,115,116],$e=[1,121],Xe=[1,122],Ue=[1,124],Le=[1,123],Ie=[44,60,62,74,89,102,105,106,109,111,114,115,116],Me=[1,133],Ae=[1,147],ze=[1,148],Y=[1,149],ce=[1,150],U=[1,135],ue=[1,137],z=[1,141],se=[1,142],oe=[1,143],be=[1,144],pe=[1,145],me=[1,146],De=[1,151],Ce=[1,152],Fe=[1,131],Ye=[1,132],xt=[1,139],je=[1,134],Pe=[1,138],rt=[1,136],We=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],ut=[1,154],Ut=[1,156],Tt=[8,9,11],Mt=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],mt=[1,176],at=[1,172],wt=[1,173],St=[1,177],bt=[1,174],pt=[1,175],Zr=[77,116,119],Lt=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],Dn=[10,106],Hr=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],mr=[1,247],hr=[1,245],Br=[1,249],Dt=[1,243],_e=[1,244],ot=[1,246],Ot=[1,248],Dr=[1,250],Rn=[1,268],Cn=[8,9,11,106],mn=[8,9,10,11,60,84,105,106,109,110,111,112],oa={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1]],performAction:o(function(st,Ct,Zt,dt,Fr,ve,Lc){var we=ve.length-1;switch(Fr){case 2:this.$=[];break;case 3:(!Array.isArray(ve[we])||ve[we].length>0)&&ve[we-1].push(ve[we]),this.$=ve[we-1];break;case 4:case 183:this.$=ve[we];break;case 11:dt.setDirection("TB"),this.$="TB";break;case 12:dt.setDirection(ve[we-1]),this.$=ve[we-1];break;case 27:this.$=ve[we-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=dt.addSubGraph(ve[we-6],ve[we-1],ve[we-4]);break;case 34:this.$=dt.addSubGraph(ve[we-3],ve[we-1],ve[we-3]);break;case 35:this.$=dt.addSubGraph(void 0,ve[we-1],void 0);break;case 37:this.$=ve[we].trim(),dt.setAccTitle(this.$);break;case 38:case 39:this.$=ve[we].trim(),dt.setAccDescription(this.$);break;case 43:this.$=ve[we-1]+ve[we];break;case 44:this.$=ve[we];break;case 45:dt.addVertex(ve[we-1][ve[we-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,ve[we]),dt.addLink(ve[we-3].stmt,ve[we-1],ve[we-2]),this.$={stmt:ve[we-1],nodes:ve[we-1].concat(ve[we-3].nodes)};break;case 46:dt.addLink(ve[we-2].stmt,ve[we],ve[we-1]),this.$={stmt:ve[we],nodes:ve[we].concat(ve[we-2].nodes)};break;case 47:dt.addLink(ve[we-3].stmt,ve[we-1],ve[we-2]),this.$={stmt:ve[we-1],nodes:ve[we-1].concat(ve[we-3].nodes)};break;case 48:this.$={stmt:ve[we-1],nodes:ve[we-1]};break;case 49:dt.addVertex(ve[we-1][ve[we-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,ve[we]),this.$={stmt:ve[we-1],nodes:ve[we-1],shapeData:ve[we]};break;case 50:this.$={stmt:ve[we],nodes:ve[we]};break;case 51:this.$=[ve[we]];break;case 52:dt.addVertex(ve[we-5][ve[we-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,ve[we-4]),this.$=ve[we-5].concat(ve[we]);break;case 53:this.$=ve[we-4].concat(ve[we]);break;case 54:this.$=ve[we];break;case 55:this.$=ve[we-2],dt.setClass(ve[we-2],ve[we]);break;case 56:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"square");break;case 57:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"doublecircle");break;case 58:this.$=ve[we-5],dt.addVertex(ve[we-5],ve[we-2],"circle");break;case 59:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"ellipse");break;case 60:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"stadium");break;case 61:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"subroutine");break;case 62:this.$=ve[we-7],dt.addVertex(ve[we-7],ve[we-1],"rect",void 0,void 0,void 0,Object.fromEntries([[ve[we-5],ve[we-3]]]));break;case 63:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"cylinder");break;case 64:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"round");break;case 65:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"diamond");break;case 66:this.$=ve[we-5],dt.addVertex(ve[we-5],ve[we-2],"hexagon");break;case 67:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"odd");break;case 68:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"trapezoid");break;case 69:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"inv_trapezoid");break;case 70:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"lean_right");break;case 71:this.$=ve[we-3],dt.addVertex(ve[we-3],ve[we-1],"lean_left");break;case 72:this.$=ve[we],dt.addVertex(ve[we]);break;case 73:ve[we-1].text=ve[we],this.$=ve[we-1];break;case 74:case 75:ve[we-2].text=ve[we-1],this.$=ve[we-2];break;case 76:this.$=ve[we];break;case 77:var sn=dt.destructLink(ve[we],ve[we-2]);this.$={type:sn.type,stroke:sn.stroke,length:sn.length,text:ve[we-1]};break;case 78:var sn=dt.destructLink(ve[we],ve[we-2]);this.$={type:sn.type,stroke:sn.stroke,length:sn.length,text:ve[we-1],id:ve[we-3]};break;case 79:this.$={text:ve[we],type:"text"};break;case 80:this.$={text:ve[we-1].text+""+ve[we],type:ve[we-1].type};break;case 81:this.$={text:ve[we],type:"string"};break;case 82:this.$={text:ve[we],type:"markdown"};break;case 83:var sn=dt.destructLink(ve[we]);this.$={type:sn.type,stroke:sn.stroke,length:sn.length};break;case 84:var sn=dt.destructLink(ve[we]);this.$={type:sn.type,stroke:sn.stroke,length:sn.length,id:ve[we-1]};break;case 85:this.$=ve[we-1];break;case 86:this.$={text:ve[we],type:"text"};break;case 87:this.$={text:ve[we-1].text+""+ve[we],type:ve[we-1].type};break;case 88:this.$={text:ve[we],type:"string"};break;case 89:case 104:this.$={text:ve[we],type:"markdown"};break;case 101:this.$={text:ve[we],type:"text"};break;case 102:this.$={text:ve[we-1].text+""+ve[we],type:ve[we-1].type};break;case 103:this.$={text:ve[we],type:"text"};break;case 105:this.$=ve[we-4],dt.addClass(ve[we-2],ve[we]);break;case 106:this.$=ve[we-4],dt.setClass(ve[we-2],ve[we]);break;case 107:case 115:this.$=ve[we-1],dt.setClickEvent(ve[we-1],ve[we]);break;case 108:case 116:this.$=ve[we-3],dt.setClickEvent(ve[we-3],ve[we-2]),dt.setTooltip(ve[we-3],ve[we]);break;case 109:this.$=ve[we-2],dt.setClickEvent(ve[we-2],ve[we-1],ve[we]);break;case 110:this.$=ve[we-4],dt.setClickEvent(ve[we-4],ve[we-3],ve[we-2]),dt.setTooltip(ve[we-4],ve[we]);break;case 111:this.$=ve[we-2],dt.setLink(ve[we-2],ve[we]);break;case 112:this.$=ve[we-4],dt.setLink(ve[we-4],ve[we-2]),dt.setTooltip(ve[we-4],ve[we]);break;case 113:this.$=ve[we-4],dt.setLink(ve[we-4],ve[we-2],ve[we]);break;case 114:this.$=ve[we-6],dt.setLink(ve[we-6],ve[we-4],ve[we]),dt.setTooltip(ve[we-6],ve[we-2]);break;case 117:this.$=ve[we-1],dt.setLink(ve[we-1],ve[we]);break;case 118:this.$=ve[we-3],dt.setLink(ve[we-3],ve[we-2]),dt.setTooltip(ve[we-3],ve[we]);break;case 119:this.$=ve[we-3],dt.setLink(ve[we-3],ve[we-2],ve[we]);break;case 120:this.$=ve[we-5],dt.setLink(ve[we-5],ve[we-4],ve[we]),dt.setTooltip(ve[we-5],ve[we-2]);break;case 121:this.$=ve[we-4],dt.addVertex(ve[we-2],void 0,void 0,ve[we]);break;case 122:this.$=ve[we-4],dt.updateLink([ve[we-2]],ve[we]);break;case 123:this.$=ve[we-4],dt.updateLink(ve[we-2],ve[we]);break;case 124:this.$=ve[we-8],dt.updateLinkInterpolate([ve[we-6]],ve[we-2]),dt.updateLink([ve[we-6]],ve[we]);break;case 125:this.$=ve[we-8],dt.updateLinkInterpolate(ve[we-6],ve[we-2]),dt.updateLink(ve[we-6],ve[we]);break;case 126:this.$=ve[we-6],dt.updateLinkInterpolate([ve[we-4]],ve[we]);break;case 127:this.$=ve[we-6],dt.updateLinkInterpolate(ve[we-4],ve[we]);break;case 128:case 130:this.$=[ve[we]];break;case 129:case 131:ve[we-2].push(ve[we]),this.$=ve[we-2];break;case 133:this.$=ve[we-1]+ve[we];break;case 181:this.$=ve[we];break;case 182:this.$=ve[we-1]+""+ve[we];break;case 184:this.$=ve[we-1]+""+ve[we];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:r,12:n},{1:[3]},t(i,a,{5:6}),{4:7,9:e,10:r,12:n},{4:8,9:e,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:E,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A,121:_,122:N,123:M,124:P},t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),{8:[1,54],9:[1,55],10:B,15:53,18:56},t(F,[2,3]),t(F,[2,4]),t(F,[2,5]),t(F,[2,6]),t(F,[2,7]),t(F,[2,8]),{8:G,9:$,11:V,21:58,41:59,72:63,75:[1,64],77:[1,66],78:[1,65]},{8:G,9:$,11:V,21:67},{8:G,9:$,11:V,21:68},{8:G,9:$,11:V,21:69},{8:G,9:$,11:V,21:70},{8:G,9:$,11:V,21:71},{8:G,9:$,10:[1,72],11:V,21:73},t(F,[2,36]),{35:[1,74]},{37:[1,75]},t(F,[2,39]),t(K,[2,50],{18:76,39:77,10:B,40:ee}),{10:[1,79]},{10:[1,80]},{10:[1,81]},{10:[1,82]},{14:H,44:he,60:Z,80:[1,86],89:de,95:[1,83],97:[1,84],101:85,105:re,106:ne,109:te,111:Q,114:le,115:J,116:ge,120:87},t(F,[2,185]),t(F,[2,186]),t(F,[2,187]),t(F,[2,188]),t(ie,[2,51]),t(ie,[2,54],{46:[1,99]}),t(Te,[2,72],{113:112,29:[1,100],44:g,48:[1,101],50:[1,102],52:[1,103],54:[1,104],56:[1,105],58:[1,106],60:y,63:[1,107],65:[1,108],67:[1,109],68:[1,110],70:[1,111],89:w,102:k,105:C,106:D,109:R,111:O,114:L,115:S,116:A}),t(j,[2,181]),t(j,[2,142]),t(j,[2,143]),t(j,[2,144]),t(j,[2,145]),t(j,[2,146]),t(j,[2,147]),t(j,[2,148]),t(j,[2,149]),t(j,[2,150]),t(j,[2,151]),t(j,[2,152]),t(i,[2,12]),t(i,[2,18]),t(i,[2,19]),{9:[1,113]},t(Ge,[2,26],{18:114,10:B}),t(F,[2,27]),{42:115,43:38,44:g,45:39,47:40,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},t(F,[2,40]),t(F,[2,41]),t(F,[2,42]),t(ye,[2,76],{73:116,62:[1,118],74:[1,117]}),{76:119,79:120,80:$e,81:Xe,116:Ue,119:Le},{75:[1,125],77:[1,126]},t(Ie,[2,83]),t(F,[2,28]),t(F,[2,29]),t(F,[2,30]),t(F,[2,31]),t(F,[2,32]),{10:Me,12:Ae,14:ze,27:Y,28:127,32:ce,44:U,60:ue,75:z,80:[1,129],81:[1,130],83:140,84:se,85:oe,86:be,87:pe,88:me,89:De,90:Ce,91:128,105:Fe,109:Ye,111:xt,114:je,115:Pe,116:rt},t(We,a,{5:153}),t(F,[2,37]),t(F,[2,38]),t(K,[2,48],{44:ut}),t(K,[2,49],{18:155,10:B,40:Ut}),t(ie,[2,44]),{44:g,47:157,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},{102:[1,158],103:159,105:[1,160]},{44:g,47:161,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},{44:g,47:162,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},t(Tt,[2,107],{10:[1,163],96:[1,164]}),{80:[1,165]},t(Tt,[2,115],{120:167,10:[1,166],14:H,44:he,60:Z,89:de,105:re,106:ne,109:te,111:Q,114:le,115:J,116:ge}),t(Tt,[2,117],{10:[1,168]}),t(Mt,[2,183]),t(Mt,[2,170]),t(Mt,[2,171]),t(Mt,[2,172]),t(Mt,[2,173]),t(Mt,[2,174]),t(Mt,[2,175]),t(Mt,[2,176]),t(Mt,[2,177]),t(Mt,[2,178]),t(Mt,[2,179]),t(Mt,[2,180]),{44:g,47:169,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},{30:170,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:178,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:180,50:[1,179],67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:181,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:182,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:183,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{109:[1,184]},{30:185,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:186,65:[1,187],67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:188,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:189,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{30:190,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},t(j,[2,182]),t(i,[2,20]),t(Ge,[2,25]),t(K,[2,46],{39:191,18:192,10:B,40:ee}),t(ye,[2,73],{10:[1,193]}),{10:[1,194]},{30:195,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{77:[1,196],79:197,116:Ue,119:Le},t(Zr,[2,79]),t(Zr,[2,81]),t(Zr,[2,82]),t(Zr,[2,168]),t(Zr,[2,169]),{76:198,79:120,80:$e,81:Xe,116:Ue,119:Le},t(Ie,[2,84]),{8:G,9:$,10:Me,11:V,12:Ae,14:ze,21:200,27:Y,29:[1,199],32:ce,44:U,60:ue,75:z,83:140,84:se,85:oe,86:be,87:pe,88:me,89:De,90:Ce,91:201,105:Fe,109:Ye,111:xt,114:je,115:Pe,116:rt},t(Lt,[2,101]),t(Lt,[2,103]),t(Lt,[2,104]),t(Lt,[2,157]),t(Lt,[2,158]),t(Lt,[2,159]),t(Lt,[2,160]),t(Lt,[2,161]),t(Lt,[2,162]),t(Lt,[2,163]),t(Lt,[2,164]),t(Lt,[2,165]),t(Lt,[2,166]),t(Lt,[2,167]),t(Lt,[2,90]),t(Lt,[2,91]),t(Lt,[2,92]),t(Lt,[2,93]),t(Lt,[2,94]),t(Lt,[2,95]),t(Lt,[2,96]),t(Lt,[2,97]),t(Lt,[2,98]),t(Lt,[2,99]),t(Lt,[2,100]),{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,202],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:E,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A,121:_,122:N,123:M,124:P},{10:B,18:203},{44:[1,204]},t(ie,[2,43]),{10:[1,205],44:g,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:112,114:L,115:S,116:A},{10:[1,206]},{10:[1,207],106:[1,208]},t(Dn,[2,128]),{10:[1,209],44:g,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:112,114:L,115:S,116:A},{10:[1,210],44:g,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:112,114:L,115:S,116:A},{80:[1,211]},t(Tt,[2,109],{10:[1,212]}),t(Tt,[2,111],{10:[1,213]}),{80:[1,214]},t(Mt,[2,184]),{80:[1,215],98:[1,216]},t(ie,[2,55],{113:112,44:g,60:y,89:w,102:k,105:C,106:D,109:R,111:O,114:L,115:S,116:A}),{31:[1,217],67:mt,82:218,116:St,117:bt,118:pt},t(Hr,[2,86]),t(Hr,[2,88]),t(Hr,[2,89]),t(Hr,[2,153]),t(Hr,[2,154]),t(Hr,[2,155]),t(Hr,[2,156]),{49:[1,219],67:mt,82:218,116:St,117:bt,118:pt},{30:220,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{51:[1,221],67:mt,82:218,116:St,117:bt,118:pt},{53:[1,222],67:mt,82:218,116:St,117:bt,118:pt},{55:[1,223],67:mt,82:218,116:St,117:bt,118:pt},{57:[1,224],67:mt,82:218,116:St,117:bt,118:pt},{60:[1,225]},{64:[1,226],67:mt,82:218,116:St,117:bt,118:pt},{66:[1,227],67:mt,82:218,116:St,117:bt,118:pt},{30:228,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},{31:[1,229],67:mt,82:218,116:St,117:bt,118:pt},{67:mt,69:[1,230],71:[1,231],82:218,116:St,117:bt,118:pt},{67:mt,69:[1,233],71:[1,232],82:218,116:St,117:bt,118:pt},t(K,[2,45],{18:155,10:B,40:Ut}),t(K,[2,47],{44:ut}),t(ye,[2,75]),t(ye,[2,74]),{62:[1,234],67:mt,82:218,116:St,117:bt,118:pt},t(ye,[2,77]),t(Zr,[2,80]),{77:[1,235],79:197,116:Ue,119:Le},{30:236,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},t(We,a,{5:237}),t(Lt,[2,102]),t(F,[2,35]),{43:238,44:g,45:39,47:40,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},{10:B,18:239},{10:mr,60:hr,84:Br,92:240,105:Dt,107:241,108:242,109:_e,110:ot,111:Ot,112:Dr},{10:mr,60:hr,84:Br,92:251,104:[1,252],105:Dt,107:241,108:242,109:_e,110:ot,111:Ot,112:Dr},{10:mr,60:hr,84:Br,92:253,104:[1,254],105:Dt,107:241,108:242,109:_e,110:ot,111:Ot,112:Dr},{105:[1,255]},{10:mr,60:hr,84:Br,92:256,105:Dt,107:241,108:242,109:_e,110:ot,111:Ot,112:Dr},{44:g,47:257,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},t(Tt,[2,108]),{80:[1,258]},{80:[1,259],98:[1,260]},t(Tt,[2,116]),t(Tt,[2,118],{10:[1,261]}),t(Tt,[2,119]),t(Te,[2,56]),t(Hr,[2,87]),t(Te,[2,57]),{51:[1,262],67:mt,82:218,116:St,117:bt,118:pt},t(Te,[2,64]),t(Te,[2,59]),t(Te,[2,60]),t(Te,[2,61]),{109:[1,263]},t(Te,[2,63]),t(Te,[2,65]),{66:[1,264],67:mt,82:218,116:St,117:bt,118:pt},t(Te,[2,67]),t(Te,[2,68]),t(Te,[2,70]),t(Te,[2,69]),t(Te,[2,71]),t([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),t(ye,[2,78]),{31:[1,265],67:mt,82:218,116:St,117:bt,118:pt},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,266],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:E,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A,121:_,122:N,123:M,124:P},t(ie,[2,53]),{43:267,44:g,45:39,47:40,60:y,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A},t(Tt,[2,121],{106:Rn}),t(Cn,[2,130],{108:269,10:mr,60:hr,84:Br,105:Dt,109:_e,110:ot,111:Ot,112:Dr}),t(mn,[2,132]),t(mn,[2,134]),t(mn,[2,135]),t(mn,[2,136]),t(mn,[2,137]),t(mn,[2,138]),t(mn,[2,139]),t(mn,[2,140]),t(mn,[2,141]),t(Tt,[2,122],{106:Rn}),{10:[1,270]},t(Tt,[2,123],{106:Rn}),{10:[1,271]},t(Dn,[2,129]),t(Tt,[2,105],{106:Rn}),t(Tt,[2,106],{113:112,44:g,60:y,89:w,102:k,105:C,106:D,109:R,111:O,114:L,115:S,116:A}),t(Tt,[2,110]),t(Tt,[2,112],{10:[1,272]}),t(Tt,[2,113]),{98:[1,273]},{51:[1,274]},{62:[1,275]},{66:[1,276]},{8:G,9:$,11:V,21:277},t(F,[2,34]),t(ie,[2,52]),{10:mr,60:hr,84:Br,105:Dt,107:278,108:242,109:_e,110:ot,111:Ot,112:Dr},t(mn,[2,133]),{14:H,44:he,60:Z,89:de,101:279,105:re,106:ne,109:te,111:Q,114:le,115:J,116:ge,120:87},{14:H,44:he,60:Z,89:de,101:280,105:re,106:ne,109:te,111:Q,114:le,115:J,116:ge,120:87},{98:[1,281]},t(Tt,[2,120]),t(Te,[2,58]),{30:282,67:mt,80:at,81:wt,82:171,116:St,117:bt,118:pt},t(Te,[2,66]),t(We,a,{5:283}),t(Cn,[2,131],{108:269,10:mr,60:hr,84:Br,105:Dt,109:_e,110:ot,111:Ot,112:Dr}),t(Tt,[2,126],{120:167,10:[1,284],14:H,44:he,60:Z,89:de,105:re,106:ne,109:te,111:Q,114:le,115:J,116:ge}),t(Tt,[2,127],{120:167,10:[1,285],14:H,44:he,60:Z,89:de,105:re,106:ne,109:te,111:Q,114:le,115:J,116:ge}),t(Tt,[2,114]),{31:[1,286],67:mt,82:218,116:St,117:bt,118:pt},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,287],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:v,85:x,86:b,87:T,88:E,89:w,102:k,105:C,106:D,109:R,111:O,113:41,114:L,115:S,116:A,121:_,122:N,123:M,124:P},{10:mr,60:hr,84:Br,92:288,105:Dt,107:241,108:242,109:_e,110:ot,111:Ot,112:Dr},{10:mr,60:hr,84:Br,92:289,105:Dt,107:241,108:242,109:_e,110:ot,111:Ot,112:Dr},t(Te,[2,62]),t(F,[2,33]),t(Tt,[2,124],{106:Rn}),t(Tt,[2,125],{106:Rn})],defaultActions:{},parseError:o(function(st,Ct){if(Ct.recoverable)this.trace(st);else{var Zt=new Error(st);throw Zt.hash=Ct,Zt}},"parseError"),parse:o(function(st){var Ct=this,Zt=[0],dt=[],Fr=[null],ve=[],Lc=this.table,we="",sn=0,E3=0,k8=0,S8=2,_W=1,KCe=ve.slice.call(arguments,1),la=Object.create(this.lexer),wp={yy:{}};for(var E8 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,E8)&&(wp.yy[E8]=this.yy[E8]);la.setInput(st,wp.yy),wp.yy.lexer=la,wp.yy.parser=this,typeof la.yylloc>"u"&&(la.yylloc={});var C8=la.yylloc;ve.push(C8);var QCe=la.options&&la.options.ranges;typeof wp.yy.parseError=="function"?this.parseError=wp.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function $dt(Ao){Zt.length=Zt.length-2*Ao,Fr.length=Fr.length-Ao,ve.length=ve.length-Ao}o($dt,"popStack");function ZCe(){var Ao;return Ao=dt.pop()||la.lex()||_W,typeof Ao!="number"&&(Ao instanceof Array&&(dt=Ao,Ao=dt.pop()),Ao=Ct.symbols_[Ao]||Ao),Ao}o(ZCe,"lex");for(var ys,A8,kp,el,zdt,_8,Jm={},C3,Yu,DW,A3;;){if(kp=Zt[Zt.length-1],this.defaultActions[kp]?el=this.defaultActions[kp]:((ys===null||typeof ys>"u")&&(ys=ZCe()),el=Lc[kp]&&Lc[kp][ys]),typeof el>"u"||!el.length||!el[0]){var D8="";A3=[];for(C3 in Lc[kp])this.terminals_[C3]&&C3>S8&&A3.push("'"+this.terminals_[C3]+"'");la.showPosition?D8="Parse error on line "+(sn+1)+`: +`+la.showPosition()+` +Expecting `+A3.join(", ")+", got '"+(this.terminals_[ys]||ys)+"'":D8="Parse error on line "+(sn+1)+": Unexpected "+(ys==_W?"end of input":"'"+(this.terminals_[ys]||ys)+"'"),this.parseError(D8,{text:la.match,token:this.terminals_[ys]||ys,line:la.yylineno,loc:C8,expected:A3})}if(el[0]instanceof Array&&el.length>1)throw new Error("Parse Error: multiple actions possible at state: "+kp+", token: "+ys);switch(el[0]){case 1:Zt.push(ys),Fr.push(la.yytext),ve.push(la.yylloc),Zt.push(el[1]),ys=null,A8?(ys=A8,A8=null):(E3=la.yyleng,we=la.yytext,sn=la.yylineno,C8=la.yylloc,k8>0&&k8--);break;case 2:if(Yu=this.productions_[el[1]][1],Jm.$=Fr[Fr.length-Yu],Jm._$={first_line:ve[ve.length-(Yu||1)].first_line,last_line:ve[ve.length-1].last_line,first_column:ve[ve.length-(Yu||1)].first_column,last_column:ve[ve.length-1].last_column},QCe&&(Jm._$.range=[ve[ve.length-(Yu||1)].range[0],ve[ve.length-1].range[1]]),_8=this.performAction.apply(Jm,[we,E3,sn,wp.yy,el[1],Fr,ve].concat(KCe)),typeof _8<"u")return _8;Yu&&(Zt=Zt.slice(0,-1*Yu*2),Fr=Fr.slice(0,-1*Yu),ve=ve.slice(0,-1*Yu)),Zt.push(this.productions_[el[1]][0]),Fr.push(Jm.$),ve.push(Jm._$),DW=Lc[Zt[Zt.length-2]][Zt[Zt.length-1]],Zt.push(DW);break;case 3:return!0}}return!0},"parse")},Co=(function(){var br={EOF:1,parseError:o(function(Ct,Zt){if(this.yy.parser)this.yy.parser.parseError(Ct,Zt);else throw new Error(Ct)},"parseError"),setInput:o(function(st,Ct){return this.yy=Ct||this.yy||{},this._input=st,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var st=this._input[0];this.yytext+=st,this.yyleng++,this.offset++,this.match+=st,this.matched+=st;var Ct=st.match(/(?:\r\n?|\n).*/g);return Ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),st},"input"),unput:o(function(st){var Ct=st.length,Zt=st.split(/(?:\r\n?|\n)/g);this._input=st+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ct),this.offset-=Ct;var dt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Zt.length-1&&(this.yylineno-=Zt.length-1);var Fr=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Zt?(Zt.length===dt.length?this.yylloc.first_column:0)+dt[dt.length-Zt.length].length-Zt[0].length:this.yylloc.first_column-Ct},this.options.ranges&&(this.yylloc.range=[Fr[0],Fr[0]+this.yyleng-Ct]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(st){this.unput(this.match.slice(st))},"less"),pastInput:o(function(){var st=this.matched.substr(0,this.matched.length-this.match.length);return(st.length>20?"...":"")+st.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var st=this.match;return st.length<20&&(st+=this._input.substr(0,20-st.length)),(st.substr(0,20)+(st.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var st=this.pastInput(),Ct=new Array(st.length+1).join("-");return st+this.upcomingInput()+` +`+Ct+"^"},"showPosition"),test_match:o(function(st,Ct){var Zt,dt,Fr;if(this.options.backtrack_lexer&&(Fr={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Fr.yylloc.range=this.yylloc.range.slice(0))),dt=st[0].match(/(?:\r\n?|\n).*/g),dt&&(this.yylineno+=dt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:dt?dt[dt.length-1].length-dt[dt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+st[0].length},this.yytext+=st[0],this.match+=st[0],this.matches=st,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(st[0].length),this.matched+=st[0],Zt=this.performAction.call(this,this.yy,this,Ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Zt)return Zt;if(this._backtrack){for(var ve in Fr)this[ve]=Fr[ve];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var st,Ct,Zt,dt;this._more||(this.yytext="",this.match="");for(var Fr=this._currentRules(),ve=0;veCt[0].length)){if(Ct=Zt,dt=ve,this.options.backtrack_lexer){if(st=this.test_match(Zt,Fr[ve]),st!==!1)return st;if(this._backtrack){Ct=!1;continue}else return!1}else if(!this.options.flex)break}return Ct?(st=this.test_match(Ct,Fr[dt]),st!==!1?st:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ct=this.next();return Ct||this.lex()},"lex"),begin:o(function(Ct){this.conditionStack.push(Ct)},"begin"),popState:o(function(){var Ct=this.conditionStack.length-1;return Ct>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ct){return Ct=this.conditionStack.length-1-Math.abs(Ct||0),Ct>=0?this.conditionStack[Ct]:"INITIAL"},"topState"),pushState:o(function(Ct){this.begin(Ct)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ct,Zt,dt,Fr){var ve=Fr;switch(dt){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),Zt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let Lc=/\n\s*/g;return Zt.yytext=Zt.yytext.replace(Lc,"
    "),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return Ct.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return Ct.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return Ct.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 98;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 78;case 60:return 105;case 61:return 111;case 62:return 46;case 63:return 60;case 64:return 44;case 65:return 8;case 66:return 106;case 67:return 115;case 68:return this.popState(),77;break;case 69:return this.pushState("edgeText"),75;break;case 70:return 119;case 71:return this.popState(),77;break;case 72:return this.pushState("thickEdgeText"),75;break;case 73:return 119;case 74:return this.popState(),77;break;case 75:return this.pushState("dottedEdgeText"),75;break;case 76:return 119;case 77:return 77;case 78:return this.popState(),53;break;case 79:return"TEXT";case 80:return this.pushState("ellipseText"),52;break;case 81:return this.popState(),55;break;case 82:return this.pushState("text"),54;break;case 83:return this.popState(),57;break;case 84:return this.pushState("text"),56;break;case 85:return 58;case 86:return this.pushState("text"),67;break;case 87:return this.popState(),64;break;case 88:return this.pushState("text"),63;break;case 89:return this.popState(),49;break;case 90:return this.pushState("text"),48;break;case 91:return this.popState(),69;break;case 92:return this.popState(),71;break;case 93:return 117;case 94:return this.pushState("trapText"),68;break;case 95:return this.pushState("trapText"),70;break;case 96:return 118;case 97:return 67;case 98:return 90;case 99:return"SEP";case 100:return 89;case 101:return 115;case 102:return 111;case 103:return 44;case 104:return 109;case 105:return 114;case 106:return 116;case 107:return this.popState(),62;break;case 108:return this.pushState("text"),62;break;case 109:return this.popState(),51;break;case 110:return this.pushState("text"),50;break;case 111:return this.popState(),31;break;case 112:return this.pushState("text"),29;break;case 113:return this.popState(),66;break;case 114:return this.pushState("text"),65;break;case 115:return"TEXT";case 116:return"QUOTE";case 117:return 9;case 118:return 10;case 119:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeData:{rules:[8,11,12,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackargs:{rules:[17,18,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackname:{rules:[14,15,16,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},href:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},click:{rules:[21,24,33,34,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dottedEdgeText:{rules:[21,24,74,76,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},thickEdgeText:{rules:[21,24,71,73,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},edgeText:{rules:[21,24,68,70,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},trapText:{rules:[21,24,77,80,82,84,88,90,91,92,93,94,95,108,110,112,114],inclusive:!1},ellipseText:{rules:[21,24,77,78,79,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},text:{rules:[21,24,77,80,81,82,83,84,87,88,89,90,94,95,107,108,109,110,111,112,113,114,115],inclusive:!1},vertex:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr:{rules:[3,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_title:{rules:[1,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},md_string:{rules:[19,20,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},string:{rules:[21,22,23,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,72,74,75,77,80,82,84,85,86,88,90,94,95,96,97,98,99,100,101,102,103,104,105,106,108,110,112,114,116,117,118,119],inclusive:!0}}};return br})();oa.lexer=Co;function Xa(){this.yy={}}return o(Xa,"Parser"),Xa.prototype=oa,oa.Parser=Xa,new Xa})();gB.parser=gB;yB=gB});var Jme,ege,tge=I(()=>{"use strict";Zme();Jme=Object.assign({},yB);Jme.parse=t=>{let e=t.replace(/}\s*\n/g,`} +`);return yB.parse(e)};ege=Jme});var Su,ey=I(()=>{"use strict";Su=o(()=>` /* Font Awesome icon styling - consolidated */ .label-icon { display: inline-block; @@ -857,7 +857,7 @@ Expecting `+q4.join(", ")+", got '"+(this.terminals_[ja]||ja)+"'":e7="Parse erro stroke: revert; stroke-width: revert; } -`,"getIconStyles")});var iWe,aWe,vfe,xfe=M(()=>{"use strict";eo();yg();iWe=o((t,e)=>{let r=ld,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Ka(n,i,a,e)},"fade"),aWe=o(t=>`.label { +`,"getIconStyles")});var cJe,uJe,rge,nge=I(()=>{"use strict";_o();ey();cJe=o((t,e)=>{let r=Ep,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return vs(n,i,a,e)},"fade"),uJe=o(t=>`.label { font-family: ${t.fontFamily}; color: ${t.nodeTextColor||t.textColor}; } @@ -944,7 +944,7 @@ Expecting `+q4.join(", ")+", got '"+(this.terminals_[ja]||ja)+"'":e7="Parse erro /* For html labels only */ .labelBkg { - background-color: ${iWe(t.edgeLabelBackground,.5)}; + background-color: ${cJe(t.edgeLabelBackground,.5)}; // background-color: } @@ -1003,13 +1003,13 @@ Expecting `+q4.join(", ")+", got '"+(this.terminals_[ja]||ja)+"'":e7="Parse erro } text-align: center; } - ${zc()} -`,"getStyles"),vfe=aWe});var AE={};dr(AE,{diagram:()=>sWe});var sWe,_E=M(()=>{"use strict";Xt();zte();dfe();yfe();xfe();sWe={parser:gfe,get db(){return new cw},renderer:ffe,styles:vfe,init:o(t=>{t.flowchart||(t.flowchart={}),t.layout&&iv({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,iv({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}})},"init")}});var UI,Efe,Sfe=M(()=>{"use strict";UI=(function(){var t=o(function(K,ae,Z,de){for(Z=Z||{},de=K.length;de--;Z[K[de]]=ae);return Z},"o"),e=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,50],r=[1,10],n=[1,11],i=[1,12],a=[1,13],s=[1,20],l=[1,21],u=[1,22],h=[1,23],f=[1,24],d=[1,19],p=[1,25],m=[1,26],g=[1,18],y=[1,33],v=[1,34],x=[1,35],b=[1,36],T=[1,37],S=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,50,63,64,65,66,67],w=[1,42],k=[1,43],C=[1,52],A=[40,50,68,69],L=[1,63],I=[1,61],R=[1,58],E=[1,62],_=[1,64],D=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,63,64,65,66,67],O=[63,64,65,66,67],N=[1,81],P=[1,80],B=[1,78],F=[1,79],V=[6,10,42,47],$=[6,10,13,41,42,47,48,49],U=[1,89],j=[1,88],ee=[1,87],q=[19,56],oe=[1,98],Q=[1,97],ue=[19,56,58,60],te={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,attribute:51,attributeType:52,attributeName:53,attributeKeyTypeList:54,attributeComment:55,ATTRIBUTE_WORD:56,attributeKeyType:57,",":58,ATTRIBUTE_KEY:59,COMMENT:60,cardinality:61,relType:62,ZERO_OR_ONE:63,ZERO_OR_MORE:64,ONE_OR_MORE:65,ONLY_ONE:66,MD_PARENT:67,NON_IDENTIFYING:68,IDENTIFYING:69,WORD:70,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",56:"ATTRIBUTE_WORD",58:",",59:"ATTRIBUTE_KEY",60:"COMMENT",63:"ZERO_OR_ONE",64:"ZERO_OR_MORE",65:"ONE_OR_MORE",66:"ONLY_ONE",67:"MD_PARENT",68:"NON_IDENTIFYING",69:"IDENTIFYING",70:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[18,1],[18,2],[51,2],[51,3],[51,3],[51,4],[52,1],[53,1],[54,1],[54,3],[57,1],[55,1],[12,3],[61,1],[61,1],[61,1],[61,1],[61,1],[62,1],[62,1],[14,1],[14,1],[14,1]],performAction:o(function(ae,Z,de,ne,Te,W,Ve){var pe=W.length-1;switch(Te){case 1:break;case 2:this.$=[];break;case 3:W[pe-1].push(W[pe]),this.$=W[pe-1];break;case 4:case 5:this.$=W[pe];break;case 6:case 7:this.$=[];break;case 8:ne.addEntity(W[pe-4]),ne.addEntity(W[pe-2]),ne.addRelationship(W[pe-4],W[pe],W[pe-2],W[pe-3]);break;case 9:ne.addEntity(W[pe-8]),ne.addEntity(W[pe-4]),ne.addRelationship(W[pe-8],W[pe],W[pe-4],W[pe-5]),ne.setClass([W[pe-8]],W[pe-6]),ne.setClass([W[pe-4]],W[pe-2]);break;case 10:ne.addEntity(W[pe-6]),ne.addEntity(W[pe-2]),ne.addRelationship(W[pe-6],W[pe],W[pe-2],W[pe-3]),ne.setClass([W[pe-6]],W[pe-4]);break;case 11:ne.addEntity(W[pe-6]),ne.addEntity(W[pe-4]),ne.addRelationship(W[pe-6],W[pe],W[pe-4],W[pe-5]),ne.setClass([W[pe-4]],W[pe-2]);break;case 12:ne.addEntity(W[pe-3]),ne.addAttributes(W[pe-3],W[pe-1]);break;case 13:ne.addEntity(W[pe-5]),ne.addAttributes(W[pe-5],W[pe-1]),ne.setClass([W[pe-5]],W[pe-3]);break;case 14:ne.addEntity(W[pe-2]);break;case 15:ne.addEntity(W[pe-4]),ne.setClass([W[pe-4]],W[pe-2]);break;case 16:ne.addEntity(W[pe]);break;case 17:ne.addEntity(W[pe-2]),ne.setClass([W[pe-2]],W[pe]);break;case 18:ne.addEntity(W[pe-6],W[pe-4]),ne.addAttributes(W[pe-6],W[pe-1]);break;case 19:ne.addEntity(W[pe-8],W[pe-6]),ne.addAttributes(W[pe-8],W[pe-1]),ne.setClass([W[pe-8]],W[pe-3]);break;case 20:ne.addEntity(W[pe-5],W[pe-3]);break;case 21:ne.addEntity(W[pe-7],W[pe-5]),ne.setClass([W[pe-7]],W[pe-2]);break;case 22:ne.addEntity(W[pe-3],W[pe-1]);break;case 23:ne.addEntity(W[pe-5],W[pe-3]),ne.setClass([W[pe-5]],W[pe]);break;case 24:case 25:this.$=W[pe].trim(),ne.setAccTitle(this.$);break;case 26:case 27:this.$=W[pe].trim(),ne.setAccDescription(this.$);break;case 32:ne.setDirection("TB");break;case 33:ne.setDirection("BT");break;case 34:ne.setDirection("RL");break;case 35:ne.setDirection("LR");break;case 36:this.$=W[pe-3],ne.addClass(W[pe-2],W[pe-1]);break;case 37:case 38:case 56:case 64:this.$=[W[pe]];break;case 39:case 40:this.$=W[pe-2].concat([W[pe]]);break;case 41:this.$=W[pe-2],ne.setClass(W[pe-1],W[pe]);break;case 42:this.$=W[pe-3],ne.addCssStyles(W[pe-2],W[pe-1]);break;case 43:this.$=[W[pe]];break;case 44:W[pe-2].push(W[pe]),this.$=W[pe-2];break;case 46:this.$=W[pe-1]+W[pe];break;case 54:case 76:case 77:this.$=W[pe].replace(/"/g,"");break;case 55:case 78:this.$=W[pe];break;case 57:W[pe].push(W[pe-1]),this.$=W[pe];break;case 58:this.$={type:W[pe-1],name:W[pe]};break;case 59:this.$={type:W[pe-2],name:W[pe-1],keys:W[pe]};break;case 60:this.$={type:W[pe-2],name:W[pe-1],comment:W[pe]};break;case 61:this.$={type:W[pe-3],name:W[pe-2],keys:W[pe-1],comment:W[pe]};break;case 62:case 63:case 66:this.$=W[pe];break;case 65:W[pe-2].push(W[pe]),this.$=W[pe-2];break;case 67:this.$=W[pe].replace(/"/g,"");break;case 68:this.$={cardA:W[pe],relType:W[pe-1],cardB:W[pe-2]};break;case 69:this.$=ne.Cardinality.ZERO_OR_ONE;break;case 70:this.$=ne.Cardinality.ZERO_OR_MORE;break;case 71:this.$=ne.Cardinality.ONE_OR_MORE;break;case 72:this.$=ne.Cardinality.ONLY_ONE;break;case 73:this.$=ne.Cardinality.MD_PARENT;break;case 74:this.$=ne.Identification.NON_IDENTIFYING;break;case 75:this.$=ne.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:27,11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,5]),t(e,[2,6]),t(e,[2,16],{12:28,61:32,15:[1,29],17:[1,30],20:[1,31],63:y,64:v,65:x,66:b,67:T}),{23:[1,38]},{25:[1,39]},{27:[1,40]},t(e,[2,27]),t(e,[2,28]),t(e,[2,29]),t(e,[2,30]),t(e,[2,31]),t(S,[2,54]),t(S,[2,55]),t(e,[2,32]),t(e,[2,33]),t(e,[2,34]),t(e,[2,35]),{16:41,40:w,41:k},{16:44,40:w,41:k},{16:45,40:w,41:k},t(e,[2,4]),{11:46,40:d,50:g},{16:47,40:w,41:k},{18:48,19:[1,49],51:50,52:51,56:C},{11:53,40:d,50:g},{62:54,68:[1,55],69:[1,56]},t(A,[2,69]),t(A,[2,70]),t(A,[2,71]),t(A,[2,72]),t(A,[2,73]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),{13:L,38:57,41:I,42:R,45:59,46:60,48:E,49:_},t(D,[2,37]),t(D,[2,38]),{16:65,40:w,41:k,42:R},{13:L,38:66,41:I,42:R,45:59,46:60,48:E,49:_},{13:[1,67],15:[1,68]},t(e,[2,17],{61:32,12:69,17:[1,70],42:R,63:y,64:v,65:x,66:b,67:T}),{19:[1,71]},t(e,[2,14]),{18:72,19:[2,56],51:50,52:51,56:C},{53:73,56:[1,74]},{56:[2,62]},{21:[1,75]},{61:76,63:y,64:v,65:x,66:b,67:T},t(O,[2,74]),t(O,[2,75]),{6:N,10:P,39:77,42:B,47:F},{40:[1,82],41:[1,83]},t(V,[2,43],{46:84,13:L,41:I,48:E,49:_}),t($,[2,45]),t($,[2,50]),t($,[2,51]),t($,[2,52]),t($,[2,53]),t(e,[2,41],{42:R}),{6:N,10:P,39:85,42:B,47:F},{14:86,40:U,50:j,70:ee},{16:90,40:w,41:k},{11:91,40:d,50:g},{18:92,19:[1,93],51:50,52:51,56:C},t(e,[2,12]),{19:[2,57]},t(q,[2,58],{54:94,55:95,57:96,59:oe,60:Q}),t([19,56,59,60],[2,63]),t(e,[2,22],{15:[1,100],17:[1,99]}),t([40,50],[2,68]),t(e,[2,36]),{13:L,41:I,45:101,46:60,48:E,49:_},t(e,[2,47]),t(e,[2,48]),t(e,[2,49]),t(D,[2,39]),t(D,[2,40]),t($,[2,46]),t(e,[2,42]),t(e,[2,8]),t(e,[2,76]),t(e,[2,77]),t(e,[2,78]),{13:[1,102],42:R},{13:[1,104],15:[1,103]},{19:[1,105]},t(e,[2,15]),t(q,[2,59],{55:106,58:[1,107],60:Q}),t(q,[2,60]),t(ue,[2,64]),t(q,[2,67]),t(ue,[2,66]),{18:108,19:[1,109],51:50,52:51,56:C},{16:110,40:w,41:k},t(V,[2,44],{46:84,13:L,41:I,48:E,49:_}),{14:111,40:U,50:j,70:ee},{16:112,40:w,41:k},{14:113,40:U,50:j,70:ee},t(e,[2,13]),t(q,[2,61]),{57:114,59:oe},{19:[1,115]},t(e,[2,20]),t(e,[2,23],{17:[1,116],42:R}),t(e,[2,11]),{13:[1,117],42:R},t(e,[2,10]),t(ue,[2,65]),t(e,[2,18]),{18:118,19:[1,119],51:50,52:51,56:C},{14:120,40:U,50:j,70:ee},{19:[1,121]},t(e,[2,21]),t(e,[2,9]),t(e,[2,19])],defaultActions:{52:[2,62],72:[2,57]},parseError:o(function(ae,Z){if(Z.recoverable)this.trace(ae);else{var de=new Error(ae);throw de.hash=Z,de}},"parseError"),parse:o(function(ae){var Z=this,de=[0],ne=[],Te=[null],W=[],Ve=this.table,pe="",Be=0,Ye=0,He=0,Le=2,Ie=1,Ne=W.slice.call(arguments,1),Ce=Object.create(this.lexer),Fe={yy:{}};for(var fe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,fe)&&(Fe.yy[fe]=this.yy[fe]);Ce.setInput(ae,Fe.yy),Fe.yy.lexer=Ce,Fe.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var xe=Ce.yylloc;W.push(xe);var Y=Ce.options&&Ce.options.ranges;typeof Fe.yy.parseError=="function"?this.parseError=Fe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function he(et){de.length=de.length-2*et,Te.length=Te.length-et,W.length=W.length-et}o(he,"popStack");function z(){var et;return et=ne.pop()||Ce.lex()||Ie,typeof et!="number"&&(et instanceof Array&&(ne=et,et=ne.pop()),et=Z.symbols_[et]||et),et}o(z,"lex");for(var se,le,ke,ve,ye,Re,_e={},ze,Ke,xt,We;;){if(ke=de[de.length-1],this.defaultActions[ke]?ve=this.defaultActions[ke]:((se===null||typeof se>"u")&&(se=z()),ve=Ve[ke]&&Ve[ke][se]),typeof ve>"u"||!ve.length||!ve[0]){var Oe="";We=[];for(ze in Ve[ke])this.terminals_[ze]&&ze>Le&&We.push("'"+this.terminals_[ze]+"'");Ce.showPosition?Oe="Parse error on line "+(Be+1)+`: -`+Ce.showPosition()+` -Expecting `+We.join(", ")+", got '"+(this.terminals_[se]||se)+"'":Oe="Parse error on line "+(Be+1)+": Unexpected "+(se==Ie?"end of input":"'"+(this.terminals_[se]||se)+"'"),this.parseError(Oe,{text:Ce.match,token:this.terminals_[se]||se,line:Ce.yylineno,loc:xe,expected:We})}if(ve[0]instanceof Array&&ve.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ke+", token: "+se);switch(ve[0]){case 1:de.push(se),Te.push(Ce.yytext),W.push(Ce.yylloc),de.push(ve[1]),se=null,le?(se=le,le=null):(Ye=Ce.yyleng,pe=Ce.yytext,Be=Ce.yylineno,xe=Ce.yylloc,He>0&&He--);break;case 2:if(Ke=this.productions_[ve[1]][1],_e.$=Te[Te.length-Ke],_e._$={first_line:W[W.length-(Ke||1)].first_line,last_line:W[W.length-1].last_line,first_column:W[W.length-(Ke||1)].first_column,last_column:W[W.length-1].last_column},Y&&(_e._$.range=[W[W.length-(Ke||1)].range[0],W[W.length-1].range[1]]),Re=this.performAction.apply(_e,[pe,Ye,Be,Fe.yy,ve[1],Te,W].concat(Ne)),typeof Re<"u")return Re;Ke&&(de=de.slice(0,-1*Ke*2),Te=Te.slice(0,-1*Ke),W=W.slice(0,-1*Ke)),de.push(this.productions_[ve[1]][0]),Te.push(_e.$),W.push(_e._$),xt=Ve[de[de.length-2]][de[de.length-1]],de.push(xt);break;case 3:return!0}}return!0},"parse")},re=(function(){var K={EOF:1,parseError:o(function(Z,de){if(this.yy.parser)this.yy.parser.parseError(Z,de);else throw new Error(Z)},"parseError"),setInput:o(function(ae,Z){return this.yy=Z||this.yy||{},this._input=ae,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var ae=this._input[0];this.yytext+=ae,this.yyleng++,this.offset++,this.match+=ae,this.matched+=ae;var Z=ae.match(/(?:\r\n?|\n).*/g);return Z?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ae},"input"),unput:o(function(ae){var Z=ae.length,de=ae.split(/(?:\r\n?|\n)/g);this._input=ae+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Z),this.offset-=Z;var ne=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),de.length-1&&(this.yylineno-=de.length-1);var Te=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:de?(de.length===ne.length?this.yylloc.first_column:0)+ne[ne.length-de.length].length-de[0].length:this.yylloc.first_column-Z},this.options.ranges&&(this.yylloc.range=[Te[0],Te[0]+this.yyleng-Z]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(ae){this.unput(this.match.slice(ae))},"less"),pastInput:o(function(){var ae=this.matched.substr(0,this.matched.length-this.match.length);return(ae.length>20?"...":"")+ae.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var ae=this.match;return ae.length<20&&(ae+=this._input.substr(0,20-ae.length)),(ae.substr(0,20)+(ae.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var ae=this.pastInput(),Z=new Array(ae.length+1).join("-");return ae+this.upcomingInput()+` -`+Z+"^"},"showPosition"),test_match:o(function(ae,Z){var de,ne,Te;if(this.options.backtrack_lexer&&(Te={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Te.yylloc.range=this.yylloc.range.slice(0))),ne=ae[0].match(/(?:\r\n?|\n).*/g),ne&&(this.yylineno+=ne.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ne?ne[ne.length-1].length-ne[ne.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ae[0].length},this.yytext+=ae[0],this.match+=ae[0],this.matches=ae,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ae[0].length),this.matched+=ae[0],de=this.performAction.call(this,this.yy,this,Z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),de)return de;if(this._backtrack){for(var W in Te)this[W]=Te[W];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ae,Z,de,ne;this._more||(this.yytext="",this.match="");for(var Te=this._currentRules(),W=0;WZ[0].length)){if(Z=de,ne=W,this.options.backtrack_lexer){if(ae=this.test_match(de,Te[W]),ae!==!1)return ae;if(this._backtrack){Z=!1;continue}else return!1}else if(!this.options.flex)break}return Z?(ae=this.test_match(Z,Te[ne]),ae!==!1?ae:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Z=this.next();return Z||this.lex()},"lex"),begin:o(function(Z){this.conditionStack.push(Z)},"begin"),popState:o(function(){var Z=this.conditionStack.length-1;return Z>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Z){return Z=this.conditionStack.length-1-Math.abs(Z||0),Z>=0?this.conditionStack[Z]:"INITIAL"},"topState"),pushState:o(function(Z){this.begin(Z)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Z,de,ne,Te){var W=Te;switch(ne){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 70;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 59;case 25:return 56;case 26:return 56;case 27:return 60;case 28:break;case 29:return this.popState(),19;break;case 30:return de.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;break;case 34:return this.popState(),10;break;case 35:break;case 36:return 13;case 37:return 42;case 38:return 49;case 39:return this.begin("style"),37;break;case 40:return 43;case 41:return 63;case 42:return 65;case 43:return 65;case 44:return 65;case 45:return 63;case 46:return 63;case 47:return 64;case 48:return 64;case 49:return 64;case 50:return 64;case 51:return 64;case 52:return 65;case 53:return 64;case 54:return 65;case 55:return 66;case 56:return 66;case 57:return 66;case 58:return 66;case 59:return 63;case 60:return 64;case 61:return 65;case 62:return 67;case 63:return 68;case 64:return 69;case 65:return 69;case 66:return 68;case 67:return 68;case 68:return 68;case 69:return 41;case 70:return 47;case 71:return 40;case 72:return 48;case 73:return de.yytext[0];case 74:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:[0-9])/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,69,70],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,71,72,73,74],inclusive:!0}}};return K})();te.lexer=re;function J(){this.yy={}}return o(J,"Parser"),J.prototype=te,te.Parser=J,new J})();UI.parser=UI;Efe=UI});var DE,Cfe=M(()=>{"use strict";pt();Xt();ci();tr();DE=class{constructor(){this.entities=new Map;this.relationships=[];this.classes=new Map;this.direction="TB";this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"};this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"};this.setAccTitle=Rr;this.getAccTitle=Mr;this.setAccDescription=Ir;this.getAccDescription=Or;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.getConfig=o(()=>ge().er,"getConfig");this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"ErDB")}addEntity(e,r=""){return this.entities.has(e)?!this.entities.get(e)?.alias&&r&&(this.entities.get(e).alias=r,X.info(`Add alias '${r}' to entity '${e}'`)):(this.entities.set(e,{id:`entity-${e}-${this.entities.size}`,label:e,attributes:[],alias:r,shape:"erBox",look:ge().look??"default",cssClasses:"default",cssStyles:[]}),X.info("Added new entity :",e)),this.entities.get(e)}getEntity(e){return this.entities.get(e)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(e,r){let n=this.addEntity(e),i;for(i=r.length-1;i>=0;i--)r[i].keys||(r[i].keys=[]),r[i].comment||(r[i].comment=""),n.attributes.push(r[i]),X.debug("Added attribute ",r[i].name)}addRelationship(e,r,n,i){let a=this.entities.get(e),s=this.entities.get(n);if(!a||!s)return;let l={entityA:a.id,roleA:r,entityB:s.id,relSpec:i};this.relationships.push(l),X.debug("Added new relationship :",l)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(e){this.direction=e}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}addCssStyles(e,r){for(let n of e){let i=this.entities.get(n);if(!r||!i)return;for(let a of r)i.cssStyles.push(a)}}addClass(e,r){e.forEach(n=>{let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)})})}setClass(e,r){for(let n of e){let i=this.entities.get(n);if(i)for(let a of r)i.cssClasses+=" "+a}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],Sr()}getData(){let e=[],r=[],n=ge();for(let a of this.entities.keys()){let s=this.entities.get(a);s&&(s.cssCompiledStyles=this.getCompiledStyles(s.cssClasses.split(" ")),e.push(s))}let i=0;for(let a of this.relationships){let s={id:xc(a.entityA,a.entityB,{prefix:"id",counter:i++}),type:"normal",curve:"basis",start:a.entityA,end:a.entityB,label:a.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:a.relSpec.cardB.toLowerCase(),arrowTypeEnd:a.relSpec.cardA.toLowerCase(),pattern:a.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:"TB"}}}});var HI={};dr(HI,{draw:()=>dWe});var dWe,Afe=M(()=>{"use strict";Xt();pt();ep();Nf();Mf();tr();yr();dWe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing er diagram (unified)",e);let{securityLevel:i,er:a,layout:s}=ge(),l=n.db.getData(),u=Vo(e,i);l.type=n.type,l.layoutAlgorithm=$c(s),l.config.flowchart.nodeSpacing=a?.nodeSpacing||140,l.config.flowchart.rankSpacing=a?.rankSpacing||80,l.direction=n.db.getDirection(),l.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],l.diagramId=e,await Qo(l,u),l.layoutAlgorithm==="elk"&&u.select(".edges").lower();let h=u.selectAll('[id*="-background"]');Array.from(h).length>0&&h.each(function(){let d=qe(this),m=d.attr("id").replace("-background",""),g=u.select(`#${CSS.escape(m)}`);if(!g.empty()){let y=g.attr("transform");d.attr("transform",y)}});let f=8;qt.insertTitle(u,"erDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ws(u,f,"erDiagram",a?.useMaxWidth??!0)},"draw")});var pWe,mWe,_fe,Dfe=M(()=>{"use strict";eo();pWe=o((t,e)=>{let r=ld,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Ka(n,i,a,e)},"fade"),mWe=o(t=>` + ${Su()} +`,"getStyles"),rge=uJe});var uC={};vr(uC,{diagram:()=>hJe});var hJe,hC=I(()=>{"use strict";Qt();Sse();Qme();tge();nge();hJe={parser:ege,get db(){return new Hk},renderer:Kme,styles:rge,init:o(t=>{t.flowchart||(t.flowchart={}),t.layout&&A2({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,A2({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}})},"init")}});var vB,lge,cge=I(()=>{"use strict";vB=(function(){var t=o(function(Q,le,J,ge){for(J=J||{},ge=Q.length;ge--;J[Q[ge]]=le);return J},"o"),e=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,50],r=[1,10],n=[1,11],i=[1,12],a=[1,13],s=[1,20],l=[1,21],u=[1,22],h=[1,23],f=[1,24],d=[1,19],p=[1,25],m=[1,26],g=[1,18],y=[1,33],v=[1,34],x=[1,35],b=[1,36],T=[1,37],E=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,50,63,64,65,66,67],w=[1,42],k=[1,43],C=[1,52],D=[40,50,68,69],R=[1,63],O=[1,61],L=[1,58],S=[1,62],A=[1,64],_=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,63,64,65,66,67],N=[63,64,65,66,67],M=[1,81],P=[1,80],B=[1,78],F=[1,79],G=[6,10,42,47],$=[6,10,13,41,42,47,48,49],V=[1,89],K=[1,88],ee=[1,87],H=[19,56],he=[1,98],Z=[1,97],de=[19,56,58,60],re={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,attribute:51,attributeType:52,attributeName:53,attributeKeyTypeList:54,attributeComment:55,ATTRIBUTE_WORD:56,attributeKeyType:57,",":58,ATTRIBUTE_KEY:59,COMMENT:60,cardinality:61,relType:62,ZERO_OR_ONE:63,ZERO_OR_MORE:64,ONE_OR_MORE:65,ONLY_ONE:66,MD_PARENT:67,NON_IDENTIFYING:68,IDENTIFYING:69,WORD:70,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",56:"ATTRIBUTE_WORD",58:",",59:"ATTRIBUTE_KEY",60:"COMMENT",63:"ZERO_OR_ONE",64:"ZERO_OR_MORE",65:"ONE_OR_MORE",66:"ONLY_ONE",67:"MD_PARENT",68:"NON_IDENTIFYING",69:"IDENTIFYING",70:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[18,1],[18,2],[51,2],[51,3],[51,3],[51,4],[52,1],[53,1],[54,1],[54,3],[57,1],[55,1],[12,3],[61,1],[61,1],[61,1],[61,1],[61,1],[62,1],[62,1],[14,1],[14,1],[14,1]],performAction:o(function(le,J,ge,ie,Te,j,Ge){var ye=j.length-1;switch(Te){case 1:break;case 2:this.$=[];break;case 3:j[ye-1].push(j[ye]),this.$=j[ye-1];break;case 4:case 5:this.$=j[ye];break;case 6:case 7:this.$=[];break;case 8:ie.addEntity(j[ye-4]),ie.addEntity(j[ye-2]),ie.addRelationship(j[ye-4],j[ye],j[ye-2],j[ye-3]);break;case 9:ie.addEntity(j[ye-8]),ie.addEntity(j[ye-4]),ie.addRelationship(j[ye-8],j[ye],j[ye-4],j[ye-5]),ie.setClass([j[ye-8]],j[ye-6]),ie.setClass([j[ye-4]],j[ye-2]);break;case 10:ie.addEntity(j[ye-6]),ie.addEntity(j[ye-2]),ie.addRelationship(j[ye-6],j[ye],j[ye-2],j[ye-3]),ie.setClass([j[ye-6]],j[ye-4]);break;case 11:ie.addEntity(j[ye-6]),ie.addEntity(j[ye-4]),ie.addRelationship(j[ye-6],j[ye],j[ye-4],j[ye-5]),ie.setClass([j[ye-4]],j[ye-2]);break;case 12:ie.addEntity(j[ye-3]),ie.addAttributes(j[ye-3],j[ye-1]);break;case 13:ie.addEntity(j[ye-5]),ie.addAttributes(j[ye-5],j[ye-1]),ie.setClass([j[ye-5]],j[ye-3]);break;case 14:ie.addEntity(j[ye-2]);break;case 15:ie.addEntity(j[ye-4]),ie.setClass([j[ye-4]],j[ye-2]);break;case 16:ie.addEntity(j[ye]);break;case 17:ie.addEntity(j[ye-2]),ie.setClass([j[ye-2]],j[ye]);break;case 18:ie.addEntity(j[ye-6],j[ye-4]),ie.addAttributes(j[ye-6],j[ye-1]);break;case 19:ie.addEntity(j[ye-8],j[ye-6]),ie.addAttributes(j[ye-8],j[ye-1]),ie.setClass([j[ye-8]],j[ye-3]);break;case 20:ie.addEntity(j[ye-5],j[ye-3]);break;case 21:ie.addEntity(j[ye-7],j[ye-5]),ie.setClass([j[ye-7]],j[ye-2]);break;case 22:ie.addEntity(j[ye-3],j[ye-1]);break;case 23:ie.addEntity(j[ye-5],j[ye-3]),ie.setClass([j[ye-5]],j[ye]);break;case 24:case 25:this.$=j[ye].trim(),ie.setAccTitle(this.$);break;case 26:case 27:this.$=j[ye].trim(),ie.setAccDescription(this.$);break;case 32:ie.setDirection("TB");break;case 33:ie.setDirection("BT");break;case 34:ie.setDirection("RL");break;case 35:ie.setDirection("LR");break;case 36:this.$=j[ye-3],ie.addClass(j[ye-2],j[ye-1]);break;case 37:case 38:case 56:case 64:this.$=[j[ye]];break;case 39:case 40:this.$=j[ye-2].concat([j[ye]]);break;case 41:this.$=j[ye-2],ie.setClass(j[ye-1],j[ye]);break;case 42:this.$=j[ye-3],ie.addCssStyles(j[ye-2],j[ye-1]);break;case 43:this.$=[j[ye]];break;case 44:j[ye-2].push(j[ye]),this.$=j[ye-2];break;case 46:this.$=j[ye-1]+j[ye];break;case 54:case 76:case 77:this.$=j[ye].replace(/"/g,"");break;case 55:case 78:this.$=j[ye];break;case 57:j[ye].push(j[ye-1]),this.$=j[ye];break;case 58:this.$={type:j[ye-1],name:j[ye]};break;case 59:this.$={type:j[ye-2],name:j[ye-1],keys:j[ye]};break;case 60:this.$={type:j[ye-2],name:j[ye-1],comment:j[ye]};break;case 61:this.$={type:j[ye-3],name:j[ye-2],keys:j[ye-1],comment:j[ye]};break;case 62:case 63:case 66:this.$=j[ye];break;case 65:j[ye-2].push(j[ye]),this.$=j[ye-2];break;case 67:this.$=j[ye].replace(/"/g,"");break;case 68:this.$={cardA:j[ye],relType:j[ye-1],cardB:j[ye-2]};break;case 69:this.$=ie.Cardinality.ZERO_OR_ONE;break;case 70:this.$=ie.Cardinality.ZERO_OR_MORE;break;case 71:this.$=ie.Cardinality.ONE_OR_MORE;break;case 72:this.$=ie.Cardinality.ONLY_ONE;break;case 73:this.$=ie.Cardinality.MD_PARENT;break;case 74:this.$=ie.Identification.NON_IDENTIFYING;break;case 75:this.$=ie.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:27,11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,5]),t(e,[2,6]),t(e,[2,16],{12:28,61:32,15:[1,29],17:[1,30],20:[1,31],63:y,64:v,65:x,66:b,67:T}),{23:[1,38]},{25:[1,39]},{27:[1,40]},t(e,[2,27]),t(e,[2,28]),t(e,[2,29]),t(e,[2,30]),t(e,[2,31]),t(E,[2,54]),t(E,[2,55]),t(e,[2,32]),t(e,[2,33]),t(e,[2,34]),t(e,[2,35]),{16:41,40:w,41:k},{16:44,40:w,41:k},{16:45,40:w,41:k},t(e,[2,4]),{11:46,40:d,50:g},{16:47,40:w,41:k},{18:48,19:[1,49],51:50,52:51,56:C},{11:53,40:d,50:g},{62:54,68:[1,55],69:[1,56]},t(D,[2,69]),t(D,[2,70]),t(D,[2,71]),t(D,[2,72]),t(D,[2,73]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),{13:R,38:57,41:O,42:L,45:59,46:60,48:S,49:A},t(_,[2,37]),t(_,[2,38]),{16:65,40:w,41:k,42:L},{13:R,38:66,41:O,42:L,45:59,46:60,48:S,49:A},{13:[1,67],15:[1,68]},t(e,[2,17],{61:32,12:69,17:[1,70],42:L,63:y,64:v,65:x,66:b,67:T}),{19:[1,71]},t(e,[2,14]),{18:72,19:[2,56],51:50,52:51,56:C},{53:73,56:[1,74]},{56:[2,62]},{21:[1,75]},{61:76,63:y,64:v,65:x,66:b,67:T},t(N,[2,74]),t(N,[2,75]),{6:M,10:P,39:77,42:B,47:F},{40:[1,82],41:[1,83]},t(G,[2,43],{46:84,13:R,41:O,48:S,49:A}),t($,[2,45]),t($,[2,50]),t($,[2,51]),t($,[2,52]),t($,[2,53]),t(e,[2,41],{42:L}),{6:M,10:P,39:85,42:B,47:F},{14:86,40:V,50:K,70:ee},{16:90,40:w,41:k},{11:91,40:d,50:g},{18:92,19:[1,93],51:50,52:51,56:C},t(e,[2,12]),{19:[2,57]},t(H,[2,58],{54:94,55:95,57:96,59:he,60:Z}),t([19,56,59,60],[2,63]),t(e,[2,22],{15:[1,100],17:[1,99]}),t([40,50],[2,68]),t(e,[2,36]),{13:R,41:O,45:101,46:60,48:S,49:A},t(e,[2,47]),t(e,[2,48]),t(e,[2,49]),t(_,[2,39]),t(_,[2,40]),t($,[2,46]),t(e,[2,42]),t(e,[2,8]),t(e,[2,76]),t(e,[2,77]),t(e,[2,78]),{13:[1,102],42:L},{13:[1,104],15:[1,103]},{19:[1,105]},t(e,[2,15]),t(H,[2,59],{55:106,58:[1,107],60:Z}),t(H,[2,60]),t(de,[2,64]),t(H,[2,67]),t(de,[2,66]),{18:108,19:[1,109],51:50,52:51,56:C},{16:110,40:w,41:k},t(G,[2,44],{46:84,13:R,41:O,48:S,49:A}),{14:111,40:V,50:K,70:ee},{16:112,40:w,41:k},{14:113,40:V,50:K,70:ee},t(e,[2,13]),t(H,[2,61]),{57:114,59:he},{19:[1,115]},t(e,[2,20]),t(e,[2,23],{17:[1,116],42:L}),t(e,[2,11]),{13:[1,117],42:L},t(e,[2,10]),t(de,[2,65]),t(e,[2,18]),{18:118,19:[1,119],51:50,52:51,56:C},{14:120,40:V,50:K,70:ee},{19:[1,121]},t(e,[2,21]),t(e,[2,9]),t(e,[2,19])],defaultActions:{52:[2,62],72:[2,57]},parseError:o(function(le,J){if(J.recoverable)this.trace(le);else{var ge=new Error(le);throw ge.hash=J,ge}},"parseError"),parse:o(function(le){var J=this,ge=[0],ie=[],Te=[null],j=[],Ge=this.table,ye="",$e=0,Xe=0,Ue=0,Le=2,Ie=1,Me=j.slice.call(arguments,1),Ae=Object.create(this.lexer),ze={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(ze.yy[Y]=this.yy[Y]);Ae.setInput(le,ze.yy),ze.yy.lexer=Ae,ze.yy.parser=this,typeof Ae.yylloc>"u"&&(Ae.yylloc={});var ce=Ae.yylloc;j.push(ce);var U=Ae.options&&Ae.options.ranges;typeof ze.yy.parseError=="function"?this.parseError=ze.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ue(rt){ge.length=ge.length-2*rt,Te.length=Te.length-rt,j.length=j.length-rt}o(ue,"popStack");function z(){var rt;return rt=ie.pop()||Ae.lex()||Ie,typeof rt!="number"&&(rt instanceof Array&&(ie=rt,rt=ie.pop()),rt=J.symbols_[rt]||rt),rt}o(z,"lex");for(var se,oe,be,pe,me,De,Ce={},Fe,Ye,xt,je;;){if(be=ge[ge.length-1],this.defaultActions[be]?pe=this.defaultActions[be]:((se===null||typeof se>"u")&&(se=z()),pe=Ge[be]&&Ge[be][se]),typeof pe>"u"||!pe.length||!pe[0]){var Pe="";je=[];for(Fe in Ge[be])this.terminals_[Fe]&&Fe>Le&&je.push("'"+this.terminals_[Fe]+"'");Ae.showPosition?Pe="Parse error on line "+($e+1)+`: +`+Ae.showPosition()+` +Expecting `+je.join(", ")+", got '"+(this.terminals_[se]||se)+"'":Pe="Parse error on line "+($e+1)+": Unexpected "+(se==Ie?"end of input":"'"+(this.terminals_[se]||se)+"'"),this.parseError(Pe,{text:Ae.match,token:this.terminals_[se]||se,line:Ae.yylineno,loc:ce,expected:je})}if(pe[0]instanceof Array&&pe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+be+", token: "+se);switch(pe[0]){case 1:ge.push(se),Te.push(Ae.yytext),j.push(Ae.yylloc),ge.push(pe[1]),se=null,oe?(se=oe,oe=null):(Xe=Ae.yyleng,ye=Ae.yytext,$e=Ae.yylineno,ce=Ae.yylloc,Ue>0&&Ue--);break;case 2:if(Ye=this.productions_[pe[1]][1],Ce.$=Te[Te.length-Ye],Ce._$={first_line:j[j.length-(Ye||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(Ye||1)].first_column,last_column:j[j.length-1].last_column},U&&(Ce._$.range=[j[j.length-(Ye||1)].range[0],j[j.length-1].range[1]]),De=this.performAction.apply(Ce,[ye,Xe,$e,ze.yy,pe[1],Te,j].concat(Me)),typeof De<"u")return De;Ye&&(ge=ge.slice(0,-1*Ye*2),Te=Te.slice(0,-1*Ye),j=j.slice(0,-1*Ye)),ge.push(this.productions_[pe[1]][0]),Te.push(Ce.$),j.push(Ce._$),xt=Ge[ge[ge.length-2]][ge[ge.length-1]],ge.push(xt);break;case 3:return!0}}return!0},"parse")},ne=(function(){var Q={EOF:1,parseError:o(function(J,ge){if(this.yy.parser)this.yy.parser.parseError(J,ge);else throw new Error(J)},"parseError"),setInput:o(function(le,J){return this.yy=J||this.yy||{},this._input=le,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var le=this._input[0];this.yytext+=le,this.yyleng++,this.offset++,this.match+=le,this.matched+=le;var J=le.match(/(?:\r\n?|\n).*/g);return J?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),le},"input"),unput:o(function(le){var J=le.length,ge=le.split(/(?:\r\n?|\n)/g);this._input=le+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var ie=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ge.length-1&&(this.yylineno-=ge.length-1);var Te=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ge?(ge.length===ie.length?this.yylloc.first_column:0)+ie[ie.length-ge.length].length-ge[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[Te[0],Te[0]+this.yyleng-J]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(le){this.unput(this.match.slice(le))},"less"),pastInput:o(function(){var le=this.matched.substr(0,this.matched.length-this.match.length);return(le.length>20?"...":"")+le.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var le=this.match;return le.length<20&&(le+=this._input.substr(0,20-le.length)),(le.substr(0,20)+(le.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var le=this.pastInput(),J=new Array(le.length+1).join("-");return le+this.upcomingInput()+` +`+J+"^"},"showPosition"),test_match:o(function(le,J){var ge,ie,Te;if(this.options.backtrack_lexer&&(Te={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Te.yylloc.range=this.yylloc.range.slice(0))),ie=le[0].match(/(?:\r\n?|\n).*/g),ie&&(this.yylineno+=ie.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ie?ie[ie.length-1].length-ie[ie.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+le[0].length},this.yytext+=le[0],this.match+=le[0],this.matches=le,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(le[0].length),this.matched+=le[0],ge=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ge)return ge;if(this._backtrack){for(var j in Te)this[j]=Te[j];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var le,J,ge,ie;this._more||(this.yytext="",this.match="");for(var Te=this._currentRules(),j=0;jJ[0].length)){if(J=ge,ie=j,this.options.backtrack_lexer){if(le=this.test_match(ge,Te[j]),le!==!1)return le;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(le=this.test_match(J,Te[ie]),le!==!1?le:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var J=this.next();return J||this.lex()},"lex"),begin:o(function(J){this.conditionStack.push(J)},"begin"),popState:o(function(){var J=this.conditionStack.length-1;return J>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},"topState"),pushState:o(function(J){this.begin(J)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(J,ge,ie,Te){var j=Te;switch(ie){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 70;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 59;case 25:return 56;case 26:return 56;case 27:return 60;case 28:break;case 29:return this.popState(),19;break;case 30:return ge.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;break;case 34:return this.popState(),10;break;case 35:break;case 36:return 13;case 37:return 42;case 38:return 49;case 39:return this.begin("style"),37;break;case 40:return 43;case 41:return 63;case 42:return 65;case 43:return 65;case 44:return 65;case 45:return 63;case 46:return 63;case 47:return 64;case 48:return 64;case 49:return 64;case 50:return 64;case 51:return 64;case 52:return 65;case 53:return 64;case 54:return 65;case 55:return 66;case 56:return 66;case 57:return 66;case 58:return 66;case 59:return 63;case 60:return 64;case 61:return 65;case 62:return 67;case 63:return 68;case 64:return 69;case 65:return 69;case 66:return 68;case 67:return 68;case 68:return 68;case 69:return 41;case 70:return 47;case 71:return 40;case 72:return 48;case 73:return ge.yytext[0];case 74:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:[0-9])/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,69,70],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,71,72,73,74],inclusive:!0}}};return Q})();re.lexer=ne;function te(){this.yy={}}return o(te,"Parser"),te.prototype=re,re.Parser=te,new te})();vB.parser=vB;lge=vB});var fC,uge=I(()=>{"use strict";gt();Qt();ki();sr();fC=class{constructor(){this.entities=new Map;this.relationships=[];this.classes=new Map;this.direction="TB";this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"};this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"};this.setAccTitle=zr;this.getAccTitle=Vr;this.setAccDescription=qr;this.getAccDescription=Ur;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.getConfig=o(()=>xe().er,"getConfig");this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"ErDB")}addEntity(e,r=""){return this.entities.has(e)?!this.entities.get(e)?.alias&&r&&(this.entities.get(e).alias=r,X.info(`Add alias '${r}' to entity '${e}'`)):(this.entities.set(e,{id:`entity-${e}-${this.entities.size}`,label:e,attributes:[],alias:r,shape:"erBox",look:xe().look??"default",cssClasses:"default",cssStyles:[]}),X.info("Added new entity :",e)),this.entities.get(e)}getEntity(e){return this.entities.get(e)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(e,r){let n=this.addEntity(e),i;for(i=r.length-1;i>=0;i--)r[i].keys||(r[i].keys=[]),r[i].comment||(r[i].comment=""),n.attributes.push(r[i]),X.debug("Added attribute ",r[i].name)}addRelationship(e,r,n,i){let a=this.entities.get(e),s=this.entities.get(n);if(!a||!s)return;let l={entityA:a.id,roleA:r,entityB:s.id,relSpec:i};this.relationships.push(l),X.debug("Added new relationship :",l)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(e){this.direction=e}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}addCssStyles(e,r){for(let n of e){let i=this.entities.get(n);if(!r||!i)return;for(let a of r)i.cssStyles.push(a)}}addClass(e,r){e.forEach(n=>{let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)})})}setClass(e,r){for(let n of e){let i=this.entities.get(n);if(i)for(let a of r)i.cssClasses+=" "+a}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],Mr()}getData(){let e=[],r=[],n=xe();for(let a of this.entities.keys()){let s=this.entities.get(a);s&&(s.cssCompiledStyles=this.getCompiledStyles(s.cssClasses.split(" ")),e.push(s))}let i=0;for(let a of this.relationships){let s={id:nu(a.entityA,a.entityB,{prefix:"id",counter:i++}),type:"normal",curve:"basis",start:a.entityA,end:a.entityB,label:a.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:a.relSpec.cardB.toLowerCase(),arrowTypeEnd:a.relSpec.cardA.toLowerCase(),pattern:a.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:"TB"}}}});var xB={};vr(xB,{draw:()=>vJe});var vJe,hge=I(()=>{"use strict";Qt();gt();y0();Cd();Ad();sr();kr();vJe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing er diagram (unified)",e);let{securityLevel:i,er:a,layout:s}=xe(),l=n.db.getData(),u=xl(e,i);l.type=n.type,l.layoutAlgorithm=ku(s),l.config.flowchart.nodeSpacing=a?.nodeSpacing||140,l.config.flowchart.rankSpacing=a?.rankSpacing||80,l.direction=n.db.getDirection(),l.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],l.diagramId=e,await _l(l,u),l.layoutAlgorithm==="elk"&&u.select(".edges").lower();let h=u.selectAll('[id*="-background"]');Array.from(h).length>0&&h.each(function(){let d=He(this),m=d.attr("id").replace("-background",""),g=u.select(`#${CSS.escape(m)}`);if(!g.empty()){let y=g.attr("transform");d.attr("transform",y)}});let f=8;jt.insertTitle(u,"erDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),mo(u,f,"erDiagram",a?.useMaxWidth??!0)},"draw")});var xJe,bJe,fge,dge=I(()=>{"use strict";_o();xJe=o((t,e)=>{let r=Ep,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return vs(n,i,a,e)},"fade"),bJe=o(t=>` .entityBox { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; @@ -1025,7 +1025,7 @@ Expecting `+We.join(", ")+", got '"+(this.terminals_[se]||se)+"'":Oe="Parse erro } .labelBkg { - background-color: ${pWe(t.tertiaryColor,.5)}; + background-color: ${xJe(t.tertiaryColor,.5)}; } .edgeLabel .label { @@ -1063,69 +1063,69 @@ Expecting `+We.join(", ")+", got '"+(this.terminals_[se]||se)+"'":Oe="Parse erro stroke: ${t.lineColor} !important; stroke-width: 1; } -`,"getStyles"),_fe=mWe});var Lfe={};dr(Lfe,{diagram:()=>gWe});var gWe,Rfe=M(()=>{"use strict";Sfe();Cfe();Afe();Dfe();gWe={parser:Efe,get db(){return new DE},renderer:HI,styles:_fe}});function li(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function wa(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function qI(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function _p(t){return typeof t=="object"&&t!==null&&li(t.container)&&wa(t.reference)&&typeof t.message=="string"}function Ol(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function If(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Rx(t){return Ol(t)&&typeof t.fullText=="string"}var Ap,Pl=M(()=>{"use strict";o(li,"isAstNode");o(wa,"isReference");o(qI,"isAstNodeDescription");o(_p,"isLinkingError");Ap=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return li(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let a=this.computeIsSubtype(e,r);return n[r]=a,a}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}};o(Ol,"isCompositeCstNode");o(If,"isLeafCstNode");o(Rx,"isRootCstNode")});function bWe(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function LE(t){return!!t&&typeof t[Symbol.iterator]=="function"}function an(...t){if(t.length===1){let e=t[0];if(e instanceof po)return e;if(LE(e))return new po(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new po(()=>({index:0}),r=>r.index1?new po(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex{"use strict";po=class t{static{o(this,"StreamImpl")}constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return Ga})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=bWe(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?Ga:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return Ga})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=e(i);if(LE(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return Ga})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(LE(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return Ga})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?Ga:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return Ga})}exclude(e,r){let n=new Set;for(let i of e){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(bWe,"toString");o(LE,"isIterable");Nx=new po(()=>{},()=>Ga),Ga=Object.freeze({done:!0,value:void 0});o(an,"stream");Gc=class extends po{static{o(this,"TreeStreamImpl")}constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return Ga})}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),prune:o(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};(function(t){function e(a){return a.reduce((s,l)=>s+l,0)}o(e,"sum"),t.sum=e;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),t.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),t.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),t.max=i})(vg||(vg={}))});var NE={};dr(NE,{DefaultNameRegexp:()=>RE,RangeComparison:()=>Vc,compareRange:()=>Ife,findCommentNode:()=>jI,findDeclarationNodeAtOffset:()=>wWe,findLeafNodeAtOffset:()=>KI,findLeafNodeBeforeOffset:()=>Ofe,flattenCst:()=>TWe,getInteriorNodes:()=>SWe,getNextNode:()=>kWe,getPreviousNode:()=>Bfe,getStartlineNode:()=>EWe,inRange:()=>XI,isChildNode:()=>YI,isCommentNode:()=>WI,streamCst:()=>Dp,toDocumentSegment:()=>Lp,tokenToRange:()=>xg});function Dp(t){return new Gc(t,e=>Ol(e)?e.content:[],{includeRoot:!0})}function TWe(t){return Dp(t).filter(If)}function YI(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function xg(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Lp(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}function Ife(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Vc.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.lineVc.After}function wWe(t,e,r=RE){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return KI(t,e)}}function jI(t,e){if(t){let r=Bfe(t,!0);if(r&&WI(r,e))return r;if(Rx(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(WI(a,e))return a}}}}function WI(t,e){return If(t)&&e.includes(t.tokenType.name)}function KI(t,e){if(If(t))return t;if(Ol(t)){let r=Pfe(t,e,!1);if(r)return KI(r,e)}}function Ofe(t,e){if(If(t))return t;if(Ol(t)){let r=Pfe(t,e,!0);if(r)return Ofe(r,e)}}function Pfe(t,e,r){let n=0,i=t.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=t.content[s];if(l.offset<=e&&l.end>e)return l;l.end<=e?(a=r?l:void 0,n=s+1):i=s-1}return a}function Bfe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function kWe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n{"use strict";Pl();Ys();o(Dp,"streamCst");o(TWe,"flattenCst");o(YI,"isChildNode");o(xg,"tokenToRange");o(Lp,"toDocumentSegment");(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Vc||(Vc={}));o(Ife,"compareRange");o(XI,"inRange");RE=/^[\w\p{L}]$/u;o(wWe,"findDeclarationNodeAtOffset");o(jI,"findCommentNode");o(WI,"isCommentNode");o(KI,"findLeafNodeAtOffset");o(Ofe,"findLeafNodeBeforeOffset");o(Pfe,"binarySearch");o(Bfe,"getPreviousNode");o(kWe,"getNextNode");o(EWe,"getStartlineNode");o(SWe,"getInteriorNodes");o(CWe,"getCommonParent");o(Mfe,"getParentChain")});function Uc(t){throw new Error("Error! The input value was not handled.")}var Rp,ME=M(()=>{"use strict";Rp=class extends Error{static{o(this,"ErrorWithLocation")}constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};o(Uc,"assertUnreachable")});var Gx={};dr(Gx,{AbstractElement:()=>wg,AbstractRule:()=>bg,AbstractType:()=>Tg,Action:()=>Gg,Alternatives:()=>Vg,ArrayLiteral:()=>kg,ArrayType:()=>Eg,Assignment:()=>Ug,BooleanLiteral:()=>Sg,CharacterRange:()=>Hg,Condition:()=>Mx,Conjunction:()=>Cg,CrossReference:()=>qg,Disjunction:()=>Ag,EndOfFile:()=>Wg,Grammar:()=>_g,GrammarImport:()=>Ox,Group:()=>Yg,InferredType:()=>Dg,Interface:()=>Lg,Keyword:()=>Xg,LangiumGrammarAstReflection:()=>i1,LangiumGrammarTerminals:()=>AWe,NamedArgument:()=>Px,NegatedToken:()=>jg,Negation:()=>Rg,NumberLiteral:()=>Ng,Parameter:()=>Mg,ParameterReference:()=>Ig,ParserRule:()=>Og,ReferenceType:()=>Pg,RegexToken:()=>Kg,ReturnType:()=>Bx,RuleCall:()=>Qg,SimpleType:()=>Bg,StringLiteral:()=>Fg,TerminalAlternatives:()=>Zg,TerminalGroup:()=>Jg,TerminalRule:()=>Np,TerminalRuleCall:()=>e1,Type:()=>$g,TypeAttribute:()=>Fx,TypeDefinition:()=>IE,UnionType:()=>zg,UnorderedGroup:()=>t1,UntilToken:()=>r1,ValueLiteral:()=>Ix,Wildcard:()=>n1,isAbstractElement:()=>$x,isAbstractRule:()=>_We,isAbstractType:()=>DWe,isAction:()=>qu,isAlternatives:()=>FE,isArrayLiteral:()=>IWe,isArrayType:()=>QI,isAssignment:()=>Fl,isBooleanLiteral:()=>ZI,isCharacterRange:()=>sO,isCondition:()=>LWe,isConjunction:()=>JI,isCrossReference:()=>Mp,isDisjunction:()=>eO,isEndOfFile:()=>oO,isFeatureName:()=>RWe,isGrammar:()=>OWe,isGrammarImport:()=>PWe,isGroup:()=>Of,isInferredType:()=>OE,isInterface:()=>PE,isKeyword:()=>Zo,isNamedArgument:()=>BWe,isNegatedToken:()=>lO,isNegation:()=>tO,isNumberLiteral:()=>FWe,isParameter:()=>$We,isParameterReference:()=>rO,isParserRule:()=>Va,isPrimitiveType:()=>Ffe,isReferenceType:()=>nO,isRegexToken:()=>cO,isReturnType:()=>iO,isRuleCall:()=>$l,isSimpleType:()=>BE,isStringLiteral:()=>zWe,isTerminalAlternatives:()=>uO,isTerminalGroup:()=>hO,isTerminalRule:()=>mo,isTerminalRuleCall:()=>$E,isType:()=>zx,isTypeAttribute:()=>GWe,isTypeDefinition:()=>NWe,isUnionType:()=>aO,isUnorderedGroup:()=>zE,isUntilToken:()=>fO,isValueLiteral:()=>MWe,isWildcard:()=>dO,reflection:()=>pr});function _We(t){return pr.isInstance(t,bg)}function DWe(t){return pr.isInstance(t,Tg)}function LWe(t){return pr.isInstance(t,Mx)}function RWe(t){return Ffe(t)||t==="current"||t==="entry"||t==="extends"||t==="false"||t==="fragment"||t==="grammar"||t==="hidden"||t==="import"||t==="interface"||t==="returns"||t==="terminal"||t==="true"||t==="type"||t==="infer"||t==="infers"||t==="with"||typeof t=="string"&&/\^?[_a-zA-Z][\w_]*/.test(t)}function Ffe(t){return t==="string"||t==="number"||t==="boolean"||t==="Date"||t==="bigint"}function NWe(t){return pr.isInstance(t,IE)}function MWe(t){return pr.isInstance(t,Ix)}function $x(t){return pr.isInstance(t,wg)}function IWe(t){return pr.isInstance(t,kg)}function QI(t){return pr.isInstance(t,Eg)}function ZI(t){return pr.isInstance(t,Sg)}function JI(t){return pr.isInstance(t,Cg)}function eO(t){return pr.isInstance(t,Ag)}function OWe(t){return pr.isInstance(t,_g)}function PWe(t){return pr.isInstance(t,Ox)}function OE(t){return pr.isInstance(t,Dg)}function PE(t){return pr.isInstance(t,Lg)}function BWe(t){return pr.isInstance(t,Px)}function tO(t){return pr.isInstance(t,Rg)}function FWe(t){return pr.isInstance(t,Ng)}function $We(t){return pr.isInstance(t,Mg)}function rO(t){return pr.isInstance(t,Ig)}function Va(t){return pr.isInstance(t,Og)}function nO(t){return pr.isInstance(t,Pg)}function iO(t){return pr.isInstance(t,Bx)}function BE(t){return pr.isInstance(t,Bg)}function zWe(t){return pr.isInstance(t,Fg)}function mo(t){return pr.isInstance(t,Np)}function zx(t){return pr.isInstance(t,$g)}function GWe(t){return pr.isInstance(t,Fx)}function aO(t){return pr.isInstance(t,zg)}function qu(t){return pr.isInstance(t,Gg)}function FE(t){return pr.isInstance(t,Vg)}function Fl(t){return pr.isInstance(t,Ug)}function sO(t){return pr.isInstance(t,Hg)}function Mp(t){return pr.isInstance(t,qg)}function oO(t){return pr.isInstance(t,Wg)}function Of(t){return pr.isInstance(t,Yg)}function Zo(t){return pr.isInstance(t,Xg)}function lO(t){return pr.isInstance(t,jg)}function cO(t){return pr.isInstance(t,Kg)}function $l(t){return pr.isInstance(t,Qg)}function uO(t){return pr.isInstance(t,Zg)}function hO(t){return pr.isInstance(t,Jg)}function $E(t){return pr.isInstance(t,e1)}function zE(t){return pr.isInstance(t,t1)}function fO(t){return pr.isInstance(t,r1)}function dO(t){return pr.isInstance(t,n1)}var AWe,bg,Tg,Mx,IE,Ix,wg,kg,Eg,Sg,Cg,Ag,_g,Ox,Dg,Lg,Px,Rg,Ng,Mg,Ig,Og,Pg,Bx,Bg,Fg,Np,$g,Fx,zg,Gg,Vg,Ug,Hg,qg,Wg,Yg,Xg,jg,Kg,Qg,Zg,Jg,e1,t1,r1,n1,i1,pr,Hc=M(()=>{"use strict";Pl();AWe={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},bg="AbstractRule";o(_We,"isAbstractRule");Tg="AbstractType";o(DWe,"isAbstractType");Mx="Condition";o(LWe,"isCondition");o(RWe,"isFeatureName");o(Ffe,"isPrimitiveType");IE="TypeDefinition";o(NWe,"isTypeDefinition");Ix="ValueLiteral";o(MWe,"isValueLiteral");wg="AbstractElement";o($x,"isAbstractElement");kg="ArrayLiteral";o(IWe,"isArrayLiteral");Eg="ArrayType";o(QI,"isArrayType");Sg="BooleanLiteral";o(ZI,"isBooleanLiteral");Cg="Conjunction";o(JI,"isConjunction");Ag="Disjunction";o(eO,"isDisjunction");_g="Grammar";o(OWe,"isGrammar");Ox="GrammarImport";o(PWe,"isGrammarImport");Dg="InferredType";o(OE,"isInferredType");Lg="Interface";o(PE,"isInterface");Px="NamedArgument";o(BWe,"isNamedArgument");Rg="Negation";o(tO,"isNegation");Ng="NumberLiteral";o(FWe,"isNumberLiteral");Mg="Parameter";o($We,"isParameter");Ig="ParameterReference";o(rO,"isParameterReference");Og="ParserRule";o(Va,"isParserRule");Pg="ReferenceType";o(nO,"isReferenceType");Bx="ReturnType";o(iO,"isReturnType");Bg="SimpleType";o(BE,"isSimpleType");Fg="StringLiteral";o(zWe,"isStringLiteral");Np="TerminalRule";o(mo,"isTerminalRule");$g="Type";o(zx,"isType");Fx="TypeAttribute";o(GWe,"isTypeAttribute");zg="UnionType";o(aO,"isUnionType");Gg="Action";o(qu,"isAction");Vg="Alternatives";o(FE,"isAlternatives");Ug="Assignment";o(Fl,"isAssignment");Hg="CharacterRange";o(sO,"isCharacterRange");qg="CrossReference";o(Mp,"isCrossReference");Wg="EndOfFile";o(oO,"isEndOfFile");Yg="Group";o(Of,"isGroup");Xg="Keyword";o(Zo,"isKeyword");jg="NegatedToken";o(lO,"isNegatedToken");Kg="RegexToken";o(cO,"isRegexToken");Qg="RuleCall";o($l,"isRuleCall");Zg="TerminalAlternatives";o(uO,"isTerminalAlternatives");Jg="TerminalGroup";o(hO,"isTerminalGroup");e1="TerminalRuleCall";o($E,"isTerminalRuleCall");t1="UnorderedGroup";o(zE,"isUnorderedGroup");r1="UntilToken";o(fO,"isUntilToken");n1="Wildcard";o(dO,"isWildcard");i1=class extends Ap{static{o(this,"LangiumGrammarAstReflection")}getAllTypes(){return[wg,bg,Tg,Gg,Vg,kg,Eg,Ug,Sg,Hg,Mx,Cg,qg,Ag,Wg,_g,Ox,Yg,Dg,Lg,Xg,Px,jg,Rg,Ng,Mg,Ig,Og,Pg,Kg,Bx,Qg,Bg,Fg,Zg,Jg,Np,e1,$g,Fx,IE,zg,t1,r1,Ix,n1]}computeIsSubtype(e,r){switch(e){case Gg:case Vg:case Ug:case Hg:case qg:case Wg:case Yg:case Xg:case jg:case Kg:case Qg:case Zg:case Jg:case e1:case t1:case r1:case n1:return this.isSubtype(wg,r);case kg:case Ng:case Fg:return this.isSubtype(Ix,r);case Eg:case Pg:case Bg:case zg:return this.isSubtype(IE,r);case Sg:return this.isSubtype(Mx,r)||this.isSubtype(Ix,r);case Cg:case Ag:case Rg:case Ig:return this.isSubtype(Mx,r);case Dg:case Lg:case $g:return this.isSubtype(Tg,r);case Og:return this.isSubtype(bg,r)||this.isSubtype(Tg,r);case Np:return this.isSubtype(bg,r);default:return!1}}getReferenceType(e){let r=`${e.container.$type}:${e.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return Tg;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return bg;case"Grammar:usedGrammars":return _g;case"NamedArgument:parameter":case"ParameterReference:parameter":return Mg;case"TerminalRuleCall:rule":return Np;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case wg:return{name:wg,properties:[{name:"cardinality"},{name:"lookahead"}]};case kg:return{name:kg,properties:[{name:"elements",defaultValue:[]}]};case Eg:return{name:Eg,properties:[{name:"elementType"}]};case Sg:return{name:Sg,properties:[{name:"true",defaultValue:!1}]};case Cg:return{name:Cg,properties:[{name:"left"},{name:"right"}]};case Ag:return{name:Ag,properties:[{name:"left"},{name:"right"}]};case _g:return{name:_g,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case Ox:return{name:Ox,properties:[{name:"path"}]};case Dg:return{name:Dg,properties:[{name:"name"}]};case Lg:return{name:Lg,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case Px:return{name:Px,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case Rg:return{name:Rg,properties:[{name:"value"}]};case Ng:return{name:Ng,properties:[{name:"value"}]};case Mg:return{name:Mg,properties:[{name:"name"}]};case Ig:return{name:Ig,properties:[{name:"parameter"}]};case Og:return{name:Og,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case Pg:return{name:Pg,properties:[{name:"referenceType"}]};case Bx:return{name:Bx,properties:[{name:"name"}]};case Bg:return{name:Bg,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case Fg:return{name:Fg,properties:[{name:"value"}]};case Np:return{name:Np,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case $g:return{name:$g,properties:[{name:"name"},{name:"type"}]};case Fx:return{name:Fx,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case zg:return{name:zg,properties:[{name:"types",defaultValue:[]}]};case Gg:return{name:Gg,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case Vg:return{name:Vg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Ug:return{name:Ug,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case Hg:return{name:Hg,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case qg:return{name:qg,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case Wg:return{name:Wg,properties:[{name:"cardinality"},{name:"lookahead"}]};case Yg:return{name:Yg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case Xg:return{name:Xg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case jg:return{name:jg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case Kg:return{name:Kg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case Qg:return{name:Qg,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case Zg:return{name:Zg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Jg:return{name:Jg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case e1:return{name:e1,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case t1:return{name:t1,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case r1:return{name:r1,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case n1:return{name:n1,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}},pr=new i1});var VE={};dr(VE,{assignMandatoryProperties:()=>gO,copyAstNode:()=>mO,findLocalReferences:()=>UWe,findRootNode:()=>Vx,getContainerOfType:()=>Ip,getDocument:()=>Ua,hasContainerOfType:()=>VWe,linkContentToContainer:()=>GE,streamAllContents:()=>qc,streamAst:()=>Jo,streamContents:()=>Ux,streamReferences:()=>a1});function GE(t){for(let[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{li(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):li(r)&&(r.$container=t,r.$containerProperty=e))}function Ip(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function VWe(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function Ua(t){let r=Vx(t).$document;if(!r)throw new Error("AST node has no document.");return r}function Vx(t){for(;t.$container;)t=t.$container;return t}function Ux(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new po(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexUx(r,e))}function Jo(t,e){if(t){if(e?.range&&!pO(t,e.range))return new Gc(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new Gc(t,r=>Ux(r,e),{includeRoot:!0})}function pO(t,e){var r;if(!e)return!0;let n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?XI(n,e):!1}function a1(t){return new po(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex{a1(n).forEach(i=>{i.reference.ref===t&&r.push(i.reference)})}),an(r)}function gO(t,e){let r=t.getTypeMetaData(e.$type),n=e;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=$fe(i.defaultValue))}function $fe(t){return Array.isArray(t)?[...t.map($fe)]:t}function mO(t,e){let r={$type:t.$type};for(let[n,i]of Object.entries(t))if(!n.startsWith("$"))if(li(i))r[n]=mO(i,e);else if(wa(i))r[n]=e(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)li(s)?a.push(mO(s,e)):wa(s)?a.push(e(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return GE(r),r}var hs=M(()=>{"use strict";Pl();Ys();Bl();o(GE,"linkContentToContainer");o(Ip,"getContainerOfType");o(VWe,"hasContainerOfType");o(Ua,"getDocument");o(Vx,"findRootNode");o(Ux,"streamContents");o(qc,"streamAllContents");o(Jo,"streamAst");o(pO,"isAstNodeInRange");o(a1,"streamReferences");o(UWe,"findLocalReferences");o(gO,"assignMandatoryProperties");o($fe,"copyDefaultValue");o(mO,"copyAstNode")});function lr(t){return t.charCodeAt(0)}function UE(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function s1(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function Op(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function Hx(){throw Error("Internal Error - Should never get here!")}function yO(t){return t.type==="Character"}var vO=M(()=>{"use strict";o(lr,"cc");o(UE,"insertToSet");o(s1,"addFlag");o(Op,"ASSERT_EXISTS");o(Hx,"ASSERT_NEVER_REACH_HERE");o(yO,"isCharacter")});var qx,Wx,xO,zfe=M(()=>{"use strict";vO();qx=[];for(let t=lr("0");t<=lr("9");t++)qx.push(t);Wx=[lr("_")].concat(qx);for(let t=lr("a");t<=lr("z");t++)Wx.push(t);for(let t=lr("A");t<=lr("Z");t++)Wx.push(t);xO=[lr(" "),lr("\f"),lr(` -`),lr("\r"),lr(" "),lr("\v"),lr(" "),lr("\xA0"),lr("\u1680"),lr("\u2000"),lr("\u2001"),lr("\u2002"),lr("\u2003"),lr("\u2004"),lr("\u2005"),lr("\u2006"),lr("\u2007"),lr("\u2008"),lr("\u2009"),lr("\u200A"),lr("\u2028"),lr("\u2029"),lr("\u202F"),lr("\u205F"),lr("\u3000"),lr("\uFEFF")]});var HWe,HE,qWe,Pp,Gfe=M(()=>{"use strict";vO();zfe();HWe=/[0-9a-fA-F]/,HE=/[0-9]/,qWe=/[1-9]/,Pp=class{static{o(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":s1(n,"global");break;case"i":s1(n,"ignoreCase");break;case"m":s1(n,"multiLine");break;case"u":s1(n,"unicode");break;case"y":s1(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}Op(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return Hx()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;Op(r);break}if(!(e===!0&&r===void 0)&&Op(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),Op(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Hx()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[lr(` -`),lr("\r"),lr("\u2028"),lr("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=qx;break;case"D":e=qx,r=!0;break;case"s":e=xO;break;case"S":e=xO,r=!0;break;case"w":e=Wx;break;case"W":e=Wx,r=!0;break}return Op(e)?{type:"Set",value:e,complement:r}:Hx()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=lr("\f");break;case"n":e=lr(` -`);break;case"r":e=lr("\r");break;case"t":e=lr(" ");break;case"v":e=lr("\v");break}return Op(e)?{type:"Character",value:e}:Hx()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:lr("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:lr(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` -`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:lr(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(yO(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(yO(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}});var Wc,Vfe=M(()=>{"use strict";Wc=class{static{o(this,"BaseRegExpVisitor")}visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}});var Yx=M(()=>{"use strict";Gfe();Vfe()});var qE={};dr(qE,{NEWLINE_REGEXP:()=>TO,escapeRegExp:()=>Fp,getCaseInsensitivePattern:()=>kO,getTerminalParts:()=>WWe,isMultilineComment:()=>wO,isWhitespace:()=>o1,partialMatches:()=>EO,partialRegExp:()=>qfe,whitespaceCharacters:()=>Hfe});function WWe(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=Ufe.pattern(t),r=[];for(let n of e.value.value)Bp.reset(t),Bp.visit(n),r.push({start:Bp.startRegexp,end:Bp.endRegex});return r}catch{return[]}}function wO(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),Bp.reset(t),Bp.visit(Ufe.pattern(t)),Bp.multiline}catch{return!1}}function o1(t){let e=typeof t=="string"?new RegExp(t):t;return Hfe.some(r=>e.test(r))}function Fp(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function kO(t){return Array.prototype.map.call(t,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:Fp(e)).join("")}function EO(t,e){let r=qfe(t),n=e.match(r);return!!n&&n[0].length>0}function qfe(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let a="",s;function l(h){a+=r.substr(n,h),n+=h}o(l,"appendRaw");function u(h){a+="(?:"+r.substr(n,h)+"|$)",n+=h}for(o(u,"appendOptional");n",n)-n+1);break;default:u(2);break}break;case"[":s=/\[(?:\\.|.)*?\]/g,s.lastIndex=n,s=s.exec(r)||[],u(s[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":l(1);break;case"{":s=/\{\d+,?\d*\}/g,s.lastIndex=n,s=s.exec(r),s?l(s[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":s=n,n+=3,i(),a+=r.substr(s,n-s);break;case"<":switch(r[n+3]){case"=":case"!":s=n,n+=4,i(),a+=r.substr(s,n-s);break;default:l(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else l(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return o(i,"process"),new RegExp(i(),t.flags)}var TO,Ufe,bO,Bp,Hfe,l1=M(()=>{"use strict";Yx();TO=/\r?\n/gm,Ufe=new Pp,bO=class extends Wc{static{o(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let r=String.fromCharCode(e.value);if(!this.multiline&&r===` -`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=Fp(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!` -`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},Bp=new bO;o(WWe,"getTerminalParts");o(wO,"isMultilineComment");Hfe=`\f -\r \v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");o(o1,"isWhitespace");o(Fp,"escapeRegExp");o(kO,"getCaseInsensitivePattern");o(EO,"partialMatches");o(qfe,"partialRegExp")});var YE={};dr(YE,{findAssignment:()=>MO,findNameAssignment:()=>WE,findNodeForKeyword:()=>RO,findNodeForProperty:()=>jx,findNodesForKeyword:()=>YWe,findNodesForKeywordInternal:()=>NO,findNodesForProperty:()=>DO,getActionAtElement:()=>Kfe,getActionType:()=>Zfe,getAllReachableRules:()=>Xx,getCrossReferenceTerminal:()=>AO,getEntryRule:()=>Wfe,getExplicitRuleType:()=>c1,getHiddenRules:()=>Yfe,getRuleType:()=>IO,getRuleTypeName:()=>ZWe,getTypeName:()=>Qx,isArrayCardinality:()=>jWe,isArrayOperator:()=>KWe,isCommentTerminal:()=>_O,isDataType:()=>QWe,isDataTypeRule:()=>Kx,isOptionalCardinality:()=>XWe,terminalRegex:()=>u1});function Wfe(t){return t.rules.find(e=>Va(e)&&e.entry)}function Yfe(t){return t.rules.filter(e=>mo(e)&&e.hidden)}function Xx(t,e){let r=new Set,n=Wfe(t);if(!n)return new Set(t.rules);let i=[n].concat(Yfe(t));for(let s of i)Xfe(s,r,e);let a=new Set;for(let s of t.rules)(r.has(s.name)||mo(s)&&s.hidden)&&a.add(s);return a}function Xfe(t,e,r){e.add(t.name),qc(t).forEach(n=>{if($l(n)||r&&$E(n)){let i=n.rule.ref;i&&!e.has(i.name)&&Xfe(i,e,r)}})}function AO(t){if(t.terminal)return t.terminal;if(t.type.ref){let e=WE(t.type.ref);return e?.terminal}}function _O(t){return t.hidden&&!o1(u1(t))}function DO(t,e){return!t||!e?[]:LO(t,e,t.astNode,!0)}function jx(t,e,r){if(!t||!e)return;let n=LO(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function LO(t,e,r,n){if(!n){let i=Ip(t.grammarSource,Fl);if(i&&i.feature===e)return[t]}return Ol(t)&&t.astNode===r?t.content.flatMap(i=>LO(i,e,r,!1)):[]}function YWe(t,e){return t?NO(t,e,t?.astNode):[]}function RO(t,e,r){if(!t)return;let n=NO(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function NO(t,e,r){if(t.astNode!==r)return[];if(Zo(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Dp(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Zo(s.grammarSource)&&s.grammarSource.value===e&&a.push(s):n.prune()}while(!i.done);return a}function MO(t){var e;let r=t.astNode;for(;r===((e=t.container)===null||e===void 0?void 0:e.astNode);){let n=Ip(t.grammarSource,Fl);if(n)return n;t=t.container}}function WE(t){let e=t;return OE(e)&&(qu(e.$container)?e=e.$container.$container:Va(e.$container)?e=e.$container:Uc(e.$container)),jfe(t,e,new Map)}function jfe(t,e,r){var n;function i(a,s){let l;return Ip(a,Fl)||(l=jfe(s,s,r)),r.set(t,l),l}if(o(i,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(let a of qc(e)){if(Fl(a)&&a.feature.toLowerCase()==="name")return r.set(t,a),a;if($l(a)&&Va(a.rule.ref))return i(a,a.rule.ref);if(BE(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function Kfe(t){let e=t.$container;if(Of(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(qu(a))return a;{let s=qc(r[i]).find(qu);if(s)return s}}}if($x(e))return Kfe(e)}function XWe(t,e){return t==="?"||t==="*"||Of(e)&&!!e.guardCondition}function jWe(t){return t==="*"||t==="+"}function KWe(t){return t==="+="}function Kx(t){return Qfe(t,new Set)}function Qfe(t,e){if(e.has(t))return!0;e.add(t);for(let r of qc(t))if($l(r)){if(!r.rule.ref||Va(r.rule.ref)&&!Qfe(r.rule.ref,e))return!1}else{if(Fl(r))return!1;if(qu(r))return!1}return!!t.definition}function QWe(t){return CO(t.type,new Set)}function CO(t,e){if(e.has(t))return!0;if(e.add(t),QI(t))return!1;if(nO(t))return!1;if(aO(t))return t.types.every(r=>CO(r,e));if(BE(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return zx(r)?CO(r.type,e):!1}else return!1}else return!1}function c1(t){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e){if(Va(e))return e.name;if(PE(e)||zx(e))return e.name}}}function Qx(t){var e;if(Va(t))return Kx(t)?t.name:(e=c1(t))!==null&&e!==void 0?e:t.name;if(PE(t)||zx(t)||iO(t))return t.name;if(qu(t)){let r=Zfe(t);if(r)return r}else if(OE(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Zfe(t){var e;if(t.inferredType)return t.inferredType.name;if(!((e=t.type)===null||e===void 0)&&e.ref)return Qx(t.type.ref)}function ZWe(t){var e,r,n;return mo(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":Kx(t)?t.name:(n=c1(t))!==null&&n!==void 0?n:t.name}function IO(t){var e,r,n;return mo(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":(n=c1(t))!==null&&n!==void 0?n:t.name}function u1(t){let e={s:!1,i:!1,u:!1},r=h1(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function h1(t,e){if(uO(t))return JWe(t);if(hO(t))return eYe(t);if(sO(t))return nYe(t);if($E(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return Wu(h1(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}else{if(lO(t))return rYe(t);if(fO(t))return tYe(t);if(cO(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),Wu(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else{if(dO(t))return Wu(OO,{cardinality:t.cardinality,lookahead:t.lookahead});throw new Error(`Invalid terminal element: ${t?.$type}`)}}}function JWe(t){return Wu(t.elements.map(e=>h1(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead})}function eYe(t){return Wu(t.elements.map(e=>h1(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead})}function tYe(t){return Wu(`${OO}*?${h1(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead})}function rYe(t){return Wu(`(?!${h1(t.terminal)})${OO}*?`,{cardinality:t.cardinality,lookahead:t.lookahead})}function nYe(t){return t.right?Wu(`[${SO(t.left)}-${SO(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1}):Wu(SO(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}function SO(t){return Fp(t.value)}function Wu(t,e){var r;return(e.wrap!==!1||e.lookahead)&&(t=`(${(r=e.lookahead)!==null&&r!==void 0?r:""}${t})`),e.cardinality?`${t}${e.cardinality}`:t}var OO,zl=M(()=>{"use strict";ME();Hc();Pl();hs();Bl();l1();o(Wfe,"getEntryRule");o(Yfe,"getHiddenRules");o(Xx,"getAllReachableRules");o(Xfe,"ruleDfs");o(AO,"getCrossReferenceTerminal");o(_O,"isCommentTerminal");o(DO,"findNodesForProperty");o(jx,"findNodeForProperty");o(LO,"findNodesForPropertyInternal");o(YWe,"findNodesForKeyword");o(RO,"findNodeForKeyword");o(NO,"findNodesForKeywordInternal");o(MO,"findAssignment");o(WE,"findNameAssignment");o(jfe,"findNameAssignmentInternal");o(Kfe,"getActionAtElement");o(XWe,"isOptionalCardinality");o(jWe,"isArrayCardinality");o(KWe,"isArrayOperator");o(Kx,"isDataTypeRule");o(Qfe,"isDataTypeRuleInternal");o(QWe,"isDataType");o(CO,"isDataTypeInternal");o(c1,"getExplicitRuleType");o(Qx,"getTypeName");o(Zfe,"getActionType");o(ZWe,"getRuleTypeName");o(IO,"getRuleType");o(u1,"terminalRegex");OO=/[\s\S]/.source;o(h1,"abstractElementToRegex");o(JWe,"terminalAlternativesToRegex");o(eYe,"terminalGroupToRegex");o(tYe,"untilTokenToRegex");o(rYe,"negateTokenToRegex");o(nYe,"characterRangeToRegex");o(SO,"keywordToRegex");o(Wu,"withCardinality")});function PO(t){let e=[],r=t.Grammar;for(let n of r.rules)mo(n)&&_O(n)&&wO(u1(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:RE}}var BO=M(()=>{"use strict";Bl();zl();l1();Hc();o(PO,"createGrammarConfig")});var FO=M(()=>{"use strict"});function f1(t){console&&console.error&&console.error(`Error: ${t}`)}function Zx(t){console&&console.warn&&console.warn(`Warning: ${t}`)}var Jfe=M(()=>{"use strict";o(f1,"PRINT_ERROR");o(Zx,"PRINT_WARNING")});function Jx(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}var ede=M(()=>{"use strict";o(Jx,"timer")});function eb(t){function e(){}o(e,"FakeConstructor"),e.prototype=t;let r=new e;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),t;(0,eval)(t)}var tde=M(()=>{"use strict";o(eb,"toFastProperties")});var d1=M(()=>{"use strict";Jfe();ede();tde()});function iYe(t){return aYe(t)?t.LABEL:t.name}function aYe(t){return xi(t.LABEL)&&t.LABEL!==""}function XE(t){return rt(t,p1)}function p1(t){function e(r){return rt(r,p1)}if(o(e,"convertDefinition"),t instanceof fn){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return xi(t.label)&&(r.label=t.label),r}else{if(t instanceof Pn)return{type:"Alternative",definition:e(t.definition)};if(t instanceof dn)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Bn)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Fn)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:p1(new Ar({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof _n)return{type:"RepetitionWithSeparator",idx:t.idx,separator:p1(new Ar({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof zr)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof Dn)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Ar){let r={type:"Terminal",name:t.terminalType.name,label:iYe(t.terminalType),idx:t.idx};xi(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=Uo(n)?n.source:n),r}else{if(t instanceof fs)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var go,fn,fs,Pn,dn,Bn,Fn,zr,_n,Dn,Ar,jE=M(()=>{"use strict";Yt();o(iYe,"tokenLabel");o(aYe,"hasTokenLabel");go=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),Ae(this.definition,r=>{r.accept(e)})}},fn=class extends go{static{o(this,"NonTerminal")}constructor(e){super([]),this.idx=1,ma(this,Vs(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},fs=class extends go{static{o(this,"Rule")}constructor(e){super(e.definition),this.orgText="",ma(this,Vs(e,r=>r!==void 0))}},Pn=class extends go{static{o(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,ma(this,Vs(e,r=>r!==void 0))}},dn=class extends go{static{o(this,"Option")}constructor(e){super(e.definition),this.idx=1,ma(this,Vs(e,r=>r!==void 0))}},Bn=class extends go{static{o(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,ma(this,Vs(e,r=>r!==void 0))}},Fn=class extends go{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,ma(this,Vs(e,r=>r!==void 0))}},zr=class extends go{static{o(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,ma(this,Vs(e,r=>r!==void 0))}},_n=class extends go{static{o(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,ma(this,Vs(e,r=>r!==void 0))}},Dn=class extends go{static{o(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,ma(this,Vs(e,r=>r!==void 0))}},Ar=class{static{o(this,"Terminal")}constructor(e){this.idx=1,ma(this,Vs(e,r=>r!==void 0))}accept(e){e.visit(this)}};o(XE,"serializeGrammar");o(p1,"serializeProduction")});var ds,rde=M(()=>{"use strict";jE();ds=class{static{o(this,"GAstVisitor")}visit(e){let r=e;switch(r.constructor){case fn:return this.visitNonTerminal(r);case Pn:return this.visitAlternative(r);case dn:return this.visitOption(r);case Bn:return this.visitRepetitionMandatory(r);case Fn:return this.visitRepetitionMandatoryWithSeparator(r);case _n:return this.visitRepetitionWithSeparator(r);case zr:return this.visitRepetition(r);case Dn:return this.visitAlternation(r);case Ar:return this.visitTerminal(r);case fs:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}});function $O(t){return t instanceof Pn||t instanceof dn||t instanceof zr||t instanceof Bn||t instanceof Fn||t instanceof _n||t instanceof Ar||t instanceof fs}function $p(t,e=[]){return t instanceof dn||t instanceof zr||t instanceof _n?!0:t instanceof Dn?G2(t.definition,n=>$p(n,e)):t instanceof fn&&jn(e,t)?!1:t instanceof go?(t instanceof fn&&e.push(t),Ba(t.definition,n=>$p(n,e))):!1}function zO(t){return t instanceof Dn}function Xs(t){if(t instanceof fn)return"SUBRULE";if(t instanceof dn)return"OPTION";if(t instanceof Dn)return"OR";if(t instanceof Bn)return"AT_LEAST_ONE";if(t instanceof Fn)return"AT_LEAST_ONE_SEP";if(t instanceof _n)return"MANY_SEP";if(t instanceof zr)return"MANY";if(t instanceof Ar)return"CONSUME";throw Error("non exhaustive match")}var nde=M(()=>{"use strict";Yt();jE();o($O,"isSequenceProd");o($p,"isOptionalProd");o(zO,"isBranchingProd");o(Xs,"getProductionDslName")});var ps=M(()=>{"use strict";jE();rde();nde()});function ide(t,e,r){return[new dn({definition:[new Ar({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}var Yu,KE=M(()=>{"use strict";Yt();ps();Yu=class{static{o(this,"RestWalker")}walk(e,r=[]){Ae(e.definition,(n,i)=>{let a=yi(e.definition,i+1);if(n instanceof fn)this.walkProdRef(n,a,r);else if(n instanceof Ar)this.walkTerminal(n,a,r);else if(n instanceof Pn)this.walkFlat(n,a,r);else if(n instanceof dn)this.walkOption(n,a,r);else if(n instanceof Bn)this.walkAtLeastOne(n,a,r);else if(n instanceof Fn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof _n)this.walkManySep(n,a,r);else if(n instanceof zr)this.walkMany(n,a,r);else if(n instanceof Dn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new dn({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=ide(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new dn({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=ide(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);Ae(e.definition,a=>{let s=new Pn({definition:[a]});this.walk(s,i)})}};o(ide,"restForRepetitionWithSeparator")});function zp(t){if(t instanceof fn)return zp(t.referencedRule);if(t instanceof Ar)return lYe(t);if($O(t))return sYe(t);if(zO(t))return oYe(t);throw Error("non exhaustive match")}function sYe(t){let e=[],r=t.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=$p(a),e=e.concat(zp(a)),n=n+1,i=r.length>n;return qm(e)}function oYe(t){let e=rt(t.definition,r=>zp(r));return qm(Qr(e))}function lYe(t){return[t.terminalType]}var GO=M(()=>{"use strict";Yt();ps();o(zp,"first");o(sYe,"firstForSequence");o(oYe,"firstForBranching");o(lYe,"firstForTerminal")});var QE,VO=M(()=>{"use strict";QE="_~IN~_"});function ade(t){let e={};return Ae(t,r=>{let n=new UO(r).startWalking();ma(e,n)}),e}function cYe(t,e){return t.name+e+QE}var UO,sde=M(()=>{"use strict";KE();GO();Yt();VO();ps();UO=class extends Yu{static{o(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=cYe(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),s=new Pn({definition:a}),l=zp(s);this.follows[i]=l}};o(ade,"computeAllProdsFollows");o(cYe,"buildBetweenProdsFollowPrefix")});function m1(t){let e=t.toString();if(ZE.hasOwnProperty(e))return ZE[e];{let r=uYe.pattern(e);return ZE[e]=r,r}}function ode(){ZE={}}var ZE,uYe,JE=M(()=>{"use strict";Yx();ZE={},uYe=new Pp;o(m1,"getRegExpAst");o(ode,"clearRegExpParserCache")});function ude(t,e=!1){try{let r=m1(t);return HO(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===cde)e&&Zx(`${tb} Unable to optimize: < ${t.toString()} > +`,"getStyles"),fge=bJe});var pge={};vr(pge,{diagram:()=>TJe});var TJe,mge=I(()=>{"use strict";cge();uge();hge();dge();TJe={parser:lge,get db(){return new fC},renderer:xB,styles:fge}});function bi(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function ra(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function Go(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function bB(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function W0(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}function pc(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function _d(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function e4(t){return pc(t)&&typeof t.fullText=="string"}var U0,mc=I(()=>{"use strict";o(bi,"isAstNode");o(ra,"isReference");o(Go,"isMultiReference");o(bB,"isAstNodeDescription");o(W0,"isLinkingError");U0=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){let r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);let n=r.properties[e.property]?.referenceType;if(!n)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){let r=this.types[e];return r||{name:e,properties:{},superTypes:[]}}isInstance(e,r){return bi(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let a=this.types[e],s=a?a.superTypes.some(l=>this.isSubtype(l,r)):!1;return n[r]=s,s}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}};o(pc,"isCompositeCstNode");o(_d,"isLeafCstNode");o(e4,"isRootCstNode")});function CJe(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function dC(t){return!!t&&typeof t[Symbol.iterator]=="function"}function Or(...t){if(t.length===1){let e=t[0];if(e instanceof Vo)return e;if(dC(e))return new Vo(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new Vo(()=>({index:0}),r=>r.index1?new Vo(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex{"use strict";Vo=class t{static{o(this,"StreamImpl")}constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return ss})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=CJe(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?ss:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return ss})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=e(i);if(dC(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return ss})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(dC(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return ss})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?ss:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return ss})}exclude(e,r){let n=new Set;for(let i of e){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(CJe,"toString");o(dC,"isIterable");Dd=new Vo(()=>{},()=>ss),ss=Object.freeze({done:!0,value:void 0});o(Or,"stream");Eu=class extends Vo{static{o(this,"TreeStreamImpl")}constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return ss})}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),prune:o(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};(function(t){function e(a){return a.reduce((s,l)=>s+l,0)}o(e,"sum"),t.sum=e;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),t.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),t.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),t.max=i})(ty||(ty={}))});var mC={};vr(mC,{assignMandatoryProperties:()=>kB,copyAstNode:()=>wB,findRootNode:()=>ny,getContainerOfType:()=>Ih,getDocument:()=>os,getReferenceNodes:()=>pC,hasContainerOfType:()=>AJe,linkContentToContainer:()=>ry,streamAllContents:()=>gc,streamAst:()=>Is,streamContents:()=>t4,streamReferences:()=>Rd});function ry(t,e={}){for(let[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((i,a)=>{bi(i)&&(i.$container=t,i.$containerProperty=r,i.$containerIndex=a,e.deep&&ry(i,e))}):bi(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&ry(n,e)))}function Ih(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function AJe(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function os(t){let r=ny(t).$document;if(!r)throw new Error("AST node has no document.");return r}function ny(t){for(;t.$container;)t=t.$container;return t}function pC(t){return ra(t)?t.ref?[t.ref]:[]:Go(t)?t.items.map(e=>e.ref):[]}function t4(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new Vo(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndext4(r,e))}function Is(t,e){if(t){if(e?.range&&!TB(t,e.range))return new Eu(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new Eu(t,r=>t4(r,e),{includeRoot:!0})}function TB(t,e){if(!e)return!0;let r=t.$cstNode?.range;return r?SB(r,e):!1}function Rd(t){return new Vo(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex{"use strict";mc();Ms();yc();o(ry,"linkContentToContainer");o(Ih,"getContainerOfType");o(AJe,"hasContainerOfType");o(os,"getDocument");o(ny,"findRootNode");o(pC,"getReferenceNodes");o(t4,"streamContents");o(gc,"streamAllContents");o(Is,"streamAst");o(TB,"isAstNodeInRange");o(Rd,"streamReferences");o(kB,"assignMandatoryProperties");o(yge,"copyDefaultValue");o(wB,"copyAstNode")});var f4={};vr(f4,{AbstractElement:()=>go,AbstractParserRule:()=>r4,AbstractRule:()=>iy,AbstractType:()=>qo,Action:()=>Ld,Alternatives:()=>n4,ArrayLiteral:()=>gC,ArrayType:()=>yC,Assignment:()=>Nd,BooleanLiteral:()=>vC,CharacterRange:()=>Md,Condition:()=>Id,Conjunction:()=>i4,CrossReference:()=>Od,Disjunction:()=>a4,EndOfFile:()=>xC,Grammar:()=>Oh,GrammarImport:()=>bC,Group:()=>H0,InferredType:()=>TC,InfixRule:()=>Cu,InfixRuleOperatorList:()=>s4,InfixRuleOperators:()=>wC,Interface:()=>ay,Keyword:()=>sy,LangiumGrammarAstReflection:()=>hy,LangiumGrammarTerminals:()=>_Je,NamedArgument:()=>oy,NegatedToken:()=>Y0,Negation:()=>kC,NumberLiteral:()=>SC,Parameter:()=>ly,ParameterReference:()=>EC,ParserRule:()=>vc,ReferenceType:()=>o4,RegexToken:()=>j0,ReturnType:()=>CC,RuleCall:()=>X0,SimpleType:()=>cy,StringLiteral:()=>AC,TerminalAlternatives:()=>K0,TerminalElement:()=>yo,TerminalGroup:()=>Q0,TerminalRule:()=>Ph,TerminalRuleCall:()=>Z0,Type:()=>l4,TypeAttribute:()=>J0,TypeDefinition:()=>em,UnionType:()=>_C,UnorderedGroup:()=>c4,UntilToken:()=>tm,ValueLiteral:()=>rm,Wildcard:()=>uy,isAbstractElement:()=>u4,isAbstractParserRule:()=>Bh,isAbstractRule:()=>DJe,isAbstractType:()=>RJe,isAction:()=>Fh,isAlternatives:()=>DC,isArrayLiteral:()=>LJe,isArrayType:()=>EB,isAssignment:()=>xc,isBooleanLiteral:()=>CB,isCharacterRange:()=>AB,isCondition:()=>NJe,isConjunction:()=>_B,isCrossReference:()=>bc,isDisjunction:()=>DB,isEndOfFile:()=>RB,isGrammar:()=>MJe,isGrammarImport:()=>IJe,isGroup:()=>Pd,isInferredType:()=>h4,isInfixRule:()=>Bd,isInfixRuleOperatorList:()=>OJe,isInfixRuleOperators:()=>PJe,isInterface:()=>LB,isKeyword:()=>Dl,isNamedArgument:()=>BJe,isNegatedToken:()=>NB,isNegation:()=>MB,isNumberLiteral:()=>FJe,isParameter:()=>$Je,isParameterReference:()=>IB,isParserRule:()=>wa,isReferenceType:()=>OB,isRegexToken:()=>PB,isReturnType:()=>BB,isRuleCall:()=>Tc,isSimpleType:()=>RC,isStringLiteral:()=>zJe,isTerminalAlternatives:()=>FB,isTerminalElement:()=>GJe,isTerminalGroup:()=>$B,isTerminalRule:()=>Os,isTerminalRuleCall:()=>LC,isType:()=>NC,isTypeAttribute:()=>VJe,isTypeDefinition:()=>qJe,isUnionType:()=>zB,isUnorderedGroup:()=>MC,isUntilToken:()=>GB,isValueLiteral:()=>UJe,isWildcard:()=>VB,reflection:()=>ur});function u4(t){return ur.isInstance(t,go.$type)}function Bh(t){return ur.isInstance(t,r4.$type)}function DJe(t){return ur.isInstance(t,iy.$type)}function RJe(t){return ur.isInstance(t,qo.$type)}function Fh(t){return ur.isInstance(t,Ld.$type)}function DC(t){return ur.isInstance(t,n4.$type)}function LJe(t){return ur.isInstance(t,gC.$type)}function EB(t){return ur.isInstance(t,yC.$type)}function xc(t){return ur.isInstance(t,Nd.$type)}function CB(t){return ur.isInstance(t,vC.$type)}function AB(t){return ur.isInstance(t,Md.$type)}function NJe(t){return ur.isInstance(t,Id.$type)}function _B(t){return ur.isInstance(t,i4.$type)}function bc(t){return ur.isInstance(t,Od.$type)}function DB(t){return ur.isInstance(t,a4.$type)}function RB(t){return ur.isInstance(t,xC.$type)}function MJe(t){return ur.isInstance(t,Oh.$type)}function IJe(t){return ur.isInstance(t,bC.$type)}function Pd(t){return ur.isInstance(t,H0.$type)}function h4(t){return ur.isInstance(t,TC.$type)}function Bd(t){return ur.isInstance(t,Cu.$type)}function OJe(t){return ur.isInstance(t,s4.$type)}function PJe(t){return ur.isInstance(t,wC.$type)}function LB(t){return ur.isInstance(t,ay.$type)}function Dl(t){return ur.isInstance(t,sy.$type)}function BJe(t){return ur.isInstance(t,oy.$type)}function NB(t){return ur.isInstance(t,Y0.$type)}function MB(t){return ur.isInstance(t,kC.$type)}function FJe(t){return ur.isInstance(t,SC.$type)}function $Je(t){return ur.isInstance(t,ly.$type)}function IB(t){return ur.isInstance(t,EC.$type)}function wa(t){return ur.isInstance(t,vc.$type)}function OB(t){return ur.isInstance(t,o4.$type)}function PB(t){return ur.isInstance(t,j0.$type)}function BB(t){return ur.isInstance(t,CC.$type)}function Tc(t){return ur.isInstance(t,X0.$type)}function RC(t){return ur.isInstance(t,cy.$type)}function zJe(t){return ur.isInstance(t,AC.$type)}function FB(t){return ur.isInstance(t,K0.$type)}function GJe(t){return ur.isInstance(t,yo.$type)}function $B(t){return ur.isInstance(t,Q0.$type)}function Os(t){return ur.isInstance(t,Ph.$type)}function LC(t){return ur.isInstance(t,Z0.$type)}function NC(t){return ur.isInstance(t,l4.$type)}function VJe(t){return ur.isInstance(t,J0.$type)}function qJe(t){return ur.isInstance(t,em.$type)}function zB(t){return ur.isInstance(t,_C.$type)}function MC(t){return ur.isInstance(t,c4.$type)}function GB(t){return ur.isInstance(t,tm.$type)}function UJe(t){return ur.isInstance(t,rm.$type)}function VB(t){return ur.isInstance(t,uy.$type)}var _Je,go,r4,iy,qo,Ld,n4,gC,yC,Nd,vC,Md,Id,i4,Od,a4,xC,Oh,bC,H0,TC,Cu,s4,wC,ay,sy,oy,Y0,kC,SC,ly,EC,vc,o4,j0,CC,X0,cy,AC,K0,yo,Q0,Ph,Z0,l4,J0,em,_C,c4,tm,rm,uy,hy,ur,Uo=I(()=>{"use strict";mc();_Je={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},go={$type:"AbstractElement",cardinality:"cardinality"};o(u4,"isAbstractElement");r4={$type:"AbstractParserRule"};o(Bh,"isAbstractParserRule");iy={$type:"AbstractRule"};o(DJe,"isAbstractRule");qo={$type:"AbstractType"};o(RJe,"isAbstractType");Ld={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};o(Fh,"isAction");n4={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};o(DC,"isAlternatives");gC={$type:"ArrayLiteral",elements:"elements"};o(LJe,"isArrayLiteral");yC={$type:"ArrayType",elementType:"elementType"};o(EB,"isArrayType");Nd={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};o(xc,"isAssignment");vC={$type:"BooleanLiteral",true:"true"};o(CB,"isBooleanLiteral");Md={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};o(AB,"isCharacterRange");Id={$type:"Condition"};o(NJe,"isCondition");i4={$type:"Conjunction",left:"left",right:"right"};o(_B,"isConjunction");Od={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};o(bc,"isCrossReference");a4={$type:"Disjunction",left:"left",right:"right"};o(DB,"isDisjunction");xC={$type:"EndOfFile",cardinality:"cardinality"};o(RB,"isEndOfFile");Oh={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};o(MJe,"isGrammar");bC={$type:"GrammarImport",path:"path"};o(IJe,"isGrammarImport");H0={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};o(Pd,"isGroup");TC={$type:"InferredType",name:"name"};o(h4,"isInferredType");Cu={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};o(Bd,"isInfixRule");s4={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};o(OJe,"isInfixRuleOperatorList");wC={$type:"InfixRuleOperators",precedences:"precedences"};o(PJe,"isInfixRuleOperators");ay={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};o(LB,"isInterface");sy={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};o(Dl,"isKeyword");oy={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};o(BJe,"isNamedArgument");Y0={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};o(NB,"isNegatedToken");kC={$type:"Negation",value:"value"};o(MB,"isNegation");SC={$type:"NumberLiteral",value:"value"};o(FJe,"isNumberLiteral");ly={$type:"Parameter",name:"name"};o($Je,"isParameter");EC={$type:"ParameterReference",parameter:"parameter"};o(IB,"isParameterReference");vc={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};o(wa,"isParserRule");o4={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};o(OB,"isReferenceType");j0={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};o(PB,"isRegexToken");CC={$type:"ReturnType",name:"name"};o(BB,"isReturnType");X0={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};o(Tc,"isRuleCall");cy={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};o(RC,"isSimpleType");AC={$type:"StringLiteral",value:"value"};o(zJe,"isStringLiteral");K0={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};o(FB,"isTerminalAlternatives");yo={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};o(GJe,"isTerminalElement");Q0={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};o($B,"isTerminalGroup");Ph={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};o(Os,"isTerminalRule");Z0={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};o(LC,"isTerminalRuleCall");l4={$type:"Type",name:"name",type:"type"};o(NC,"isType");J0={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};o(VJe,"isTypeAttribute");em={$type:"TypeDefinition"};o(qJe,"isTypeDefinition");_C={$type:"UnionType",types:"types"};o(zB,"isUnionType");c4={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};o(MC,"isUnorderedGroup");tm={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};o(GB,"isUntilToken");rm={$type:"ValueLiteral"};o(UJe,"isValueLiteral");uy={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};o(VB,"isWildcard");hy=class extends U0{static{o(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments),this.types={AbstractElement:{name:go.$type,properties:{cardinality:{name:go.cardinality}},superTypes:[]},AbstractParserRule:{name:r4.$type,properties:{},superTypes:[iy.$type,qo.$type]},AbstractRule:{name:iy.$type,properties:{},superTypes:[]},AbstractType:{name:qo.$type,properties:{},superTypes:[]},Action:{name:Ld.$type,properties:{cardinality:{name:Ld.cardinality},feature:{name:Ld.feature},inferredType:{name:Ld.inferredType},operator:{name:Ld.operator},type:{name:Ld.type,referenceType:qo.$type}},superTypes:[go.$type]},Alternatives:{name:n4.$type,properties:{cardinality:{name:n4.cardinality},elements:{name:n4.elements,defaultValue:[]}},superTypes:[go.$type]},ArrayLiteral:{name:gC.$type,properties:{elements:{name:gC.elements,defaultValue:[]}},superTypes:[rm.$type]},ArrayType:{name:yC.$type,properties:{elementType:{name:yC.elementType}},superTypes:[em.$type]},Assignment:{name:Nd.$type,properties:{cardinality:{name:Nd.cardinality},feature:{name:Nd.feature},operator:{name:Nd.operator},predicate:{name:Nd.predicate},terminal:{name:Nd.terminal}},superTypes:[go.$type]},BooleanLiteral:{name:vC.$type,properties:{true:{name:vC.true,defaultValue:!1}},superTypes:[Id.$type,rm.$type]},CharacterRange:{name:Md.$type,properties:{cardinality:{name:Md.cardinality},left:{name:Md.left},lookahead:{name:Md.lookahead},parenthesized:{name:Md.parenthesized,defaultValue:!1},right:{name:Md.right}},superTypes:[yo.$type]},Condition:{name:Id.$type,properties:{},superTypes:[]},Conjunction:{name:i4.$type,properties:{left:{name:i4.left},right:{name:i4.right}},superTypes:[Id.$type]},CrossReference:{name:Od.$type,properties:{cardinality:{name:Od.cardinality},deprecatedSyntax:{name:Od.deprecatedSyntax,defaultValue:!1},isMulti:{name:Od.isMulti,defaultValue:!1},terminal:{name:Od.terminal},type:{name:Od.type,referenceType:qo.$type}},superTypes:[go.$type]},Disjunction:{name:a4.$type,properties:{left:{name:a4.left},right:{name:a4.right}},superTypes:[Id.$type]},EndOfFile:{name:xC.$type,properties:{cardinality:{name:xC.cardinality}},superTypes:[go.$type]},Grammar:{name:Oh.$type,properties:{imports:{name:Oh.imports,defaultValue:[]},interfaces:{name:Oh.interfaces,defaultValue:[]},isDeclared:{name:Oh.isDeclared,defaultValue:!1},name:{name:Oh.name},rules:{name:Oh.rules,defaultValue:[]},types:{name:Oh.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:bC.$type,properties:{path:{name:bC.path}},superTypes:[]},Group:{name:H0.$type,properties:{cardinality:{name:H0.cardinality},elements:{name:H0.elements,defaultValue:[]},guardCondition:{name:H0.guardCondition},predicate:{name:H0.predicate}},superTypes:[go.$type]},InferredType:{name:TC.$type,properties:{name:{name:TC.name}},superTypes:[qo.$type]},InfixRule:{name:Cu.$type,properties:{call:{name:Cu.call},dataType:{name:Cu.dataType},inferredType:{name:Cu.inferredType},name:{name:Cu.name},operators:{name:Cu.operators},parameters:{name:Cu.parameters,defaultValue:[]},returnType:{name:Cu.returnType,referenceType:qo.$type}},superTypes:[r4.$type]},InfixRuleOperatorList:{name:s4.$type,properties:{associativity:{name:s4.associativity},operators:{name:s4.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:wC.$type,properties:{precedences:{name:wC.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ay.$type,properties:{attributes:{name:ay.attributes,defaultValue:[]},name:{name:ay.name},superTypes:{name:ay.superTypes,defaultValue:[],referenceType:qo.$type}},superTypes:[qo.$type]},Keyword:{name:sy.$type,properties:{cardinality:{name:sy.cardinality},predicate:{name:sy.predicate},value:{name:sy.value}},superTypes:[go.$type]},NamedArgument:{name:oy.$type,properties:{calledByName:{name:oy.calledByName,defaultValue:!1},parameter:{name:oy.parameter,referenceType:ly.$type},value:{name:oy.value}},superTypes:[]},NegatedToken:{name:Y0.$type,properties:{cardinality:{name:Y0.cardinality},lookahead:{name:Y0.lookahead},parenthesized:{name:Y0.parenthesized,defaultValue:!1},terminal:{name:Y0.terminal}},superTypes:[yo.$type]},Negation:{name:kC.$type,properties:{value:{name:kC.value}},superTypes:[Id.$type]},NumberLiteral:{name:SC.$type,properties:{value:{name:SC.value}},superTypes:[rm.$type]},Parameter:{name:ly.$type,properties:{name:{name:ly.name}},superTypes:[]},ParameterReference:{name:EC.$type,properties:{parameter:{name:EC.parameter,referenceType:ly.$type}},superTypes:[Id.$type]},ParserRule:{name:vc.$type,properties:{dataType:{name:vc.dataType},definition:{name:vc.definition},entry:{name:vc.entry,defaultValue:!1},fragment:{name:vc.fragment,defaultValue:!1},inferredType:{name:vc.inferredType},name:{name:vc.name},parameters:{name:vc.parameters,defaultValue:[]},returnType:{name:vc.returnType,referenceType:qo.$type}},superTypes:[r4.$type]},ReferenceType:{name:o4.$type,properties:{isMulti:{name:o4.isMulti,defaultValue:!1},referenceType:{name:o4.referenceType}},superTypes:[em.$type]},RegexToken:{name:j0.$type,properties:{cardinality:{name:j0.cardinality},lookahead:{name:j0.lookahead},parenthesized:{name:j0.parenthesized,defaultValue:!1},regex:{name:j0.regex}},superTypes:[yo.$type]},ReturnType:{name:CC.$type,properties:{name:{name:CC.name}},superTypes:[]},RuleCall:{name:X0.$type,properties:{arguments:{name:X0.arguments,defaultValue:[]},cardinality:{name:X0.cardinality},predicate:{name:X0.predicate},rule:{name:X0.rule,referenceType:iy.$type}},superTypes:[go.$type]},SimpleType:{name:cy.$type,properties:{primitiveType:{name:cy.primitiveType},stringType:{name:cy.stringType},typeRef:{name:cy.typeRef,referenceType:qo.$type}},superTypes:[em.$type]},StringLiteral:{name:AC.$type,properties:{value:{name:AC.value}},superTypes:[rm.$type]},TerminalAlternatives:{name:K0.$type,properties:{cardinality:{name:K0.cardinality},elements:{name:K0.elements,defaultValue:[]},lookahead:{name:K0.lookahead},parenthesized:{name:K0.parenthesized,defaultValue:!1}},superTypes:[yo.$type]},TerminalElement:{name:yo.$type,properties:{cardinality:{name:yo.cardinality},lookahead:{name:yo.lookahead},parenthesized:{name:yo.parenthesized,defaultValue:!1}},superTypes:[go.$type]},TerminalGroup:{name:Q0.$type,properties:{cardinality:{name:Q0.cardinality},elements:{name:Q0.elements,defaultValue:[]},lookahead:{name:Q0.lookahead},parenthesized:{name:Q0.parenthesized,defaultValue:!1}},superTypes:[yo.$type]},TerminalRule:{name:Ph.$type,properties:{definition:{name:Ph.definition},fragment:{name:Ph.fragment,defaultValue:!1},hidden:{name:Ph.hidden,defaultValue:!1},name:{name:Ph.name},type:{name:Ph.type}},superTypes:[iy.$type]},TerminalRuleCall:{name:Z0.$type,properties:{cardinality:{name:Z0.cardinality},lookahead:{name:Z0.lookahead},parenthesized:{name:Z0.parenthesized,defaultValue:!1},rule:{name:Z0.rule,referenceType:Ph.$type}},superTypes:[yo.$type]},Type:{name:l4.$type,properties:{name:{name:l4.name},type:{name:l4.type}},superTypes:[qo.$type]},TypeAttribute:{name:J0.$type,properties:{defaultValue:{name:J0.defaultValue},isOptional:{name:J0.isOptional,defaultValue:!1},name:{name:J0.name},type:{name:J0.type}},superTypes:[]},TypeDefinition:{name:em.$type,properties:{},superTypes:[]},UnionType:{name:_C.$type,properties:{types:{name:_C.types,defaultValue:[]}},superTypes:[em.$type]},UnorderedGroup:{name:c4.$type,properties:{cardinality:{name:c4.cardinality},elements:{name:c4.elements,defaultValue:[]}},superTypes:[go.$type]},UntilToken:{name:tm.$type,properties:{cardinality:{name:tm.cardinality},lookahead:{name:tm.lookahead},parenthesized:{name:tm.parenthesized,defaultValue:!1},terminal:{name:tm.terminal}},superTypes:[yo.$type]},ValueLiteral:{name:rm.$type,properties:{},superTypes:[]},Wildcard:{name:uy.$type,properties:{cardinality:{name:uy.cardinality},lookahead:{name:uy.lookahead},parenthesized:{name:uy.parenthesized,defaultValue:!1}},superTypes:[yo.$type]}}}},ur=new hy});var OC={};vr(OC,{DefaultNameRegexp:()=>IC,RangeComparison:()=>Au,compareRange:()=>xge,findCommentNode:()=>WB,findDeclarationNodeAtOffset:()=>YJe,findLeafNodeAtOffset:()=>HB,findLeafNodeBeforeOffset:()=>bge,flattenCst:()=>HJe,getDatatypeNode:()=>WJe,getInteriorNodes:()=>KJe,getNextNode:()=>jJe,getPreviousNode:()=>wge,getStartlineNode:()=>XJe,inRange:()=>SB,isChildNode:()=>UB,isCommentNode:()=>qB,streamCst:()=>nm,toDocumentSegment:()=>im,tokenToRange:()=>fy});function WJe(t){let e=t,r=!1;for(;e;){let n=Ih(e.grammarSource,wa);if(n&&n.dataType)e=e.container,r=!0;else return r?e:void 0}}function nm(t){return new Eu(t,e=>pc(e)?e.content:[],{includeRoot:!0})}function HJe(t){return nm(t).filter(_d)}function UB(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function fy(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function im(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}function xge(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Au.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.lineAu.After}function YJe(t,e,r=IC){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return HB(t,e)}}function WB(t,e){if(t){let r=wge(t,!0);if(r&&qB(r,e))return r;if(e4(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(qB(a,e))return a}}}}function qB(t,e){return _d(t)&&e.includes(t.tokenType.name)}function HB(t,e){if(_d(t))return t;if(pc(t)){let r=Tge(t,e,!1);if(r)return HB(r,e)}}function bge(t,e){if(_d(t))return t;if(pc(t)){let r=Tge(t,e,!0);if(r)return bge(r,e)}}function Tge(t,e,r){let n=0,i=t.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=t.content[s];if(l.offset<=e&&l.end>e)return l;l.end<=e?(a=r?l:void 0,n=s+1):i=s-1}return a}function wge(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function jJe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n{"use strict";mc();Ms();ls();Uo();o(WJe,"getDatatypeNode");o(nm,"streamCst");o(HJe,"flattenCst");o(UB,"isChildNode");o(fy,"tokenToRange");o(im,"toDocumentSegment");(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Au||(Au={}));o(xge,"compareRange");o(SB,"inRange");IC=/^[\w\p{L}]$/u;o(YJe,"findDeclarationNodeAtOffset");o(WB,"findCommentNode");o(qB,"isCommentNode");o(HB,"findLeafNodeAtOffset");o(bge,"findLeafNodeBeforeOffset");o(Tge,"binarySearch");o(wge,"getPreviousNode");o(jJe,"getNextNode");o(XJe,"getStartlineNode");o(KJe,"getInteriorNodes");o(QJe,"getCommonParent");o(vge,"getParentChain")});function _u(t,e="Error: Got unexpected value."){throw new Error(e)}function kge(t,e="Error: Condition is violated."){if(!t)throw new Error(e)}var am,PC=I(()=>{"use strict";am=class extends Error{static{o(this,"ErrorWithLocation")}constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};o(_u,"assertUnreachable");o(kge,"assertCondition")});function pr(t){return t.charCodeAt(0)}function BC(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function dy(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function sm(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function d4(){throw Error("Internal Error - Should never get here!")}function YB(t){return t.type==="Character"}var jB=I(()=>{"use strict";o(pr,"cc");o(BC,"insertToSet");o(dy,"addFlag");o(sm,"ASSERT_EXISTS");o(d4,"ASSERT_NEVER_REACH_HERE");o(YB,"isCharacter")});var p4,m4,XB,Sge=I(()=>{"use strict";jB();p4=[];for(let t=pr("0");t<=pr("9");t++)p4.push(t);m4=[pr("_")].concat(p4);for(let t=pr("a");t<=pr("z");t++)m4.push(t);for(let t=pr("A");t<=pr("Z");t++)m4.push(t);XB=[pr(" "),pr("\f"),pr(` +`),pr("\r"),pr(" "),pr("\v"),pr(" "),pr("\xA0"),pr("\u1680"),pr("\u2000"),pr("\u2001"),pr("\u2002"),pr("\u2003"),pr("\u2004"),pr("\u2005"),pr("\u2006"),pr("\u2007"),pr("\u2008"),pr("\u2009"),pr("\u200A"),pr("\u2028"),pr("\u2029"),pr("\u202F"),pr("\u205F"),pr("\u3000"),pr("\uFEFF")]});var ZJe,FC,JJe,om,Ege=I(()=>{"use strict";jB();Sge();ZJe=/[0-9a-fA-F]/,FC=/[0-9]/,JJe=/[1-9]/,om=class{static{o(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":dy(n,"global");break;case"i":dy(n,"ignoreCase");break;case"m":dy(n,"multiLine");break;case"u":dy(n,"unicode");break;case"y":dy(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":r="Lookbehind";break;case"!":r="NegativeLookbehind"}break}}sm(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return d4()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;sm(r);break}if(!(e===!0&&r===void 0)&&sm(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),sm(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):d4()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[pr(` +`),pr("\r"),pr("\u2028"),pr("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=p4;break;case"D":e=p4,r=!0;break;case"s":e=XB;break;case"S":e=XB,r=!0;break;case"w":e=m4;break;case"W":e=m4,r=!0;break}return sm(e)?{type:"Set",value:e,complement:r}:d4()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=pr("\f");break;case"n":e=pr(` +`);break;case"r":e=pr("\r");break;case"t":e=pr(" ");break;case"v":e=pr("\v");break}return sm(e)?{type:"Character",value:e}:d4()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:pr("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:pr(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` +`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:pr(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(YB(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(YB(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}});var Du,Cge=I(()=>{"use strict";Du=class{static{o(this,"BaseRegExpVisitor")}visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}});var g4=I(()=>{"use strict";Ege();Cge()});var $C={};vr($C,{NEWLINE_REGEXP:()=>QB,escapeRegExp:()=>Fd,getTerminalParts:()=>eet,isMultilineComment:()=>ZB,isWhitespace:()=>y4,partialMatches:()=>JB,partialRegExp:()=>Dge,whitespaceCharacters:()=>_ge});function eet(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=Age.pattern(t),r=[];for(let n of e.value.value)lm.reset(t),lm.visit(n),r.push({start:lm.startRegexp,end:lm.endRegex});return r}catch{return[]}}function ZB(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),lm.reset(t),lm.visit(Age.pattern(t)),lm.multiline}catch{return!1}}function y4(t){let e=typeof t=="string"?new RegExp(t):t;return _ge.some(r=>e.test(r))}function Fd(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function JB(t,e){let r=Dge(t),n=e.match(r);return!!n&&n[0].length>0}function Dge(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let a="",s;function l(h){a+=r.substr(n,h),n+=h}o(l,"appendRaw");function u(h){a+="(?:"+r.substr(n,h)+"|$)",n+=h}for(o(u,"appendOptional");n",n)-n+1);break;default:u(2);break}break;case"[":s=/\[(?:\\.|.)*?\]/g,s.lastIndex=n,s=s.exec(r)||[],u(s[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":l(1);break;case"{":s=/\{\d+,?\d*\}/g,s.lastIndex=n,s=s.exec(r),s?l(s[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":s=n,n+=3,i(),a+=r.substr(s,n-s);break;case"<":switch(r[n+3]){case"=":case"!":s=n,n+=4,i(),a+=r.substr(s,n-s);break;default:l(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else l(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return o(i,"process"),new RegExp(i(),t.flags)}var QB,Age,KB,lm,_ge,py=I(()=>{"use strict";g4();QB=/\r?\n/gm,Age=new om,KB=class extends Du{static{o(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let r=String.fromCharCode(e.value);if(!this.multiline&&r===` +`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=Fd(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!` +`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},lm=new KB;o(eet,"getTerminalParts");o(ZB,"isMultilineComment");_ge=`\f +\r \v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");o(y4,"isWhitespace");o(Fd,"escapeRegExp");o(JB,"partialMatches");o(Dge,"partialRegExp")});var VC={};vr(VC,{findAssignment:()=>lF,findNameAssignment:()=>zC,findNodeForKeyword:()=>sF,findNodeForProperty:()=>x4,findNodesForKeyword:()=>ret,findNodesForKeywordInternal:()=>oF,findNodesForProperty:()=>iF,getActionAtElement:()=>Ige,getActionType:()=>Pge,getAllReachableRules:()=>v4,getAllRulesUsedForCrossReferences:()=>tet,getCrossReferenceTerminal:()=>rF,getEntryRule:()=>Rge,getExplicitRuleType:()=>GC,getHiddenRules:()=>Lge,getRuleType:()=>cF,getRuleTypeName:()=>oet,getTypeName:()=>$d,isArrayCardinality:()=>iet,isArrayOperator:()=>aet,isCommentTerminal:()=>nF,isDataType:()=>set,isDataTypeRule:()=>b4,isOptionalCardinality:()=>net,terminalRegex:()=>my});function Rge(t){return t.rules.find(e=>wa(e)&&e.entry)}function Lge(t){return t.rules.filter(e=>Os(e)&&e.hidden)}function v4(t,e){let r=new Set,n=Rge(t);if(!n)return new Set(t.rules);let i=[n].concat(Lge(t));for(let s of i)Nge(s,r,e);let a=new Set;for(let s of t.rules)(r.has(s.name)||Os(s)&&s.hidden)&&a.add(s);return a}function Nge(t,e,r){e.add(t.name),gc(t).forEach(n=>{if(Tc(n)||r&&LC(n)){let i=n.rule.ref;i&&!e.has(i.name)&&Nge(i,e,r)}})}function tet(t){let e=new Set;return gc(t).forEach(r=>{bc(r)&&(wa(r.type.ref)&&e.add(r.type.ref),h4(r.type.ref)&&wa(r.type.ref.$container)&&e.add(r.type.ref.$container))}),e}function rF(t){if(t.terminal)return t.terminal;if(t.type.ref)return zC(t.type.ref)?.terminal}function nF(t){return t.hidden&&!y4(my(t))}function iF(t,e){return!t||!e?[]:aF(t,e,t.astNode,!0)}function x4(t,e,r){if(!t||!e)return;let n=aF(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function aF(t,e,r,n){if(!n){let i=Ih(t.grammarSource,xc);if(i&&i.feature===e)return[t]}return pc(t)&&t.astNode===r?t.content.flatMap(i=>aF(i,e,r,!1)):[]}function ret(t,e){return t?oF(t,e,t?.astNode):[]}function sF(t,e,r){if(!t)return;let n=oF(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function oF(t,e,r){if(t.astNode!==r)return[];if(Dl(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=nm(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Dl(s.grammarSource)&&s.grammarSource.value===e&&a.push(s):n.prune()}while(!i.done);return a}function lF(t){let e=t.astNode;for(;e===t.container?.astNode;){let r=Ih(t.grammarSource,xc);if(r)return r;t=t.container}}function zC(t){let e=t;return h4(e)&&(Fh(e.$container)?e=e.$container.$container:Bh(e.$container)?e=e.$container:_u(e.$container)),Mge(t,e,new Map)}function Mge(t,e,r){function n(i,a){let s;return Ih(i,xc)||(s=Mge(a,a,r)),r.set(t,s),s}if(o(n,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(let i of gc(e)){if(xc(i)&&i.feature.toLowerCase()==="name")return r.set(t,i),i;if(Tc(i)&&wa(i.rule.ref))return n(i,i.rule.ref);if(RC(i)&&i.typeRef?.ref)return n(i,i.typeRef.ref)}}function Ige(t){let e=t.$container;if(Pd(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(Fh(a))return a;{let s=gc(r[i]).find(Fh);if(s)return s}}}if(u4(e))return Ige(e)}function net(t,e){return t==="?"||t==="*"||Pd(e)&&!!e.guardCondition}function iet(t){return t==="*"||t==="+"}function aet(t){return t==="+="}function b4(t){return Oge(t,new Set)}function Oge(t,e){if(e.has(t))return!0;e.add(t);for(let r of gc(t))if(Tc(r)){if(!r.rule.ref||wa(r.rule.ref)&&!Oge(r.rule.ref,e)||Bd(r.rule.ref))return!1}else{if(xc(r))return!1;if(Fh(r))return!1}return!!t.definition}function set(t){return tF(t.type,new Set)}function tF(t,e){if(e.has(t))return!0;if(e.add(t),EB(t))return!1;if(OB(t))return!1;if(zB(t))return t.types.every(r=>tF(r,e));if(RC(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return NC(r)?tF(r.type,e):!1}else return!1}else return!1}function GC(t){if(!Os(t)){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e)return e.name}}}function $d(t){if(Bh(t))return wa(t)&&b4(t)?t.name:GC(t)??t.name;if(LB(t)||NC(t)||BB(t))return t.name;if(Fh(t)){let e=Pge(t);if(e)return e}else if(h4(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Pge(t){if(t.inferredType)return t.inferredType.name;if(t.type?.ref)return $d(t.type.ref)}function oet(t){return Os(t)?t.type?.name??"string":wa(t)&&b4(t)?t.name:GC(t)??t.name}function cF(t){return Os(t)?t.type?.name??"string":GC(t)??t.name}function my(t){let e={s:!1,i:!1,u:!1},r=gy(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function gy(t,e){if(FB(t))return cet(t);if($B(t))return uet(t);if(AB(t))return det(t);if(LC(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return $h(gy(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}else{if(NB(t))return fet(t);if(GB(t))return het(t);if(PB(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),$h(n,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}else{if(VB(t))return $h(uF,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized});throw new Error(`Invalid terminal element: ${t?.$type}, ${t?.$cstNode?.text}`)}}}function cet(t){return $h(t.elements.map(e=>gy(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function uet(t){return $h(t.elements.map(e=>gy(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function het(t){return $h(`${uF}*?${gy(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function fet(t){return $h(`(?!${gy(t.terminal)})${uF}*?`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function det(t){return t.right?$h(`[${eF(t.left)}-${eF(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1}):$h(eF(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function eF(t){return Fd(t.value)}function $h(t,e){return(e.parenthesized||e.lookahead||e.wrap!==!1)&&(t=`(${e.lookahead??(e.parenthesized?"":"?:")}${t})`),e.cardinality?`${t}${e.cardinality}`:t}var uF,wc=I(()=>{"use strict";PC();Uo();mc();ls();yc();py();o(Rge,"getEntryRule");o(Lge,"getHiddenRules");o(v4,"getAllReachableRules");o(Nge,"ruleDfs");o(tet,"getAllRulesUsedForCrossReferences");o(rF,"getCrossReferenceTerminal");o(nF,"isCommentTerminal");o(iF,"findNodesForProperty");o(x4,"findNodeForProperty");o(aF,"findNodesForPropertyInternal");o(ret,"findNodesForKeyword");o(sF,"findNodeForKeyword");o(oF,"findNodesForKeywordInternal");o(lF,"findAssignment");o(zC,"findNameAssignment");o(Mge,"findNameAssignmentInternal");o(Ige,"getActionAtElement");o(net,"isOptionalCardinality");o(iet,"isArrayCardinality");o(aet,"isArrayOperator");o(b4,"isDataTypeRule");o(Oge,"isDataTypeRuleInternal");o(set,"isDataType");o(tF,"isDataTypeInternal");o(GC,"getExplicitRuleType");o($d,"getTypeName");o(Pge,"getActionType");o(oet,"getRuleTypeName");o(cF,"getRuleType");o(my,"terminalRegex");uF=/[\s\S]/.source;o(gy,"abstractElementToRegex");o(cet,"terminalAlternativesToRegex");o(uet,"terminalGroupToRegex");o(het,"untilTokenToRegex");o(fet,"negateTokenToRegex");o(det,"characterRangeToRegex");o(eF,"keywordToRegex");o($h,"withCardinality")});function hF(t){let e=[],r=t.Grammar;for(let n of r.rules)Os(n)&&nF(n)&&ZB(my(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:IC}}var fF=I(()=>{"use strict";yc();wc();py();Uo();o(hF,"createGrammarConfig")});var dF=I(()=>{"use strict"});function yy(t){console&&console.error&&console.error(`Error: ${t}`)}function T4(t){console&&console.warn&&console.warn(`Warning: ${t}`)}var Bge=I(()=>{"use strict";o(yy,"PRINT_ERROR");o(T4,"PRINT_WARNING")});function w4(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}var Fge=I(()=>{"use strict";o(w4,"timer")});function k4(t){function e(){}o(e,"FakeConstructor"),e.prototype=t;let r=new e;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),t;(0,eval)(t)}var $ge=I(()=>{"use strict";o(k4,"toFastProperties")});var vy=I(()=>{"use strict";Bge();Fge();$ge()});function pet(t){return met(t)?t.LABEL:t.name}function met(t){return Mi(t.LABEL)&&t.LABEL!==""}function qC(t){return it(t,xy)}function xy(t){function e(r){return it(r,xy)}if(o(e,"convertDefinition"),t instanceof Tn){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return Mi(t.label)&&(r.label=t.label),r}else{if(t instanceof Un)return{type:"Alternative",definition:e(t.definition)};if(t instanceof wn)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Wn)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Hn)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:xy(new Pr({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Bn)return{type:"RepetitionWithSeparator",idx:t.idx,separator:xy(new Pr({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Kr)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof Fn)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Pr){let r={type:"Terminal",name:t.terminalType.name,label:pet(t.terminalType),idx:t.idx};Mi(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=bl(n)?n.source:n),r}else{if(t instanceof Ps)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var Wo,Tn,Ps,Un,wn,Wn,Hn,Kr,Bn,Fn,Pr,UC=I(()=>{"use strict";Kt();o(pet,"tokenLabel");o(met,"hasTokenLabel");Wo=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),Re(this.definition,r=>{r.accept(e)})}},Tn=class extends Wo{static{o(this,"NonTerminal")}constructor(e){super([]),this.idx=1,Pa(this,uo(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},Ps=class extends Wo{static{o(this,"Rule")}constructor(e){super(e.definition),this.orgText="",Pa(this,uo(e,r=>r!==void 0))}},Un=class extends Wo{static{o(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Pa(this,uo(e,r=>r!==void 0))}},wn=class extends Wo{static{o(this,"Option")}constructor(e){super(e.definition),this.idx=1,Pa(this,uo(e,r=>r!==void 0))}},Wn=class extends Wo{static{o(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,Pa(this,uo(e,r=>r!==void 0))}},Hn=class extends Wo{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,Pa(this,uo(e,r=>r!==void 0))}},Kr=class extends Wo{static{o(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,Pa(this,uo(e,r=>r!==void 0))}},Bn=class extends Wo{static{o(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,Pa(this,uo(e,r=>r!==void 0))}},Fn=class extends Wo{static{o(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Pa(this,uo(e,r=>r!==void 0))}},Pr=class{static{o(this,"Terminal")}constructor(e){this.idx=1,Pa(this,uo(e,r=>r!==void 0))}accept(e){e.visit(this)}};o(qC,"serializeGrammar");o(xy,"serializeProduction")});var Bs,zge=I(()=>{"use strict";UC();Bs=class{static{o(this,"GAstVisitor")}visit(e){let r=e;switch(r.constructor){case Tn:return this.visitNonTerminal(r);case Un:return this.visitAlternative(r);case wn:return this.visitOption(r);case Wn:return this.visitRepetitionMandatory(r);case Hn:return this.visitRepetitionMandatoryWithSeparator(r);case Bn:return this.visitRepetitionWithSeparator(r);case Kr:return this.visitRepetition(r);case Fn:return this.visitAlternation(r);case Pr:return this.visitTerminal(r);case Ps:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}});function pF(t){return t instanceof Un||t instanceof wn||t instanceof Kr||t instanceof Wn||t instanceof Hn||t instanceof Bn||t instanceof Pr||t instanceof Ps}function cm(t,e=[]){return t instanceof wn||t instanceof Kr||t instanceof Bn?!0:t instanceof Fn?ub(t.definition,n=>cm(n,e)):t instanceof Tn&&ai(e,t)?!1:t instanceof Wo?(t instanceof Tn&&e.push(t),rs(t.definition,n=>cm(n,e))):!1}function mF(t){return t instanceof Fn}function vo(t){if(t instanceof Tn)return"SUBRULE";if(t instanceof wn)return"OPTION";if(t instanceof Fn)return"OR";if(t instanceof Wn)return"AT_LEAST_ONE";if(t instanceof Hn)return"AT_LEAST_ONE_SEP";if(t instanceof Bn)return"MANY_SEP";if(t instanceof Kr)return"MANY";if(t instanceof Pr)return"CONSUME";throw Error("non exhaustive match")}var Gge=I(()=>{"use strict";Kt();UC();o(pF,"isSequenceProd");o(cm,"isOptionalProd");o(mF,"isBranchingProd");o(vo,"getProductionDslName")});var Fs=I(()=>{"use strict";UC();zge();Gge()});function Vge(t,e,r){return[new wn({definition:[new Pr({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}var zh,WC=I(()=>{"use strict";Kt();Fs();zh=class{static{o(this,"RestWalker")}walk(e,r=[]){Re(e.definition,(n,i)=>{let a=Ni(e.definition,i+1);if(n instanceof Tn)this.walkProdRef(n,a,r);else if(n instanceof Pr)this.walkTerminal(n,a,r);else if(n instanceof Un)this.walkFlat(n,a,r);else if(n instanceof wn)this.walkOption(n,a,r);else if(n instanceof Wn)this.walkAtLeastOne(n,a,r);else if(n instanceof Hn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof Bn)this.walkManySep(n,a,r);else if(n instanceof Kr)this.walkMany(n,a,r);else if(n instanceof Fn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new wn({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=Vge(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new wn({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=Vge(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);Re(e.definition,a=>{let s=new Un({definition:[a]});this.walk(s,i)})}};o(Vge,"restForRepetitionWithSeparator")});function um(t){if(t instanceof Tn)return um(t.referencedRule);if(t instanceof Pr)return vet(t);if(pF(t))return get(t);if(mF(t))return yet(t);throw Error("non exhaustive match")}function get(t){let e=[],r=t.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=cm(a),e=e.concat(um(a)),n=n+1,i=r.length>n;return _1(e)}function yet(t){let e=it(t.definition,r=>um(r));return _1(ln(e))}function vet(t){return[t.terminalType]}var gF=I(()=>{"use strict";Kt();Fs();o(um,"first");o(get,"firstForSequence");o(yet,"firstForBranching");o(vet,"firstForTerminal")});var HC,yF=I(()=>{"use strict";HC="_~IN~_"});function qge(t){let e={};return Re(t,r=>{let n=new vF(r).startWalking();Pa(e,n)}),e}function xet(t,e){return t.name+e+HC}var vF,Uge=I(()=>{"use strict";WC();gF();Kt();yF();Fs();vF=class extends zh{static{o(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=xet(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),s=new Un({definition:a}),l=um(s);this.follows[i]=l}};o(qge,"computeAllProdsFollows");o(xet,"buildBetweenProdsFollowPrefix")});function by(t){let e=t.toString();if(YC.hasOwnProperty(e))return YC[e];{let r=bet.pattern(e);return YC[e]=r,r}}function Wge(){YC={}}var YC,bet,jC=I(()=>{"use strict";g4();YC={},bet=new om;o(by,"getRegExpAst");o(Wge,"clearRegExpParserCache")});function jge(t,e=!1){try{let r=by(t);return xF(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===Yge)e&&T4(`${S4} Unable to optimize: < ${t.toString()} > Complement Sets cannot be automatically optimized. This will disable the lexer's first char optimizations. See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=` This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),f1(`${tb} + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),yy(`${S4} Failed parsing: < ${t.toString()} > Using the @chevrotain/regexp-to-ast library - Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function HO(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")eS(u,e,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)eS(f,e,r);else{for(let f=h.from;f<=h.to&&f=g1){let f=h.from>=g1?h.from:g1,d=h.to,p=Yc(f),m=Yc(d);for(let g=p;g<=m;g++)e[g]=g}}}});break;case"Group":HO(s.value,e,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&qO(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return kr(e)}function eS(t,e,r){let n=Yc(t);e[n]=n,r===!0&&hYe(t,e)}function hYe(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=Yc(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Yc(i.charCodeAt(0));e[a]=a}}}function lde(t,e){return os(t.value,r=>{if(typeof r=="number")return jn(e,r);{let n=r;return os(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function qO(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Bt(t.value)?Ba(t.value,qO):qO(t.value):!1}function tS(t,e){if(e instanceof RegExp){let r=m1(e),n=new WO(t);return n.visit(r),n.found}else return os(e,r=>jn(t,r.charCodeAt(0)))!==void 0}var cde,tb,WO,hde=M(()=>{"use strict";Yx();Yt();d1();JE();YO();cde="Complement Sets are not supported for first char optimization",tb=`Unable to use "first char" lexer optimizations: -`;o(ude,"getOptimizedStartCodesIndices");o(HO,"firstCharOptimizedIndices");o(eS,"addOptimizedIdxToResult");o(hYe,"handleIgnoreCase");o(lde,"findCode");o(qO,"isWholeOptional");WO=class extends Wc{static{o(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return}super.visitChildren(e)}}visitCharacter(e){jn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?lde(e,this.targetCharCodes)===void 0&&(this.found=!0):lde(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(tS,"canMatchCharCode")});function pde(t,e){e=of(e,{useSticky:jO,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` -`],tracer:o((b,T)=>T(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{DYe()});let n;r("Reject Lexer.NA",()=>{n=cf(t,b=>b[Gp]===Zn.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=rt(n,b=>{let T=b[Gp];if(Uo(T)){let S=T.source;return S.length===1&&S!=="^"&&S!=="$"&&S!=="."&&!T.ignoreCase?S:S.length===2&&S[0]==="\\"&&!jn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],S[1])?S[1]:e.useSticky?dde(T):fde(T)}else{if(Si(T))return i=!0,{exec:T};if(typeof T=="object")return i=!0,T;if(typeof T=="string"){if(T.length===1)return T;{let S=T.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),w=new RegExp(S);return e.useSticky?dde(w):fde(w)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=rt(n,b=>b.tokenTypeIdx),l=rt(n,b=>{let T=b.GROUP;if(T!==Zn.SKIPPED){if(xi(T))return T;if(xr(T))return!1;throw Error("non exhaustive match")}}),u=rt(n,b=>{let T=b.LONGER_ALT;if(T)return Bt(T)?rt(T,w=>uk(n,w)):[uk(n,T)]}),h=rt(n,b=>b.PUSH_MODE),f=rt(n,b=>Ft(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=wde(e.lineTerminatorCharacters);d=rt(n,T=>!1),e.positionTracking!=="onlyOffset"&&(d=rt(n,T=>Ft(T,"LINE_BREAKS")?!!T.LINE_BREAKS:Tde(T,b)===!1&&tS(b,T.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=rt(n,xde),m=rt(a,AYe),g=Jr(n,(b,T)=>{let S=T.GROUP;return xi(S)&&S!==Zn.SKIPPED&&(b[S]=[]),b},{}),y=rt(a,(b,T)=>({pattern:a[T],longerAlt:u[T],canLineTerminator:d[T],isCustom:p[T],short:m[T],group:l[T],push:h[T],pop:f[T],tokenTypeIdx:s[T],tokenType:n[T]}))});let v=!0,x=[];return e.safeMode||r("First Char Optimization",()=>{x=Jr(n,(b,T,S)=>{if(typeof T.PATTERN=="string"){let w=T.PATTERN.charCodeAt(0),k=Yc(w);XO(b,k,y[S])}else if(Bt(T.START_CHARS_HINT)){let w;Ae(T.START_CHARS_HINT,k=>{let C=typeof k=="string"?k.charCodeAt(0):k,A=Yc(C);w!==A&&(w=A,XO(b,A,y[S]))})}else if(Uo(T.PATTERN))if(T.PATTERN.unicode)v=!1,e.ensureOptimizations&&f1(`${tb} Unable to analyze < ${T.PATTERN.toString()} > pattern. + Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function xF(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")XC(u,e,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)XC(f,e,r);else{for(let f=h.from;f<=h.to&&f=Ty){let f=h.from>=Ty?h.from:Ty,d=h.to,p=Ru(f),m=Ru(d);for(let g=p;g<=m;g++)e[g]=g}}}});break;case"Group":xF(s.value,e,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&bF(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return Rr(e)}function XC(t,e,r){let n=Ru(t);e[n]=n,r===!0&&Tet(t,e)}function Tet(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=Ru(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Ru(i.charCodeAt(0));e[a]=a}}}function Hge(t,e){return Ds(t.value,r=>{if(typeof r=="number")return ai(e,r);{let n=r;return Ds(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function bF(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?zt(t.value)?rs(t.value,bF):bF(t.value):!1}function KC(t,e){if(e instanceof RegExp){let r=by(e),n=new TF(t);return n.visit(r),n.found}else return Ds(e,r=>ai(t,r.charCodeAt(0)))!==void 0}var Yge,S4,TF,Xge=I(()=>{"use strict";g4();Kt();vy();jC();wF();Yge="Complement Sets are not supported for first char optimization",S4=`Unable to use "first char" lexer optimizations: +`;o(jge,"getOptimizedStartCodesIndices");o(xF,"firstCharOptimizedIndices");o(XC,"addOptimizedIdxToResult");o(Tet,"handleIgnoreCase");o(Hge,"findCode");o(bF,"isWholeOptional");TF=class extends Du{static{o(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){ai(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?Hge(e,this.targetCharCodes)===void 0&&(this.found=!0):Hge(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(KC,"canMatchCharCode")});function Zge(t,e){e=td(e,{useSticky:SF,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` +`],tracer:o((b,T)=>T(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{Get()});let n;r("Reject Lexer.NA",()=>{n=nd(t,b=>b[hm]===li.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=it(n,b=>{let T=b[hm];if(bl(T)){let E=T.source;return E.length===1&&E!=="^"&&E!=="$"&&E!=="."&&!T.ignoreCase?E:E.length===2&&E[0]==="\\"&&!ai(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],E[1])?E[1]:e.useSticky?Qge(T):Kge(T)}else{if($i(T))return i=!0,{exec:T};if(typeof T=="object")return i=!0,T;if(typeof T=="string"){if(T.length===1)return T;{let E=T.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),w=new RegExp(E);return e.useSticky?Qge(w):Kge(w)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=it(n,b=>b.tokenTypeIdx),l=it(n,b=>{let T=b.GROUP;if(T!==li.SKIPPED){if(Mi(T))return T;if(Er(T))return!1;throw Error("non exhaustive match")}}),u=it(n,b=>{let T=b.LONGER_ALT;if(T)return zt(T)?it(T,w=>YS(n,w)):[YS(n,T)]}),h=it(n,b=>b.PUSH_MODE),f=it(n,b=>Gt(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=s1e(e.lineTerminatorCharacters);d=it(n,T=>!1),e.positionTracking!=="onlyOffset"&&(d=it(n,T=>Gt(T,"LINE_BREAKS")?!!T.LINE_BREAKS:a1e(T,b)===!1&&KC(b,T.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=it(n,n1e),m=it(a,$et),g=un(n,(b,T)=>{let E=T.GROUP;return Mi(E)&&E!==li.SKIPPED&&(b[E]=[]),b},{}),y=it(a,(b,T)=>({pattern:a[T],longerAlt:u[T],canLineTerminator:d[T],isCustom:p[T],short:m[T],group:l[T],push:h[T],pop:f[T],tokenTypeIdx:s[T],tokenType:n[T]}))});let v=!0,x=[];return e.safeMode||r("First Char Optimization",()=>{x=un(n,(b,T,E)=>{if(typeof T.PATTERN=="string"){let w=T.PATTERN.charCodeAt(0),k=Ru(w);kF(b,k,y[E])}else if(zt(T.START_CHARS_HINT)){let w;Re(T.START_CHARS_HINT,k=>{let C=typeof k=="string"?k.charCodeAt(0):k,D=Ru(C);w!==D&&(w=D,kF(b,D,y[E]))})}else if(bl(T.PATTERN))if(T.PATTERN.unicode)v=!1,e.ensureOptimizations&&yy(`${S4} Unable to analyze < ${T.PATTERN.toString()} > pattern. The regexp unicode flag is not currently supported by the regexp-to-ast library. This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let w=ude(T.PATTERN,e.ensureOptimizations);mr(w)&&(v=!1),Ae(w,k=>{XO(b,k,y[S])})}else e.ensureOptimizations&&f1(`${tb} TokenType: <${T.name}> is using a custom token pattern without providing parameter. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let w=jge(T.PATTERN,e.ensureOptimizations);Tr(w)&&(v=!1),Re(w,k=>{kF(b,k,y[E])})}else e.ensureOptimizations&&yy(`${S4} TokenType: <${T.name}> is using a custom token pattern without providing parameter. This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),v=!1;return b},[])}),{emptyGroups:g,patternIdxToConfig:y,charCodeToPatternIdxToConfig:x,hasCustom:i,canBeOptimized:v}}function mde(t,e){let r=[],n=dYe(t);r=r.concat(n.errors);let i=pYe(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(fYe(a)),r=r.concat(wYe(a)),r=r.concat(kYe(a,e)),r=r.concat(EYe(a)),r}function fYe(t){let e=[],r=Zr(t,n=>Uo(n[Gp]));return e=e.concat(gYe(r)),e=e.concat(xYe(r)),e=e.concat(bYe(r)),e=e.concat(TYe(r)),e=e.concat(yYe(r)),e}function dYe(t){let e=Zr(t,i=>!Ft(i,Gp)),r=rt(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Qn.MISSING_PATTERN,tokenTypes:[i]})),n=lf(t,e);return{errors:r,valid:n}}function pYe(t){let e=Zr(t,i=>{let a=i[Gp];return!Uo(a)&&!Si(a)&&!Ft(a,"exec")&&!xi(a)}),r=rt(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Qn.INVALID_PATTERN,tokenTypes:[i]})),n=lf(t,e);return{errors:r,valid:n}}function gYe(t){class e extends Wc{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=Zr(t,i=>{let a=i.PATTERN;try{let s=m1(a),l=new e;return l.visit(s),l.found}catch{return mYe.test(a.source)}});return rt(r,i=>({message:`Unexpected RegExp Anchor Error: + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),v=!1;return b},[])}),{emptyGroups:g,patternIdxToConfig:y,charCodeToPatternIdxToConfig:x,hasCustom:i,canBeOptimized:v}}function Jge(t,e){let r=[],n=ket(t);r=r.concat(n.errors);let i=Eet(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(wet(a)),r=r.concat(Met(a)),r=r.concat(Iet(a,e)),r=r.concat(Oet(a)),r}function wet(t){let e=[],r=cn(t,n=>bl(n[hm]));return e=e.concat(Aet(r)),e=e.concat(Ret(r)),e=e.concat(Let(r)),e=e.concat(Net(r)),e=e.concat(_et(r)),e}function ket(t){let e=cn(t,i=>!Gt(i,hm)),r=it(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:oi.MISSING_PATTERN,tokenTypes:[i]})),n=rd(t,e);return{errors:r,valid:n}}function Eet(t){let e=cn(t,i=>{let a=i[hm];return!bl(a)&&!$i(a)&&!Gt(a,"exec")&&!Mi(a)}),r=it(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:oi.INVALID_PATTERN,tokenTypes:[i]})),n=rd(t,e);return{errors:r,valid:n}}function Aet(t){class e extends Du{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=cn(t,i=>{let a=i.PATTERN;try{let s=by(a),l=new e;return l.visit(s),l.found}catch{return Cet.test(a.source)}});return it(r,i=>({message:`Unexpected RegExp Anchor Error: Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$' - See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Qn.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function yYe(t){let e=Zr(t,n=>n.PATTERN.test(""));return rt(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:Qn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function xYe(t){class e extends Wc{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=Zr(t,i=>{let a=i.PATTERN;try{let s=m1(a),l=new e;return l.visit(s),l.found}catch{return vYe.test(a.source)}});return rt(r,i=>({message:`Unexpected RegExp Anchor Error: + See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:oi.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function _et(t){let e=cn(t,n=>n.PATTERN.test(""));return it(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:oi.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function Ret(t){class e extends Du{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=cn(t,i=>{let a=i.PATTERN;try{let s=by(a),l=new e;return l.visit(s),l.found}catch{return Det.test(a.source)}});return it(r,i=>({message:`Unexpected RegExp Anchor Error: Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^' - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Qn.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function bYe(t){let e=Zr(t,n=>{let i=n[Gp];return i instanceof RegExp&&(i.multiline||i.global)});return rt(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Qn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function TYe(t){let e=[],r=rt(t,a=>Jr(t,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!jn(e,l)&&l.PATTERN!==Zn.NA&&(e.push(l),s.push(l)),s),[]));r=_c(r);let n=Zr(r,a=>a.length>1);return rt(n,a=>{let s=rt(a,u=>u.name);return{message:`The same RegExp pattern ->${ea(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:Qn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function wYe(t){let e=Zr(t,n=>{if(!Ft(n,"GROUP"))return!1;let i=n.GROUP;return i!==Zn.SKIPPED&&i!==Zn.NA&&!xi(i)});return rt(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Qn.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function kYe(t,e){let r=Zr(t,i=>i.PUSH_MODE!==void 0&&!jn(e,i.PUSH_MODE));return rt(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:Qn.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function EYe(t){let e=[],r=Jr(t,(n,i,a)=>{let s=i.PATTERN;return s===Zn.NA||(xi(s)?n.push({str:s,idx:a,tokenType:i}):Uo(s)&&CYe(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Ae(t,(n,i)=>{Ae(r,({str:a,idx:s,tokenType:l})=>{if(i${l.name}<- can never be matched. + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:oi.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function Let(t){let e=cn(t,n=>{let i=n[hm];return i instanceof RegExp&&(i.multiline||i.global)});return it(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:oi.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function Net(t){let e=[],r=it(t,a=>un(t,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!ai(e,l)&&l.PATTERN!==li.NA&&(e.push(l),s.push(l)),s),[]));r=fu(r);let n=cn(r,a=>a.length>1);return it(n,a=>{let s=it(a,u=>u.name);return{message:`The same RegExp pattern ->${va(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:oi.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function Met(t){let e=cn(t,n=>{if(!Gt(n,"GROUP"))return!1;let i=n.GROUP;return i!==li.SKIPPED&&i!==li.NA&&!Mi(i)});return it(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:oi.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function Iet(t,e){let r=cn(t,i=>i.PUSH_MODE!==void 0&&!ai(e,i.PUSH_MODE));return it(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:oi.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function Oet(t){let e=[],r=un(t,(n,i,a)=>{let s=i.PATTERN;return s===li.NA||(Mi(s)?n.push({str:s,idx:a,tokenType:i}):bl(s)&&Bet(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Re(t,(n,i)=>{Re(r,({str:a,idx:s,tokenType:l})=>{if(i${l.name}<- can never be matched. Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition. -See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:u,type:Qn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),e}function SYe(t,e){if(Uo(e)){let r=e.exec(t);return r!==null&&r.index===0}else{if(Si(e))return e(t,0,[],{});if(Ft(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function CYe(t){return os([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function fde(t){let e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function dde(t){let e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function gde(t,e,r){let n=[];return Ft(t,y1)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+y1+`> property in its definition -`,type:Qn.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Ft(t,rS)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+rS+`> property in its definition -`,type:Qn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Ft(t,rS)&&Ft(t,y1)&&!Ft(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${y1}: <${t.defaultMode}>which does not exist -`,type:Qn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Ft(t,rS)&&Ae(t.modes,(i,a)=>{Ae(i,(s,l)=>{if(xr(s))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${l}> -`,type:Qn.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(Ft(s,"LONGER_ALT")){let u=Bt(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Ae(u,h=>{!xr(h)&&!jn(i,h)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${h.name}> on token <${s.name}> outside of mode <${a}> -`,type:Qn.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function yde(t,e,r){let n=[],i=!1,a=_c(Qr(kr(t.modes))),s=cf(a,u=>u[Gp]===Zn.NA),l=wde(r);return e&&Ae(s,u=>{let h=Tde(u,l);if(h!==!1){let d={message:_Ye(u,h),type:h.issue,tokenType:u};n.push(d)}else Ft(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):tS(l,u.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found. +See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:u,type:oi.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),e}function Pet(t,e){if(bl(e)){if(Fet(e))return!1;let r=e.exec(t);return r!==null&&r.index===0}else{if($i(e))return e(t,0,[],{});if(Gt(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function Bet(t){return Ds([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function Fet(t){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\? property in its definition +`,type:oi.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Gt(t,QC)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+QC+`> property in its definition +`,type:oi.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Gt(t,QC)&&Gt(t,wy)&&!Gt(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${wy}: <${t.defaultMode}>which does not exist +`,type:oi.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Gt(t,QC)&&Re(t.modes,(i,a)=>{Re(i,(s,l)=>{if(Er(s))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${l}> +`,type:oi.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(Gt(s,"LONGER_ALT")){let u=zt(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Re(u,h=>{!Er(h)&&!ai(i,h)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${h.name}> on token <${s.name}> outside of mode <${a}> +`,type:oi.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function t1e(t,e,r){let n=[],i=!1,a=fu(ln(Rr(t.modes))),s=nd(a,u=>u[hm]===li.NA),l=s1e(r);return e&&Re(s,u=>{let h=a1e(u,l);if(h!==!1){let d={message:zet(u,h),type:h.issue,tokenType:u};n.push(d)}else Gt(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):KC(l,u.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found. This Lexer has been defined to track line and column information, But none of the Token Types can be identified as matching a line terminator. See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS - for details.`,type:Qn.NO_LINE_BREAKS_FLAGS}),n}function vde(t){let e={},r=qr(t);return Ae(r,n=>{let i=t[n];if(Bt(i))e[n]=[];else throw Error("non exhaustive match")}),e}function xde(t){let e=t.PATTERN;if(Uo(e))return!1;if(Si(e))return!0;if(Ft(e,"exec"))return!0;if(xi(e))return!1;throw Error("non exhaustive match")}function AYe(t){return xi(t)&&t.length===1?t.charCodeAt(0):!1}function Tde(t,e){if(Ft(t,"LINE_BREAKS"))return!1;if(Uo(t.PATTERN)){try{tS(e,t.PATTERN)}catch(r){return{issue:Qn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(xi(t.PATTERN))return!1;if(xde(t))return{issue:Qn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function _Ye(t,e){if(e.issue===Qn.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. + for details.`,type:oi.NO_LINE_BREAKS_FLAGS}),n}function r1e(t){let e={},r=en(t);return Re(r,n=>{let i=t[n];if(zt(i))e[n]=[];else throw Error("non exhaustive match")}),e}function n1e(t){let e=t.PATTERN;if(bl(e))return!1;if($i(e))return!0;if(Gt(e,"exec"))return!0;if(Mi(e))return!1;throw Error("non exhaustive match")}function $et(t){return Mi(t)&&t.length===1?t.charCodeAt(0):!1}function a1e(t,e){if(Gt(t,"LINE_BREAKS"))return!1;if(bl(t.PATTERN)){try{KC(e,t.PATTERN)}catch(r){return{issue:oi.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(Mi(t.PATTERN))return!1;if(n1e(t))return{issue:oi.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function zet(t,e){if(e.issue===oi.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. The problem is in the <${t.name}> Token Type Root cause: ${e.errMsg}. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Qn.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===oi.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. The problem is in the <${t.name}> Token Type - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function wde(t){return rt(t,r=>xi(r)?r.charCodeAt(0):r)}function XO(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Yc(t){return t255?255+~~(t/255):t}}var Gp,y1,rS,jO,mYe,vYe,bde,g1,nS,YO=M(()=>{"use strict";Yx();rb();Yt();d1();hde();JE();Gp="PATTERN",y1="defaultMode",rS="modes",jO=typeof new RegExp("(?:)").sticky=="boolean";o(pde,"analyzeTokenTypes");o(mde,"validatePatterns");o(fYe,"validateRegExpPattern");o(dYe,"findMissingPatterns");o(pYe,"findInvalidPatterns");mYe=/[^\\][$]/;o(gYe,"findEndOfInputAnchor");o(yYe,"findEmptyMatchRegExps");vYe=/[^\\[][\^]|^\^/;o(xYe,"findStartOfInputAnchor");o(bYe,"findUnsupportedFlags");o(TYe,"findDuplicatePatterns");o(wYe,"findInvalidGroupType");o(kYe,"findModesThatDoNotExist");o(EYe,"findUnreachablePatterns");o(SYe,"testTokenType");o(CYe,"noMetaChar");o(fde,"addStartOfInput");o(dde,"addStickyFlag");o(gde,"performRuntimeChecks");o(yde,"performWarningRuntimeChecks");o(vde,"cloneEmptyGroups");o(xde,"isCustomPattern");o(AYe,"isShortPattern");bde={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function LYe(t){let e=ln(t),r=t,n=!0;for(;n;){r=_c(Qr(rt(r,a=>a.CATEGORIES)));let i=lf(r,e);e=e.concat(i),mr(i)?n=!1:r=i}return e}function RYe(t){Ae(t,e=>{KO(e)||(Sde[kde]=e,e.tokenTypeIdx=kde++),Ede(e)&&!Bt(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Ede(e)||(e.CATEGORIES=[]),IYe(e)||(e.categoryMatches=[]),OYe(e)||(e.categoryMatchesMap={})})}function NYe(t){Ae(t,e=>{e.categoryMatches=[],Ae(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(Sde[n].tokenTypeIdx)})})}function MYe(t){Ae(t,e=>{Cde([],e)})}function Cde(t,e){Ae(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),Ae(e.CATEGORIES,r=>{let n=t.concat(e);jn(n,r)||Cde(n,r)})}function KO(t){return Ft(t,"tokenTypeIdx")}function Ede(t){return Ft(t,"CATEGORIES")}function IYe(t){return Ft(t,"categoryMatches")}function OYe(t){return Ft(t,"categoryMatchesMap")}function Ade(t){return Ft(t,"tokenTypeIdx")}var kde,Sde,Vp=M(()=>{"use strict";Yt();o(Xu,"tokenStructuredMatcher");o(v1,"tokenStructuredMatcherNoCategories");kde=1,Sde={};o(ju,"augmentTokenTypes");o(LYe,"expandCategories");o(RYe,"assignTokenDefaultProps");o(NYe,"assignCategoriesTokensProp");o(MYe,"assignCategoriesMapProp");o(Cde,"singleAssignCategoriesToksMap");o(KO,"hasShortKeyProperty");o(Ede,"hasCategoriesProperty");o(IYe,"hasExtendingTokensTypesProperty");o(OYe,"hasExtendingTokensTypesMapProperty");o(Ade,"isTokenType")});var x1,QO=M(()=>{"use strict";x1={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}}});var Qn,nb,Zn,rb=M(()=>{"use strict";YO();Yt();d1();Vp();QO();JE();(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Qn||(Qn={}));nb={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` -`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:x1,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(nb);Zn=class{static{o(this,"Lexer")}constructor(e,r=nb){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${i}>`);let{time:l,value:u}=Jx(a),h=l>10?console.warn:console.log;return this.traceInitIndent time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. -a boolean 2nd argument is no longer supported`);this.config=ma({},nb,r);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===nb.lineTerminatorsPattern)this.config.lineTerminatorsPattern=bde;else if(this.config.lineTerminatorCharacters===nb.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Bt(e)?i={modes:{defaultMode:ln(e)},defaultMode:y1}:(a=!1,i=ln(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(gde(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(yde(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Ae(i.modes,(l,u)=>{i.modes[u]=cf(l,h=>xr(h))});let s=qr(i.modes);if(Ae(i.modes,(l,u)=>{this.TRACE_INIT(`Mode: <${u}> processing`,()=>{if(this.modes.push(u),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(mde(l,s))}),mr(this.lexerDefinitionErrors)){ju(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=pde(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=h.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=h.charCodeToPatternIdxToConfig,this.emptyGroups=ma({},this.emptyGroups,h.emptyGroups),this.hasCustom=h.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=h.canBeOptimized}})}),this.defaultMode=i.defaultMode,!mr(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let u=rt(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function s1e(t){return it(t,r=>Mi(r)?r.charCodeAt(0):r)}function kF(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Ru(t){return t255?255+~~(t/255):t}}var hm,wy,QC,SF,Cet,Det,i1e,Ty,ZC,wF=I(()=>{"use strict";g4();E4();Kt();vy();Xge();jC();hm="PATTERN",wy="defaultMode",QC="modes",SF=typeof new RegExp("(?:)").sticky=="boolean";o(Zge,"analyzeTokenTypes");o(Jge,"validatePatterns");o(wet,"validateRegExpPattern");o(ket,"findMissingPatterns");o(Eet,"findInvalidPatterns");Cet=/[^\\][$]/;o(Aet,"findEndOfInputAnchor");o(_et,"findEmptyMatchRegExps");Det=/[^\\[][\^]|^\^/;o(Ret,"findStartOfInputAnchor");o(Let,"findUnsupportedFlags");o(Net,"findDuplicatePatterns");o(Met,"findInvalidGroupType");o(Iet,"findModesThatDoNotExist");o(Oet,"findUnreachablePatterns");o(Pet,"tryToMatchStrToPattern");o(Bet,"noMetaChar");o(Fet,"usesLookAheadOrBehind");o(Kge,"addStartOfInput");o(Qge,"addStickyFlag");o(e1e,"performRuntimeChecks");o(t1e,"performWarningRuntimeChecks");o(r1e,"cloneEmptyGroups");o(n1e,"isCustomPattern");o($et,"isShortPattern");i1e={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function Vet(t){let e=yn(t),r=t,n=!0;for(;n;){r=fu(ln(it(r,a=>a.CATEGORIES)));let i=rd(r,e);e=e.concat(i),Tr(i)?n=!1:r=i}return e}function qet(t){Re(t,e=>{EF(e)||(c1e[o1e]=e,e.tokenTypeIdx=o1e++),l1e(e)&&!zt(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),l1e(e)||(e.CATEGORIES=[]),Het(e)||(e.categoryMatches=[]),Yet(e)||(e.categoryMatchesMap={})})}function Uet(t){Re(t,e=>{e.categoryMatches=[],Re(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(c1e[n].tokenTypeIdx)})})}function Wet(t){Re(t,e=>{u1e([],e)})}function u1e(t,e){Re(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),Re(e.CATEGORIES,r=>{let n=t.concat(e);ai(n,r)||u1e(n,r)})}function EF(t){return Gt(t,"tokenTypeIdx")}function l1e(t){return Gt(t,"CATEGORIES")}function Het(t){return Gt(t,"categoryMatches")}function Yet(t){return Gt(t,"categoryMatchesMap")}function h1e(t){return Gt(t,"tokenTypeIdx")}var o1e,c1e,fm=I(()=>{"use strict";Kt();o(Gh,"tokenStructuredMatcher");o(ky,"tokenStructuredMatcherNoCategories");o1e=1,c1e={};o(Vh,"augmentTokenTypes");o(Vet,"expandCategories");o(qet,"assignTokenDefaultProps");o(Uet,"assignCategoriesTokensProp");o(Wet,"assignCategoriesMapProp");o(u1e,"singleAssignCategoriesToksMap");o(EF,"hasShortKeyProperty");o(l1e,"hasCategoriesProperty");o(Het,"hasExtendingTokensTypesProperty");o(Yet,"hasExtendingTokensTypesMapProperty");o(h1e,"isTokenType")});var Sy,CF=I(()=>{"use strict";Sy={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i,a){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}}});var oi,C4,li,E4=I(()=>{"use strict";wF();Kt();vy();fm();CF();jC();(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(oi||(oi={}));C4={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` +`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:Sy,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(C4);li=class{static{o(this,"Lexer")}constructor(e,r=C4){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${i}>`);let{time:l,value:u}=w4(a),h=l>10?console.warn:console.log;return this.traceInitIndent time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. +a boolean 2nd argument is no longer supported`);this.config=Pa({},C4,r);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===C4.lineTerminatorsPattern)this.config.lineTerminatorsPattern=i1e;else if(this.config.lineTerminatorCharacters===C4.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),zt(e)?i={modes:{defaultMode:yn(e)},defaultMode:wy}:(a=!1,i=yn(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(e1e(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(t1e(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Re(i.modes,(l,u)=>{i.modes[u]=nd(l,h=>Er(h))});let s=en(i.modes);if(Re(i.modes,(l,u)=>{this.TRACE_INIT(`Mode: <${u}> processing`,()=>{if(this.modes.push(u),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Jge(l,s))}),Tr(this.lexerDefinitionErrors)){Vh(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=Zge(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=h.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=h.charCodeToPatternIdxToConfig,this.emptyGroups=Pa({},this.emptyGroups,h.emptyGroups),this.hasCustom=h.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=h.canBeOptimized}})}),this.defaultMode=i.defaultMode,!Tr(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let u=it(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- `);throw new Error(`Errors detected in definition of Lexer: -`+u)}Ae(this.lexerDefinitionWarning,l=>{Zx(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(jO?(this.chopInput=Qi,this.match=this.matchWithTest):(this.updateLastIndex=si,this.match=this.matchWithExec),a&&(this.handleModes=si),this.trackStartLines===!1&&(this.computeNewColumn=Qi),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=si),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=Jr(this.canModeBeOptimized,(u,h,f)=>(h===!1&&u.push(f),u),[]);if(r.ensureOptimizations&&!mr(l))throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized. +`+u)}Re(this.lexerDefinitionWarning,l=>{T4(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(SF?(this.chopInput=pa,this.match=this.matchWithTest):(this.updateLastIndex=yi,this.match=this.matchWithExec),a&&(this.handleModes=yi),this.trackStartLines===!1&&(this.computeNewColumn=pa),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=yi),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=un(this.canModeBeOptimized,(u,h,f)=>(h===!1&&u.push(f),u),[]);if(r.ensureOptimizations&&!Tr(l))throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized. Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. - Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{ode()}),this.TRACE_INIT("toFastProperties",()=>{eb(this)})})}tokenize(e,r=this.defaultMode){if(!mr(this.lexerDefinitionErrors)){let i=rt(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- + Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{Wge()}),this.TRACE_INIT("toFastProperties",()=>{k4(this)})})}tokenize(e,r=this.defaultMode){if(!Tr(this.lexerDefinitionErrors)){let i=it(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- `);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: -`+i)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,v,x,b,T=e,S=T.length,w=0,k=0,C=this.hasCustom?0:Math.floor(e.length/10),A=new Array(C),L=[],I=this.trackStartLines?1:void 0,R=this.trackStartLines?1:void 0,E=vde(this.emptyGroups),_=this.trackStartLines,D=this.config.lineTerminatorsPattern,O=0,N=[],P=[],B=[],F=[];Object.freeze(F);let V;function $(){return N}o($,"getPossiblePatternsSlow");function U(Q){let ue=Yc(Q),te=P[ue];return te===void 0?F:te}o(U,"getPossiblePatternsOptimized");let j=o(Q=>{if(B.length===1&&Q.tokenType.PUSH_MODE===void 0){let ue=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(Q);L.push({offset:Q.startOffset,line:Q.startLine,column:Q.startColumn,length:Q.image.length,message:ue})}else{B.pop();let ue=ga(B);N=this.patternIdxToConfig[ue],P=this.charCodeToPatternIdxToConfig[ue],O=N.length;let te=this.canModeBeOptimized[ue]&&this.config.safeMode===!1;P&&te?V=U:V=$}},"pop_mode");function ee(Q){B.push(Q),P=this.charCodeToPatternIdxToConfig[Q],N=this.patternIdxToConfig[Q],O=N.length,O=N.length;let ue=this.canModeBeOptimized[Q]&&this.config.safeMode===!1;P&&ue?V=U:V=$}o(ee,"push_mode"),ee.call(this,r);let q,oe=this.config.recoveryEnabled;for(;wu.length){u=s,h=f,q=ae;break}}}break}}if(u!==null){if(d=u.length,p=q.group,p!==void 0&&(m=q.tokenTypeIdx,g=this.createTokenInstance(u,w,m,q.tokenType,I,R,d),this.handlePayload(g,h),p===!1?k=this.addToken(A,k,g):E[p].push(g)),e=this.chopInput(e,d),w=w+d,R=this.computeNewColumn(R,d),_===!0&&q.canLineTerminator===!0){let re=0,J,K;D.lastIndex=0;do J=D.test(u),J===!0&&(K=D.lastIndex-1,re++);while(J===!0);re!==0&&(I=I+re,R=d-K,this.updateTokenEndLineColumnLocation(g,p,K,re,I,R,d))}this.handleModes(q,j,ee,g)}else{let re=w,J=I,K=R,ae=oe===!1;for(;ae===!1&&w{"use strict";Yt();rb();Vp();o(Ku,"tokenLabel");o(ZO,"hasTokenLabel");PYe="parent",_de="categories",Dde="label",Lde="group",Rde="push_mode",Nde="pop_mode",Mde="longer_alt",Ide="line_breaks",Ode="start_chars_hint";o(Pf,"createToken");o(BYe,"createTokenInternal");yo=Pf({name:"EOF",pattern:Zn.NA});ju([yo]);o(Qu,"createTokenInstance");o(ib,"tokenMatcher")});var Zu,Pde,Gl,b1=M(()=>{"use strict";Up();Yt();ps();Zu={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${ZO(t)?`--> ${Ku(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=` -but found: '`+ea(e).image+"'";if(n)return a+n+l;{let u=Jr(t,(p,m)=>p.concat(m),[]),h=rt(u,p=>`[${rt(p,m=>Ku(m)).join(", ")}]`),d=`one of these possible Token sequences: -${rt(h,(p,m)=>` ${m+1}. ${p}`).join(` +`+i)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,v,x,b,T=e,E=T.length,w=0,k=0,C=this.hasCustom?0:Math.floor(e.length/10),D=new Array(C),R=[],O=this.trackStartLines?1:void 0,L=this.trackStartLines?1:void 0,S=r1e(this.emptyGroups),A=this.trackStartLines,_=this.config.lineTerminatorsPattern,N=0,M=[],P=[],B=[],F=[];Object.freeze(F);let G;function $(){return M}o($,"getPossiblePatternsSlow");function V(Z){let de=Ru(Z),re=P[de];return re===void 0?F:re}o(V,"getPossiblePatternsOptimized");let K=o(Z=>{if(B.length===1&&Z.tokenType.PUSH_MODE===void 0){let de=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(Z);R.push({offset:Z.startOffset,line:Z.startLine,column:Z.startColumn,length:Z.image.length,message:de})}else{B.pop();let de=ya(B);M=this.patternIdxToConfig[de],P=this.charCodeToPatternIdxToConfig[de],N=M.length;let re=this.canModeBeOptimized[de]&&this.config.safeMode===!1;P&&re?G=V:G=$}},"pop_mode");function ee(Z){B.push(Z),P=this.charCodeToPatternIdxToConfig[Z],M=this.patternIdxToConfig[Z],N=M.length,N=M.length;let de=this.canModeBeOptimized[Z]&&this.config.safeMode===!1;P&&de?G=V:G=$}o(ee,"push_mode"),ee.call(this,r);let H,he=this.config.recoveryEnabled;for(;wu.length){u=s,h=f,H=le;break}}}break}}if(u!==null){if(d=u.length,p=H.group,p!==void 0&&(m=H.tokenTypeIdx,g=this.createTokenInstance(u,w,m,H.tokenType,O,L,d),this.handlePayload(g,h),p===!1?k=this.addToken(D,k,g):S[p].push(g)),e=this.chopInput(e,d),w=w+d,L=this.computeNewColumn(L,d),A===!0&&H.canLineTerminator===!0){let ne=0,te,Q;_.lastIndex=0;do te=_.test(u),te===!0&&(Q=_.lastIndex-1,ne++);while(te===!0);ne!==0&&(O=O+ne,L=d-Q,this.updateTokenEndLineColumnLocation(g,p,Q,ne,O,L,d))}this.handleModes(H,K,ee,g)}else{let ne=w,te=O,Q=L,le=he===!1;for(;le===!1&&w{"use strict";Kt();E4();fm();o(qh,"tokenLabel");o(AF,"hasTokenLabel");jet="parent",f1e="categories",d1e="label",p1e="group",m1e="push_mode",g1e="pop_mode",y1e="longer_alt",v1e="line_breaks",x1e="start_chars_hint";o(zd,"createToken");o(Xet,"createTokenInternal");Ho=zd({name:"EOF",pattern:li.NA});Vh([Ho]);o(Uh,"createTokenInstance");o(A4,"tokenMatcher")});var Wh,b1e,kc,Ey=I(()=>{"use strict";dm();Kt();Fs();Wh={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${AF(t)?`--> ${qh(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=` +but found: '`+va(e).image+"'";if(n)return a+n+l;{let u=un(t,(p,m)=>p.concat(m),[]),h=it(u,p=>`[${it(p,m=>qh(m)).join(", ")}]`),d=`one of these possible Token sequences: +${it(h,(p,m)=>` ${m+1}. ${p}`).join(` `)}`;return a+d+l}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",s=` -but found: '`+ea(e).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: - <${rt(t,h=>`[${rt(h,f=>Ku(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(Zu);Pde={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- -inside top level rule: ->`+t.name+"<-"}},Gl={buildDuplicateFoundError(t,e){function r(f){return f instanceof Ar?f.terminalType.name:f instanceof fn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=t.name,i=ea(e),a=i.idx,s=Xs(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""} +but found: '`+va(e).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: + <${it(t,h=>`[${it(h,f=>qh(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(Wh);b1e={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- +inside top level rule: ->`+t.name+"<-"}},kc={buildDuplicateFoundError(t,e){function r(f){return f instanceof Pr?f.terminalType.name:f instanceof Tn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=t.name,i=va(e),a=i.idx,s=vo(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""} appears more than once (${e.length} times) in the top level rule: ->${n}<-. For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES `;return h=h.replace(/[ \t]+/g," "),h=h.replace(/\s\s+/g,` @@ -1133,78 +1133,110 @@ inside top level rule: ->`+t.name+"<-"}},Gl={buildDuplicateFoundError(t,e){funct The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>. To resolve this make sure each Terminal and Non-Terminal names are unique This is easy to accomplish by using the convention that Terminal names start with an uppercase letter -and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=rt(t.prefixPath,i=>Ku(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix +and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=it(t.prefixPath,i=>qh(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix in inside <${t.topLevelRule.name}> Rule, <${e}> may appears as a prefix path in all these alternatives. See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX -For Further details.`},buildAlternationAmbiguityError(t){let e=rt(t.prefixPath,i=>Ku(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in inside <${t.topLevelRule.name}> Rule, +For Further details.`},buildAlternationAmbiguityError(t){let e=it(t.prefixPath,i=>qh(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in inside <${t.topLevelRule.name}> Rule, <${e}> may appears as a prefix path in all these alternatives. `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES -For Further details.`,n},buildEmptyRepetitionError(t){let e=Xs(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. +For Further details.`,n},buildEmptyRepetitionError(t){let e=vo(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in inside <${t.topLevelRule.name}> Rule. Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives: inside <${t.topLevelRule.name}> Rule. - has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=rt(t.leftRecursionPath,a=>a.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. + has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=it(t.leftRecursionPath,a=>a.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. rule: <${e}> can be invoked from itself (directly or indirectly) without consuming any Tokens. The grammar path that causes this is: ${n} To fix this refactor your grammar to remove the left recursion. -see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof fs?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}}});function Bde(t,e){let r=new JO(t,e);return r.resolveRefs(),r.errors}var JO,Fde=M(()=>{"use strict";js();Yt();ps();o(Bde,"resolveGrammar");JO=class extends ds{static{o(this,"GastRefResolverVisitor")}constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Ae(kr(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:Gi.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}});function oS(t,e,r=[]){r=ln(r);let n=[],i=0;function a(l){return l.concat(yi(t,i+1))}o(a,"remainingPathWith");function s(l){let u=oS(a(l),e,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length{mr(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof Ar)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:yi(t,i)}),n}function lS(t,e,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=e.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!mr(d);){let p=d.pop();if(p===s){l&&ga(d).idx<=h&&d.pop();continue}let m=p.def,g=p.idx,y=p.ruleStack,v=p.occurrenceStack;if(mr(m))continue;let x=m[0];if(x===i){let b={idx:g,def:yi(m),ruleStack:Bu(y),occurrenceStack:Bu(v)};d.push(b)}else if(x instanceof Ar)if(g=0;b--){let T=x.definition[b],S={idx:g,def:T.definition.concat(yi(m)),ruleStack:y,occurrenceStack:v};d.push(S),d.push(s)}else if(x instanceof Pn)d.push({idx:g,def:x.definition.concat(yi(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof fs)d.push(FYe(x,g,y,v));else throw Error("non exhaustive match")}return f}function FYe(t,e,r,n){let i=ln(r);i.push(t.name);let a=ln(n);return a.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:a}}var eP,iS,T1,aS,ab,sS,sb,ob=M(()=>{"use strict";Yt();GO();KE();ps();eP=class extends Yu{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=ln(this.path.ruleStack).reverse(),this.occurrenceStack=ln(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){mr(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},iS=class extends eP{static{o(this,"NextAfterTokenWalker")}constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new Pn({definition:i});this.possibleTokTypes=zp(a),this.found=!0}}},T1=class extends Yu{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},aS=class extends T1{static{o(this,"NextTerminalAfterManyWalker")}walkMany(e,r,n){if(e.idx===this.occurrence){let i=ea(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ar&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},ab=class extends T1{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(e,r,n){if(e.idx===this.occurrence){let i=ea(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ar&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},sS=class extends T1{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=ea(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ar&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},sb=class extends T1{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=ea(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Ar&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};o(oS,"possiblePathsFrom");o(lS,"nextPossibleTokensAfter");o(FYe,"expandTopLevelRule")});function lb(t){if(t instanceof dn||t==="Option")return Jn.OPTION;if(t instanceof zr||t==="Repetition")return Jn.REPETITION;if(t instanceof Bn||t==="RepetitionMandatory")return Jn.REPETITION_MANDATORY;if(t instanceof Fn||t==="RepetitionMandatoryWithSeparator")return Jn.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof _n||t==="RepetitionWithSeparator")return Jn.REPETITION_WITH_SEPARATOR;if(t instanceof Dn||t==="Alternation")return Jn.ALTERNATION;throw Error("non exhaustive match")}function uS(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=lb(n);return a===Jn.ALTERNATION?w1(e,r,i):k1(e,r,a,i)}function zde(t,e,r,n,i,a){let s=w1(t,e,r),l=Wde(s)?v1:Xu;return a(s,n,l,i)}function Gde(t,e,r,n,i,a){let s=k1(t,e,i,r),l=Wde(s)?v1:Xu;return a(s[0],l,n)}function Vde(t,e,r,n){let i=t.length,a=Ba(t,s=>Ba(s,l=>l.length===1));if(e)return function(s){let l=rt(s,u=>u.GATE);for(let u=0;uQr(u)),l=Jr(s,(u,h,f)=>(Ae(h,d=>{Ft(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Ae(d.categoryMatches,p=>{Ft(u,p)||(u[p]=f)})}),u),{});return function(){let u=this.LA(1);return l[u.tokenTypeIdx]}}else return function(){for(let s=0;sa.length===1),i=t.length;if(n&&!r){let a=Qr(t);if(a.length===1&&mr(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let s=Jr(a,(l,u,h)=>(l[u.tokenTypeIdx]=!0,Ae(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){e:for(let a=0;aoS([s],1)),n=$de(r.length),i=rt(r,s=>{let l={};return Ae(s,u=>{let h=tP(u.partialPath);Ae(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=e;s++){let l=a;a=$de(l.length);for(let u=0;u{let x=tP(v.partialPath);Ae(x,b=>{i[u][b]=!0})})}}}}return n}function w1(t,e,r,n){let i=new cS(t,Jn.ALTERNATION,n);return e.accept(i),Hde(i.result,r)}function k1(t,e,r,n){let i=new cS(t,r);e.accept(i);let a=i.result,l=new rP(e,t,r).startWalking(),u=new Pn({definition:a}),h=new Pn({definition:l});return Hde([u,h],n)}function hS(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Wde(t){return Ba(t,e=>Ba(e,r=>Ba(r,n=>mr(n.categoryMatches))))}var Jn,rP,cS,E1=M(()=>{"use strict";Yt();ob();KE();Vp();ps();(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(Jn||(Jn={}));o(lb,"getProdType");o(uS,"getLookaheadPaths");o(zde,"buildLookaheadFuncForOr");o(Gde,"buildLookaheadFuncForOptionalProd");o(Vde,"buildAlternativesLookAheadFunc");o(Ude,"buildSingleAlternativeLookaheadFunction");rP=class extends Yu{static{o(this,"RestDefinitionFinderWalker")}constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,Jn.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,Jn.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,Jn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,Jn.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,Jn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},cS=class extends ds{static{o(this,"InsideDefinitionFinderVisitor")}constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,Jn.OPTION)}visitRepetition(e){this.checkIsTarget(e,Jn.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,Jn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,Jn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,Jn.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,Jn.ALTERNATION)}};o($de,"initializeArrayOfArrays");o(tP,"pathToHashKeys");o($Ye,"isUniquePrefixHash");o(Hde,"lookAheadSequenceFromAlternatives");o(w1,"getLookaheadPathsForOr");o(k1,"getLookaheadPathsForOptionalProd");o(hS,"containsPath");o(qde,"isStrictPrefixOfPath");o(Wde,"areTokenCategoriesNotUsed")});function Yde(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return rt(e,r=>Object.assign({type:Gi.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Xde(t,e,r,n){let i=ya(t,u=>zYe(u,r)),a=WYe(t,e,r),s=ya(t,u=>UYe(u,r)),l=ya(t,u=>VYe(u,t,n,r));return i.concat(a,s,l)}function zYe(t,e){let r=new nP;t.accept(r);let n=r.allProductions,i=DR(n,GYe),a=Vs(i,l=>l.length>1);return rt(kr(a),l=>{let u=ea(l),h=e.buildDuplicateFoundError(t,l),f=Xs(u),d={message:h,type:Gi.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:u.idx},p=jde(u);return p&&(d.parameter=p),d})}function GYe(t){return`${Xs(t)}_#_${t.idx}_#_${jde(t)}`}function jde(t){return t instanceof Ar?t.terminalType.name:t instanceof fn?t.nonTerminalName:""}function VYe(t,e,r,n){let i=[];if(Jr(e,(s,l)=>l.name===t.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:s,type:Gi.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function Kde(t,e,r){let n=[],i;return jn(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Gi.INVALID_RULE_OVERRIDE,ruleName:t})),n}function aP(t,e,r,n=[]){let i=[],a=fS(e.definition);if(mr(a))return[];{let s=t.name;jn(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:Gi.LEFT_RECURSION,ruleName:s});let u=lf(a,n.concat([t])),h=ya(u,f=>{let d=ln(n);return d.push(f),aP(t,f,r,d)});return i.concat(h)}}function fS(t){let e=[];if(mr(t))return e;let r=ea(t);if(r instanceof fn)e.push(r.referencedRule);else if(r instanceof Pn||r instanceof dn||r instanceof Bn||r instanceof Fn||r instanceof _n||r instanceof zr)e=e.concat(fS(r.definition));else if(r instanceof Dn)e=Qr(rt(r.definition,a=>fS(a.definition)));else if(!(r instanceof Ar))throw Error("non exhaustive match");let n=$p(r),i=t.length>1;if(n&&i){let a=yi(t);return e.concat(fS(a))}else return e}function Qde(t,e){let r=new cb;t.accept(r);let n=r.alternations;return ya(n,a=>{let s=Bu(a.definition);return ya(s,(l,u)=>{let h=lS([l],[],Xu,1);return mr(h)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:a,emptyChoiceIdx:u}),type:Gi.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:a.idx,alternative:u+1}]:[]})})}function Zde(t,e,r){let n=new cb;t.accept(n);let i=n.alternations;return i=cf(i,s=>s.ignoreAmbiguities===!0),ya(i,s=>{let l=s.idx,u=s.maxLookahead||e,h=w1(l,t,u,s),f=HYe(h,s,t,r),d=qYe(h,s,t,r);return f.concat(d)})}function UYe(t,e){let r=new cb;t.accept(r);let n=r.alternations;return ya(n,a=>a.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:a}),type:Gi.TOO_MANY_ALTS,ruleName:t.name,occurrence:a.idx}]:[])}function Jde(t,e,r){let n=[];return Ae(t,i=>{let a=new iP;i.accept(a);let s=a.allProductions;Ae(s,l=>{let u=lb(l),h=l.maxLookahead||e,f=l.idx,p=k1(f,i,u,h)[0];if(mr(Qr(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:Gi.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function HYe(t,e,r,n){let i=[],a=Jr(t,(l,u,h)=>(e.definition[h].ignoreAmbiguities===!0||Ae(u,f=>{let d=[h];Ae(t,(p,m)=>{h!==m&&hS(p,f)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!hS(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return rt(a,l=>{let u=rt(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:u,prefixPath:l.path}),type:Gi.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}function qYe(t,e,r,n){let i=Jr(t,(s,l,u)=>{let h=rt(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return _c(ya(i,s=>{if(e.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=Zr(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx{let m=[p.idx+1,u+1],g=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:m,prefixPath:p.path}),type:Gi.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function WYe(t,e,r){let n=[],i=rt(e,a=>a.name);return Ae(t,a=>{let s=a.name;if(jn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:Gi.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var nP,cb,iP,ub=M(()=>{"use strict";Yt();js();ps();E1();ob();Vp();o(Yde,"validateLookahead");o(Xde,"validateGrammar");o(zYe,"validateDuplicateProductions");o(GYe,"identifyProductionForDuplicates");o(jde,"getExtraProductionArgument");nP=class extends ds{static{o(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};o(VYe,"validateRuleDoesNotAlreadyExist");o(Kde,"validateRuleIsOverridden");o(aP,"validateNoLeftRecursion");o(fS,"getFirstNoneTerminal");cb=class extends ds{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};o(Qde,"validateEmptyOrAlternative");o(Zde,"validateAmbiguousAlternationAlternatives");iP=class extends ds{static{o(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};o(UYe,"validateTooManyAlts");o(Jde,"validateSomeNonEmptyLookaheadPath");o(HYe,"checkAlternativesAmbiguities");o(qYe,"checkPrefixAlternativesAmbiguities");o(WYe,"checkTerminalAndNoneTerminalsNameSpace")});function epe(t){let e=of(t,{errMsgProvider:Pde}),r={};return Ae(t.rules,n=>{r[n.name]=n}),Bde(r,e.errMsgProvider)}function tpe(t){return t=of(t,{errMsgProvider:Gl}),Xde(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var rpe=M(()=>{"use strict";Yt();Fde();ub();b1();o(epe,"resolveGrammar");o(tpe,"validateGrammar")});function Bf(t){return jn(ope,t.name)}var npe,ipe,ape,spe,ope,S1,Hp,hb,fb,db,C1=M(()=>{"use strict";Yt();npe="MismatchedTokenException",ipe="NoViableAltException",ape="EarlyExitException",spe="NotAllInputParsedException",ope=[npe,ipe,ape,spe];Object.freeze(ope);o(Bf,"isRecognitionException");S1=class extends Error{static{o(this,"RecognitionException")}constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},Hp=class extends S1{static{o(this,"MismatchedTokenException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=npe}},hb=class extends S1{static{o(this,"NoViableAltException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=ipe}},fb=class extends S1{static{o(this,"NotAllInputParsedException")}constructor(e,r){super(e,r),this.name=spe}},db=class extends S1{static{o(this,"EarlyExitException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=ape}}});function YYe(t,e,r,n,i,a,s){let l=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[l];if(u===void 0){let p=this.getCurrRuleFullName(),m=this.getGAstProductions()[p];u=new a(m,i).startWalking(),this.firstAfterRepMap[l]=u}let h=u.token,f=u.occurrence,d=u.isEndOfRule;this.RULE_STACK.length===1&&d&&h===void 0&&(h=yo,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(t,e,r,h)}var sP,lP,oP,dS,cP=M(()=>{"use strict";Up();Yt();C1();VO();js();sP={},lP="InRuleRecoveryException",oP=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=lP}},dS=class{static{o(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=Ft(e,"recoveryEnabled")?e.recoveryEnabled:ms.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=YYe)}getTokenToInsert(e){let r=Qu(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,h=this.LA(1),f=this.LA(1),d=o(()=>{let p=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:h,previous:p,ruleName:this.getCurrRuleFullName()}),g=new Hp(m,h,this.LA(0));g.resyncedTokens=Bu(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),e.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new oP("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||mr(r))return!1;let n=this.LA(1);return os(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return jn(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=os(e,a=>ib(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return sP;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return rt(e,(n,i)=>i===0?sP:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=rt(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Qr(e)}getFollowSetFromFollowKey(e){if(e===sP)return[yo];let r=e.ruleName+e.idxInCallingRule+QE+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,yo)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Bu(r)}attemptInRepetitionRecovery(e,r,n,i,a,s,l){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=ln(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return rt(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};o(YYe,"attemptInRepetitionRecovery")});function pS(t,e,r){return r|e|t}var mS=M(()=>{"use strict";o(pS,"getKeyForAutomaticLookahead")});var Ju,uP=M(()=>{"use strict";Yt();b1();js();ub();E1();Ju=class{static{o(this,"LLkLookaheadStrategy")}constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:ms.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(mr(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(e){return ya(e,r=>aP(r,r,Gl))}validateEmptyOrAlternatives(e){return ya(e,r=>Qde(r,Gl))}validateAmbiguousAlternationAlternatives(e,r){return ya(e,n=>Zde(n,r,Gl))}validateSomeNonEmptyLookaheadPath(e,r){return Jde(e,r,Gl)}buildLookaheadForAlternation(e){return zde(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Vde)}buildLookaheadForOptional(e){return Gde(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,lb(e.prodType),Ude)}}});function XYe(t){gS.reset(),t.accept(gS);let e=gS.dslMethods;return gS.reset(),e}var yS,hP,gS,lpe=M(()=>{"use strict";Yt();js();mS();ps();uP();yS=class{static{o(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Ft(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:ms.dynamicTokensEnabled,this.maxLookahead=Ft(e,"maxLookahead")?e.maxLookahead:ms.maxLookahead,this.lookaheadStrategy=Ft(e,"lookaheadStrategy")?e.lookaheadStrategy:new Ju({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){Ae(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=XYe(r);Ae(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${Xs(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=pS(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Ae(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,Xs(h))}),Ae(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,Xs(h))}),Ae(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,Xs(h))}),Ae(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,Xs(h))}),Ae(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,Xs(h))})})})}computeLookaheadFunc(e,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=pS(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return pS(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},hP=class extends ds{static{o(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},gS=new hP;o(XYe,"collectMethods")});function pP(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";o(pP,"setNodeLocationOnlyOffset");o(mP,"setNodeLocationFull");o(cpe,"addTerminalToCst");o(upe,"addNoneTerminalToCst")});function gP(t,e){Object.defineProperty(t,jYe,{enumerable:!1,configurable:!0,writable:!1,value:e})}var jYe,fpe=M(()=>{"use strict";jYe="name";o(gP,"defineNameProp")});function KYe(t,e){let r=qr(t),n=r.length;for(let i=0;is.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: +see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof Ps?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}}});function T1e(t,e){let r=new _F(t,e);return r.resolveRefs(),r.errors}var _F,w1e=I(()=>{"use strict";xo();Kt();Fs();o(T1e,"resolveGrammar");_F=class extends Bs{static{o(this,"GastRefResolverVisitor")}constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Re(Rr(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:na.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}});function r6(t,e,r=[]){r=yn(r);let n=[],i=0;function a(l){return l.concat(Ni(t,i+1))}o(a,"remainingPathWith");function s(l){let u=r6(a(l),e,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length{Tr(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof Pr)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:Ni(t,i)}),n}function n6(t,e,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=e.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!Tr(d);){let p=d.pop();if(p===s){l&&ya(d).idx<=h&&d.pop();continue}let m=p.def,g=p.idx,y=p.ruleStack,v=p.occurrenceStack;if(Tr(m))continue;let x=m[0];if(x===i){let b={idx:g,def:Ni(m),ruleStack:Ch(y),occurrenceStack:Ch(v)};d.push(b)}else if(x instanceof Pr)if(g=0;b--){let T=x.definition[b],E={idx:g,def:T.definition.concat(Ni(m)),ruleStack:y,occurrenceStack:v};d.push(E),d.push(s)}else if(x instanceof Un)d.push({idx:g,def:x.definition.concat(Ni(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof Ps)d.push(Ket(x,g,y,v));else throw Error("non exhaustive match")}return f}function Ket(t,e,r,n){let i=yn(r);i.push(t.name);let a=yn(n);return a.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:a}}var DF,JC,Cy,e6,_4,t6,D4,R4=I(()=>{"use strict";Kt();gF();WC();Fs();DF=class extends zh{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=yn(this.path.ruleStack).reverse(),this.occurrenceStack=yn(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){Tr(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},JC=class extends DF{static{o(this,"NextAfterTokenWalker")}constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new Un({definition:i});this.possibleTokTypes=um(a),this.found=!0}}},Cy=class extends zh{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},e6=class extends Cy{static{o(this,"NextTerminalAfterManyWalker")}walkMany(e,r,n){if(e.idx===this.occurrence){let i=va(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Pr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},_4=class extends Cy{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(e,r,n){if(e.idx===this.occurrence){let i=va(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Pr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},t6=class extends Cy{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=va(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Pr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},D4=class extends Cy{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=va(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Pr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};o(r6,"possiblePathsFrom");o(n6,"nextPossibleTokensAfter");o(Ket,"expandTopLevelRule")});function L4(t){if(t instanceof wn||t==="Option")return ci.OPTION;if(t instanceof Kr||t==="Repetition")return ci.REPETITION;if(t instanceof Wn||t==="RepetitionMandatory")return ci.REPETITION_MANDATORY;if(t instanceof Hn||t==="RepetitionMandatoryWithSeparator")return ci.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof Bn||t==="RepetitionWithSeparator")return ci.REPETITION_WITH_SEPARATOR;if(t instanceof Fn||t==="Alternation")return ci.ALTERNATION;throw Error("non exhaustive match")}function a6(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=L4(n);return a===ci.ALTERNATION?Ay(e,r,i):_y(e,r,a,i)}function S1e(t,e,r,n,i,a){let s=Ay(t,e,r),l=R1e(s)?ky:Gh;return a(s,n,l,i)}function E1e(t,e,r,n,i,a){let s=_y(t,e,i,r),l=R1e(s)?ky:Gh;return a(s[0],l,n)}function C1e(t,e,r,n){let i=t.length,a=rs(t,s=>rs(s,l=>l.length===1));if(e)return function(s){let l=it(s,u=>u.GATE);for(let u=0;uln(u)),l=un(s,(u,h,f)=>(Re(h,d=>{Gt(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Re(d.categoryMatches,p=>{Gt(u,p)||(u[p]=f)})}),u),{});return function(){let u=this.LA(1);return l[u.tokenTypeIdx]}}else return function(){for(let s=0;sa.length===1),i=t.length;if(n&&!r){let a=ln(t);if(a.length===1&&Tr(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let s=un(a,(l,u,h)=>(l[u.tokenTypeIdx]=!0,Re(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){e:for(let a=0;ar6([s],1)),n=k1e(r.length),i=it(r,s=>{let l={};return Re(s,u=>{let h=RF(u.partialPath);Re(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=e;s++){let l=a;a=k1e(l.length);for(let u=0;u{let x=RF(v.partialPath);Re(x,b=>{i[u][b]=!0})})}}}}return n}function Ay(t,e,r,n){let i=new i6(t,ci.ALTERNATION,n);return e.accept(i),_1e(i.result,r)}function _y(t,e,r,n){let i=new i6(t,r);e.accept(i);let a=i.result,l=new LF(e,t,r).startWalking(),u=new Un({definition:a}),h=new Un({definition:l});return _1e([u,h],n)}function s6(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function R1e(t){return rs(t,e=>rs(e,r=>rs(r,n=>Tr(n.categoryMatches))))}var ci,LF,i6,Dy=I(()=>{"use strict";Kt();R4();WC();fm();Fs();(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(ci||(ci={}));o(L4,"getProdType");o(a6,"getLookaheadPaths");o(S1e,"buildLookaheadFuncForOr");o(E1e,"buildLookaheadFuncForOptionalProd");o(C1e,"buildAlternativesLookAheadFunc");o(A1e,"buildSingleAlternativeLookaheadFunction");LF=class extends zh{static{o(this,"RestDefinitionFinderWalker")}constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,ci.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,ci.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,ci.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,ci.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,ci.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},i6=class extends Bs{static{o(this,"InsideDefinitionFinderVisitor")}constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,ci.OPTION)}visitRepetition(e){this.checkIsTarget(e,ci.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,ci.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,ci.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,ci.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,ci.ALTERNATION)}};o(k1e,"initializeArrayOfArrays");o(RF,"pathToHashKeys");o(Qet,"isUniquePrefixHash");o(_1e,"lookAheadSequenceFromAlternatives");o(Ay,"getLookaheadPathsForOr");o(_y,"getLookaheadPathsForOptionalProd");o(s6,"containsPath");o(D1e,"isStrictPrefixOfPath");o(R1e,"areTokenCategoriesNotUsed")});function L1e(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return it(e,r=>Object.assign({type:na.CUSTOM_LOOKAHEAD_VALIDATION},r))}function N1e(t,e,r,n){let i=Ba(t,u=>Zet(u,r)),a=itt(t,e,r),s=Ba(t,u=>ttt(u,r)),l=Ba(t,u=>ett(u,t,n,r));return i.concat(a,s,l)}function Zet(t,e){let r=new NF;t.accept(r);let n=r.allProductions,i=iI(n,Jet),a=uo(i,l=>l.length>1);return it(Rr(a),l=>{let u=va(l),h=e.buildDuplicateFoundError(t,l),f=vo(u),d={message:h,type:na.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:u.idx},p=M1e(u);return p&&(d.parameter=p),d})}function Jet(t){return`${vo(t)}_#_${t.idx}_#_${M1e(t)}`}function M1e(t){return t instanceof Pr?t.terminalType.name:t instanceof Tn?t.nonTerminalName:""}function ett(t,e,r,n){let i=[];if(un(e,(s,l)=>l.name===t.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:s,type:na.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function I1e(t,e,r){let n=[],i;return ai(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:na.INVALID_RULE_OVERRIDE,ruleName:t})),n}function IF(t,e,r,n=[]){let i=[],a=o6(e.definition);if(Tr(a))return[];{let s=t.name;ai(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:na.LEFT_RECURSION,ruleName:s});let u=rd(a,n.concat([t])),h=Ba(u,f=>{let d=yn(n);return d.push(f),IF(t,f,r,d)});return i.concat(h)}}function o6(t){let e=[];if(Tr(t))return e;let r=va(t);if(r instanceof Tn)e.push(r.referencedRule);else if(r instanceof Un||r instanceof wn||r instanceof Wn||r instanceof Hn||r instanceof Bn||r instanceof Kr)e=e.concat(o6(r.definition));else if(r instanceof Fn)e=ln(it(r.definition,a=>o6(a.definition)));else if(!(r instanceof Pr))throw Error("non exhaustive match");let n=cm(r),i=t.length>1;if(n&&i){let a=Ni(t);return e.concat(o6(a))}else return e}function O1e(t,e){let r=new N4;t.accept(r);let n=r.alternations;return Ba(n,a=>{let s=Ch(a.definition);return Ba(s,(l,u)=>{let h=n6([l],[],Gh,1);return Tr(h)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:a,emptyChoiceIdx:u}),type:na.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:a.idx,alternative:u+1}]:[]})})}function P1e(t,e,r){let n=new N4;t.accept(n);let i=n.alternations;return i=nd(i,s=>s.ignoreAmbiguities===!0),Ba(i,s=>{let l=s.idx,u=s.maxLookahead||e,h=Ay(l,t,u,s),f=rtt(h,s,t,r),d=ntt(h,s,t,r);return f.concat(d)})}function ttt(t,e){let r=new N4;t.accept(r);let n=r.alternations;return Ba(n,a=>a.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:a}),type:na.TOO_MANY_ALTS,ruleName:t.name,occurrence:a.idx}]:[])}function B1e(t,e,r){let n=[];return Re(t,i=>{let a=new MF;i.accept(a);let s=a.allProductions;Re(s,l=>{let u=L4(l),h=l.maxLookahead||e,f=l.idx,p=_y(f,i,u,h)[0];if(Tr(ln(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:na.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function rtt(t,e,r,n){let i=[],a=un(t,(l,u,h)=>(e.definition[h].ignoreAmbiguities===!0||Re(u,f=>{let d=[h];Re(t,(p,m)=>{h!==m&&s6(p,f)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!s6(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return it(a,l=>{let u=it(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:u,prefixPath:l.path}),type:na.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}function ntt(t,e,r,n){let i=un(t,(s,l,u)=>{let h=it(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return fu(Ba(i,s=>{if(e.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=cn(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx{let m=[p.idx+1,u+1],g=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:m,prefixPath:p.path}),type:na.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function itt(t,e,r){let n=[],i=it(e,a=>a.name);return Re(t,a=>{let s=a.name;if(ai(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:na.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var NF,N4,MF,M4=I(()=>{"use strict";Kt();xo();Fs();Dy();R4();fm();o(L1e,"validateLookahead");o(N1e,"validateGrammar");o(Zet,"validateDuplicateProductions");o(Jet,"identifyProductionForDuplicates");o(M1e,"getExtraProductionArgument");NF=class extends Bs{static{o(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};o(ett,"validateRuleDoesNotAlreadyExist");o(I1e,"validateRuleIsOverridden");o(IF,"validateNoLeftRecursion");o(o6,"getFirstNoneTerminal");N4=class extends Bs{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};o(O1e,"validateEmptyOrAlternative");o(P1e,"validateAmbiguousAlternationAlternatives");MF=class extends Bs{static{o(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};o(ttt,"validateTooManyAlts");o(B1e,"validateSomeNonEmptyLookaheadPath");o(rtt,"checkAlternativesAmbiguities");o(ntt,"checkPrefixAlternativesAmbiguities");o(itt,"checkTerminalAndNoneTerminalsNameSpace")});function F1e(t){let e=td(t,{errMsgProvider:b1e}),r={};return Re(t.rules,n=>{r[n.name]=n}),T1e(r,e.errMsgProvider)}function $1e(t){return t=td(t,{errMsgProvider:kc}),N1e(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var z1e=I(()=>{"use strict";Kt();w1e();M4();Ey();o(F1e,"resolveGrammar");o($1e,"validateGrammar")});function Gd(t){return ai(W1e,t.name)}var G1e,V1e,q1e,U1e,W1e,Ry,pm,I4,O4,P4,Ly=I(()=>{"use strict";Kt();G1e="MismatchedTokenException",V1e="NoViableAltException",q1e="EarlyExitException",U1e="NotAllInputParsedException",W1e=[G1e,V1e,q1e,U1e];Object.freeze(W1e);o(Gd,"isRecognitionException");Ry=class extends Error{static{o(this,"RecognitionException")}constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},pm=class extends Ry{static{o(this,"MismatchedTokenException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=G1e}},I4=class extends Ry{static{o(this,"NoViableAltException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=V1e}},O4=class extends Ry{static{o(this,"NotAllInputParsedException")}constructor(e,r){super(e,r),this.name=U1e}},P4=class extends Ry{static{o(this,"EarlyExitException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=q1e}}});function att(t,e,r,n,i,a,s){let l=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[l];if(u===void 0){let p=this.getCurrRuleFullName(),m=this.getGAstProductions()[p];u=new a(m,i).startWalking(),this.firstAfterRepMap[l]=u}let h=u.token,f=u.occurrence,d=u.isEndOfRule;this.RULE_STACK.length===1&&d&&h===void 0&&(h=Ho,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(t,e,r,h)}var OF,BF,PF,l6,FF=I(()=>{"use strict";dm();Kt();Ly();yF();xo();OF={},BF="InRuleRecoveryException",PF=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=BF}},l6=class{static{o(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=Gt(e,"recoveryEnabled")?e.recoveryEnabled:$s.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=att)}getTokenToInsert(e){let r=Uh(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,h=this.LA(1),f=this.LA(1),d=o(()=>{let p=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:h,previous:p,ruleName:this.getCurrRuleFullName()}),g=new pm(m,h,this.LA(0));g.resyncedTokens=Ch(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),e.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new PF("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||Tr(r))return!1;let n=this.LA(1);return Ds(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return ai(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=Ds(e,a=>A4(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return OF;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return it(e,(n,i)=>i===0?OF:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=it(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return ln(e)}getFollowSetFromFollowKey(e){if(e===OF)return[Ho];let r=e.ruleName+e.idxInCallingRule+HC+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,Ho)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Ch(r)}attemptInRepetitionRecovery(e,r,n,i,a,s,l){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=yn(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return it(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};o(att,"attemptInRepetitionRecovery")});function c6(t,e,r){return r|e|t}var u6=I(()=>{"use strict";o(c6,"getKeyForAutomaticLookahead")});var Hh,$F=I(()=>{"use strict";Kt();Ey();xo();M4();Dy();Hh=class{static{o(this,"LLkLookaheadStrategy")}constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:$s.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(Tr(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(e){return Ba(e,r=>IF(r,r,kc))}validateEmptyOrAlternatives(e){return Ba(e,r=>O1e(r,kc))}validateAmbiguousAlternationAlternatives(e,r){return Ba(e,n=>P1e(n,r,kc))}validateSomeNonEmptyLookaheadPath(e,r){return B1e(e,r,kc)}buildLookaheadForAlternation(e){return S1e(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,C1e)}buildLookaheadForOptional(e){return E1e(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,L4(e.prodType),A1e)}}});function stt(t){h6.reset(),t.accept(h6);let e=h6.dslMethods;return h6.reset(),e}var f6,zF,h6,H1e=I(()=>{"use strict";Kt();xo();u6();Fs();$F();f6=class{static{o(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Gt(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:$s.dynamicTokensEnabled,this.maxLookahead=Gt(e,"maxLookahead")?e.maxLookahead:$s.maxLookahead,this.lookaheadStrategy=Gt(e,"lookaheadStrategy")?e.lookaheadStrategy:new Hh({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){Re(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=stt(r);Re(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${vo(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=c6(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Re(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,vo(h))}),Re(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,vo(h))}),Re(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,vo(h))}),Re(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,vo(h))}),Re(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,vo(h))})})})}computeLookaheadFunc(e,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=c6(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return c6(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},zF=class extends Bs{static{o(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},h6=new zF;o(stt,"collectMethods")});function qF(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";o(qF,"setNodeLocationOnlyOffset");o(UF,"setNodeLocationFull");o(Y1e,"addTerminalToCst");o(j1e,"addNoneTerminalToCst")});function WF(t,e){Object.defineProperty(t,ott,{enumerable:!1,configurable:!0,writable:!1,value:e})}var ott,K1e=I(()=>{"use strict";ott="name";o(WF,"defineNameProp")});function ltt(t,e){let r=en(t),n=r.length;for(let i=0;is.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: ${a.join(` `).replace(/\n/g,` - `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function ppe(t,e,r){let n=o(function(){},"derivedConstructor");gP(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Ae(e,a=>{i[a]=KYe}),n.prototype=i,n.prototype.constructor=n,n}function QYe(t,e){return ZYe(t,e)}function ZYe(t,e){let r=Zr(e,i=>Si(t[i])===!1),n=rt(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:yP.MISSING_METHOD,methodName:i}));return _c(n)}var yP,mpe=M(()=>{"use strict";Yt();fpe();o(KYe,"defaultVisit");o(dpe,"createBaseSemanticVisitorConstructor");o(ppe,"createBaseVisitorConstructorWithDefaults");(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(yP||(yP={}));o(QYe,"validateVisitor");o(ZYe,"validateMissingCstMethods")});var TS,gpe=M(()=>{"use strict";hpe();Yt();mpe();js();TS=class{static{o(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Ft(e,"nodeLocationTracking")?e.nodeLocationTracking:ms.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=si,this.cstFinallyStateUpdate=si,this.cstPostTerminal=si,this.cstPostNonTerminal=si,this.cstPostRule=si;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=mP,this.setNodeLocationFromNode=mP,this.cstPostRule=si,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=si,this.setNodeLocationFromNode=si,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=pP,this.setNodeLocationFromNode=pP,this.cstPostRule=si,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=si,this.setNodeLocationFromNode=si,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=si,this.setNodeLocationFromNode=si,this.cstPostRule=si,this.setInitialNodeLocation=si;else throw Error(`Invalid config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];cpe(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];upe(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(xr(this.baseCstVisitorConstructor)){let e=dpe(this.className,qr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(xr(this.baseCstVisitorWithDefaultsConstructor)){let e=ppe(this.className,qr(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}});var wS,ype=M(()=>{"use strict";js();wS=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):A1}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?A1:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}});var kS,vpe=M(()=>{"use strict";Yt();C1();js();b1();ub();ps();kS=class{static{o(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=_1){if(jn(this.definedRulesNames,e)){let s={message:Gl.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Gi.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=_1){let i=Kde(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(e,r,n);return this[e]=a,a}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(Bf(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return XE(kr(this.gastProductionsCache))}}});var ES,xpe=M(()=>{"use strict";Yt();mS();C1();E1();ob();js();cP();Up();Vp();ES=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=v1,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},Ft(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. + `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function Z1e(t,e,r){let n=o(function(){},"derivedConstructor");WF(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Re(e,a=>{i[a]=ltt}),n.prototype=i,n.prototype.constructor=n,n}function ctt(t,e){return utt(t,e)}function utt(t,e){let r=cn(e,i=>$i(t[i])===!1),n=it(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:HF.MISSING_METHOD,methodName:i}));return fu(n)}var HF,J1e=I(()=>{"use strict";Kt();K1e();o(ltt,"defaultVisit");o(Q1e,"createBaseSemanticVisitorConstructor");o(Z1e,"createBaseVisitorConstructorWithDefaults");(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(HF||(HF={}));o(ctt,"validateVisitor");o(utt,"validateMissingCstMethods")});var g6,eye=I(()=>{"use strict";X1e();Kt();J1e();xo();g6=class{static{o(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Gt(e,"nodeLocationTracking")?e.nodeLocationTracking:$s.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=yi,this.cstFinallyStateUpdate=yi,this.cstPostTerminal=yi,this.cstPostNonTerminal=yi,this.cstPostRule=yi;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=UF,this.setNodeLocationFromNode=UF,this.cstPostRule=yi,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=yi,this.setNodeLocationFromNode=yi,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=qF,this.setNodeLocationFromNode=qF,this.cstPostRule=yi,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=yi,this.setNodeLocationFromNode=yi,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=yi,this.setNodeLocationFromNode=yi,this.cstPostRule=yi,this.setInitialNodeLocation=yi;else throw Error(`Invalid config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Y1e(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];j1e(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(Er(this.baseCstVisitorConstructor)){let e=Q1e(this.className,en(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(Er(this.baseCstVisitorWithDefaultsConstructor)){let e=Z1e(this.className,en(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}});var y6,tye=I(()=>{"use strict";xo();y6=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):Ny}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?Ny:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}});var v6,rye=I(()=>{"use strict";Kt();Ly();xo();Ey();M4();Fs();v6=class{static{o(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=My){if(ai(this.definedRulesNames,e)){let s={message:kc.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:na.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=My){let i=I1e(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(e,r,n);return this[e]=a,a}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(Gd(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return qC(Rr(this.gastProductionsCache))}}});var x6,nye=I(()=>{"use strict";Kt();u6();Ly();Dy();R4();xo();FF();dm();fm();x6=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=ky,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},Gt(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 - For Further details.`);if(Bt(e)){if(mr(e))throw Error(`A Token Vocabulary cannot be empty. + For Further details.`);if(zt(e)){if(Tr(e))throw Error(`A Token Vocabulary cannot be empty. Note that the first argument for the parser constructor is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 - For Further details.`)}if(Bt(e))this.tokensMap=Jr(e,(a,s)=>(a[s.name]=s,a),{});else if(Ft(e,"modes")&&Ba(Qr(kr(e.modes)),Ade)){let a=Qr(kr(e.modes)),s=qm(a);this.tokensMap=Jr(s,(l,u)=>(l[u.name]=u,l),{})}else if(Sn(e))this.tokensMap=ln(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=yo;let n=Ft(e,"modes")?Qr(kr(e.modes)):kr(e),i=Ba(n,a=>mr(a.categoryMatches));this.tokenMatcher=i?v1:Xu,ju(kr(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' -Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=Ft(n,"resyncEnabled")?n.resyncEnabled:_1.resyncEnabled,a=Ft(n,"recoveryValueFunc")?n.recoveryValueFunc:_1.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=o(function(...f){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(Bf(e)){let s=e;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(i)return this.moveToTerminatedState(),n(e);throw s}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof e!="function"){a=e.DEF;let s=e.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=e;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let s=r.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let s=this.doSingleRepetition(a);for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,Jn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,sS)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,sb],l,1536,e,sb)}else throw this.raiseEarlyExitException(e,Jn.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let u=i;i=o(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let s=!0;for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,aS,s)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,ab],l,1280,e,ab)}}repetitionSepSecondInternal(e,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,a],n,1536,e,a)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Bt(e)?e:e.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new fb(r,e))}}subruleInternal(e,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(a){throw this.subruleInternalError(a,n,e.ruleName)}}subruleInternalError(e,r,n){throw Bf(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),i=a):this.consumeInternalError(e,a,n)}catch(a){i=this.consumeInternalRecovery(e,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Hp(i,r,a))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(a){throw a.name===lP?n:a}}else throw n}saveRecogState(){let e=this.errors,r=ln(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),yo)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var SS,bpe=M(()=>{"use strict";C1();Yt();E1();js();SS=class{static{o(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Ft(e,"errorMessageProvider")?e.errorMessageProvider:ms.errorMessageProvider}SAVE_ERROR(e){if(Bf(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:ln(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return ln(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=k1(e,a,r,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let h=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new db(h,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=w1(e,i,this.maxLookahead),s=[];for(let h=1;h<=this.maxLookahead;h++)s.push(this.LA(h));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new hb(u,this.LA(1),l))}}});var CS,Tpe=M(()=>{"use strict";ob();Yt();CS=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if(xr(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return lS([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=ea(e.ruleStack),i=this.getGAstProductions()[r];return new iS(i,e).startWalking()}}});function mb(t,e,r,n=!1){_S(r);let i=ga(this.recordingProdStack),a=Si(e)?e:e.DEF,s=new t({definition:[],idx:r});return n&&(s.separator=e.SEP),Ft(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),DS}function tXe(t,e){_S(e);let r=ga(this.recordingProdStack),n=Bt(t)===!1,i=n===!1?t:t.DEF,a=new Dn({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});Ft(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let s=G2(i,l=>Si(l.GATE));return a.hasPredicates=s,r.definition.push(a),Ae(i,l=>{let u=new Pn({definition:[]});a.definition.push(u),Ft(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:Ft(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),DS}function Epe(t){return t===0?"":`${t}`}function _S(t){if(t<0||t>kpe){let e=new Error(`Invalid DSL Method idx value: <${t}> - Idx value must be a none negative value smaller than ${kpe+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var DS,wpe,kpe,Spe,Cpe,eXe,AS,Ape=M(()=>{"use strict";Yt();ps();rb();Vp();Up();js();mS();DS={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(DS);wpe=!0,kpe=Math.pow(2,8)-1,Spe=Pf({name:"RECORDING_PHASE_TOKEN",pattern:Zn.NA});ju([Spe]);Cpe=Qu(Spe,`This IToken indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(Cpe);eXe={name:`This CSTNode indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},AS=class{static{o(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return A1}topLevelRuleRecord(e,r){try{let n=new fs({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` + For Further details.`)}if(zt(e))this.tokensMap=un(e,(a,s)=>(a[s.name]=s,a),{});else if(Gt(e,"modes")&&rs(ln(Rr(e.modes)),h1e)){let a=ln(Rr(e.modes)),s=_1(a);this.tokensMap=un(s,(l,u)=>(l[u.name]=u,l),{})}else if(In(e))this.tokensMap=yn(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=Ho;let n=Gt(e,"modes")?ln(Rr(e.modes)):Rr(e),i=rs(n,a=>Tr(a.categoryMatches));this.tokenMatcher=i?ky:Gh,Vh(Rr(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' +Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=Gt(n,"resyncEnabled")?n.resyncEnabled:My.resyncEnabled,a=Gt(n,"recoveryValueFunc")?n.recoveryValueFunc:My.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=o(function(...f){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(Gd(e)){let s=e;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(i)return this.moveToTerminatedState(),n(e);throw s}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof e!="function"){a=e.DEF;let s=e.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=e;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let s=r.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let s=this.doSingleRepetition(a);for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,ci.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,t6)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,D4],l,1536,e,D4)}else throw this.raiseEarlyExitException(e,ci.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let u=i;i=o(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let s=!0;for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,e6,s)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,_4],l,1280,e,_4)}}repetitionSepSecondInternal(e,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,a],n,1536,e,a)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=zt(e)?e:e.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new O4(r,e))}}subruleInternal(e,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(a){throw this.subruleInternalError(a,n,e.ruleName)}}subruleInternalError(e,r,n){throw Gd(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),i=a):this.consumeInternalError(e,a,n)}catch(a){i=this.consumeInternalRecovery(e,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new pm(i,r,a))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(a){throw a.name===BF?n:a}}else throw n}saveRecogState(){let e=this.errors,r=yn(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Ho)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var b6,iye=I(()=>{"use strict";Ly();Kt();Dy();xo();b6=class{static{o(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Gt(e,"errorMessageProvider")?e.errorMessageProvider:$s.errorMessageProvider}SAVE_ERROR(e){if(Gd(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:yn(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return yn(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=_y(e,a,r,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let h=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new P4(h,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=Ay(e,i,this.maxLookahead),s=[];for(let h=1;h<=this.maxLookahead;h++)s.push(this.LA(h));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new I4(u,this.LA(1),l))}}});var T6,aye=I(()=>{"use strict";R4();Kt();T6=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if(Er(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return n6([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=va(e.ruleStack),i=this.getGAstProductions()[r];return new JC(i,e).startWalking()}}});function F4(t,e,r,n=!1){k6(r);let i=ya(this.recordingProdStack),a=$i(e)?e:e.DEF,s=new t({definition:[],idx:r});return n&&(s.separator=e.SEP),Gt(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),S6}function dtt(t,e){k6(e);let r=ya(this.recordingProdStack),n=zt(t)===!1,i=n===!1?t:t.DEF,a=new Fn({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});Gt(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let s=ub(i,l=>$i(l.GATE));return a.hasPredicates=s,r.definition.push(a),Re(i,l=>{let u=new Un({definition:[]});a.definition.push(u),Gt(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:Gt(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),S6}function lye(t){return t===0?"":`${t}`}function k6(t){if(t<0||t>oye){let e=new Error(`Invalid DSL Method idx value: <${t}> + Idx value must be a none negative value smaller than ${oye+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var S6,sye,oye,cye,uye,ftt,w6,hye=I(()=>{"use strict";Kt();Fs();E4();fm();dm();xo();u6();S6={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(S6);sye=!0,oye=Math.pow(2,8)-1,cye=zd({name:"RECORDING_PHASE_TOKEN",pattern:li.NA});Vh([cye]);uye=Uh(cye,`This IToken indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(uye);ftt={name:`This CSTNode indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},w6=class{static{o(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return Ny}topLevelRuleRecord(e,r){try{let n=new Ps({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` This error was thrown during the "grammar recording phase" For more info see: - https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return mb.call(this,dn,e,r)}atLeastOneInternalRecord(e,r){mb.call(this,Bn,r,e)}atLeastOneSepFirstInternalRecord(e,r){mb.call(this,Fn,r,e,wpe)}manyInternalRecord(e,r){mb.call(this,zr,r,e)}manySepFirstInternalRecord(e,r){mb.call(this,_n,r,e,wpe)}orInternalRecord(e,r){return tXe.call(this,e,r)}subruleInternalRecord(e,r,n){if(_S(r),!e||Ft(e,"ruleName")===!1){let l=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> - inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=ga(this.recordingProdStack),a=e.ruleName,s=new fn({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?eXe:DS}consumeInternalRecord(e,r,n){if(_S(r),!KO(e)){let s=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> - inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=ga(this.recordingProdStack),a=new Ar({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(a),Cpe}};o(mb,"recordProd");o(tXe,"recordOrProd");o(Epe,"getIdxSuffix");o(_S,"assertMethodIdxIsValid")});var LS,_pe=M(()=>{"use strict";Yt();d1();js();LS=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(e){if(Ft(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=ms.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${e}>`);let{time:i,value:a}=Jx(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function Dpe(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(t.prototype,i,a):t.prototype[i]=r.prototype[i]})})}var Lpe=M(()=>{"use strict";o(Dpe,"applyMixins")});function RS(t=void 0){return function(){return t}}var A1,ms,_1,Gi,gb,yb,js=M(()=>{"use strict";Yt();d1();sde();Up();b1();rpe();cP();lpe();gpe();ype();vpe();xpe();bpe();Tpe();Ape();_pe();Lpe();ub();A1=Qu(yo,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(A1);ms=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Zu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),_1=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Gi||(Gi={}));o(RS,"EMPTY_ALT");gb=class t{static{o(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{eb(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Ae(this.definedRulesNames,i=>{let s=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=epe({rules:kr(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(mr(n)&&this.skipValidations===!1){let i=tpe({rules:kr(this.gastProductionsCache),tokenTypes:kr(this.tokensMap),errMsgProvider:Gl,grammarName:r}),a=Yde({lookaheadStrategy:this.lookaheadStrategy,rules:kr(this.gastProductionsCache),tokenTypes:kr(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),mr(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=ade(kr(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:kr(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(kr(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!mr(this.definitionErrors))throw e=rt(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected: + https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return F4.call(this,wn,e,r)}atLeastOneInternalRecord(e,r){F4.call(this,Wn,r,e)}atLeastOneSepFirstInternalRecord(e,r){F4.call(this,Hn,r,e,sye)}manyInternalRecord(e,r){F4.call(this,Kr,r,e)}manySepFirstInternalRecord(e,r){F4.call(this,Bn,r,e,sye)}orInternalRecord(e,r){return dtt.call(this,e,r)}subruleInternalRecord(e,r,n){if(k6(r),!e||Gt(e,"ruleName")===!1){let l=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=ya(this.recordingProdStack),a=e.ruleName,s=new Tn({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?ftt:S6}consumeInternalRecord(e,r,n){if(k6(r),!EF(e)){let s=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=ya(this.recordingProdStack),a=new Pr({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(a),uye}};o(F4,"recordProd");o(dtt,"recordOrProd");o(lye,"getIdxSuffix");o(k6,"assertMethodIdxIsValid")});var E6,fye=I(()=>{"use strict";Kt();vy();xo();E6=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(e){if(Gt(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=$s.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${e}>`);let{time:i,value:a}=w4(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function dye(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(t.prototype,i,a):t.prototype[i]=r.prototype[i]})})}var pye=I(()=>{"use strict";o(dye,"applyMixins")});function C6(t=void 0){return function(){return t}}var Ny,$s,My,na,$4,z4,xo=I(()=>{"use strict";Kt();vy();Uge();dm();Ey();z1e();FF();H1e();eye();tye();rye();nye();iye();aye();hye();fye();pye();M4();Ny=Uh(Ho,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Ny);$s=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Wh,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),My=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(na||(na={}));o(C6,"EMPTY_ALT");$4=class t{static{o(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{k4(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Re(this.definedRulesNames,i=>{let s=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=F1e({rules:Rr(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(Tr(n)&&this.skipValidations===!1){let i=$1e({rules:Rr(this.gastProductionsCache),tokenTypes:Rr(this.tokensMap),errMsgProvider:kc,grammarName:r}),a=L1e({lookaheadStrategy:this.lookaheadStrategy,rules:Rr(this.gastProductionsCache),tokenTypes:Rr(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),Tr(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=qge(Rr(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:Rr(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Rr(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!Tr(this.definitionErrors))throw e=it(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected: ${e.join(` ------------------------------- -`)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),Ft(r,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. +`)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),Gt(r,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. Please use the flag on the relevant DSL method instead. See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES - For further details.`);this.skipValidations=Ft(r,"skipValidations")?r.skipValidations:ms.skipValidations}};gb.DEFER_DEFINITION_ERRORS_HANDLING=!1;Dpe(gb,[dS,yS,TS,wS,ES,kS,SS,CS,AS,LS]);yb=class extends gb{static{o(this,"EmbeddedActionsParser")}constructor(e,r=ms){let n=ln(r);n.outputCst=!1,super(e,n)}}});var Rpe=M(()=>{"use strict";ps()});var Npe=M(()=>{"use strict"});var Mpe=M(()=>{"use strict";Rpe();Npe()});var Ipe=M(()=>{"use strict";FO()});var Ff=M(()=>{"use strict";FO();js();rb();Up();E1();uP();b1();C1();QO();ps();ps();Mpe();Ipe()});function qp(t,e,r){return`${t.name}_${e}_${r}`}function Fpe(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};lXe(e,t);let r=t.length;for(let n=0;n$pe(t,e,s));return N1(t,e,n,r,...i)}function pXe(t,e,r){let n=ia(t,e,r,{type:$f});zf(t,n);let i=N1(t,e,n,r,Wp(t,e,r));return mXe(t,e,r,i)}function Wp(t,e,r){let n=Zr(rt(r.definition,i=>$pe(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:yXe(t,n)}function zpe(t,e,r,n,i){let a=n.left,s=n.right,l=ia(t,e,r,{type:oXe});zf(t,l);let u=ia(t,e,r,{type:Bpe});return a.loopback=l,u.loopback=l,t.decisionMap[qp(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,Di(s,l),i===void 0?(Di(l,a),Di(l,u)):(Di(l,u),Di(l,i.left),Di(i.right,a)),{left:a,right:u}}function Gpe(t,e,r,n,i){let a=n.left,s=n.right,l=ia(t,e,r,{type:sXe});zf(t,l);let u=ia(t,e,r,{type:Bpe}),h=ia(t,e,r,{type:aXe});return l.loopback=h,u.loopback=h,Di(l,a),Di(l,u),Di(s,h),i!==void 0?(Di(h,u),Di(h,i.left),Di(i.right,a)):Di(h,l),t.decisionMap[qp(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function mXe(t,e,r,n){let i=n.left,a=n.right;return Di(i,a),t.decisionMap[qp(e,"Option",r.idx)]=i,n}function zf(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function N1(t,e,r,n,...i){let a=ia(t,e,n,{type:iXe,start:r});r.end=a;for(let l of i)l!==void 0?(Di(r,l.left),Di(l.right,a)):Di(r,a);let s={left:r,right:a};return t.decisionMap[qp(e,gXe(n),n.idx)]=r,s}function gXe(t){if(t instanceof Dn)return"Alternation";if(t instanceof dn)return"Option";if(t instanceof zr)return"Repetition";if(t instanceof _n)return"RepetitionWithSeparator";if(t instanceof Bn)return"RepetitionMandatory";if(t instanceof Fn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function yXe(t,e){let r=e.length;for(let a=0;a{"use strict";Vm();ER();Ff();o(qp,"buildATNKey");$f=1,nXe=2,Ope=4,Ppe=5,R1=7,iXe=8,aXe=9,sXe=10,oXe=11,Bpe=12,vb=class{static{o(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},D1=class extends vb{static{o(this,"AtomTransition")}constructor(e,r){super(e),this.tokenType=r}},xb=class extends vb{static{o(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},L1=class extends vb{static{o(this,"RuleTransition")}constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(Fpe,"createATN");o(lXe,"createRuleStartAndStopATNStates");o($pe,"atom");o(cXe,"repetition");o(uXe,"repetitionSep");o(hXe,"repetitionMandatory");o(fXe,"repetitionMandatorySep");o(dXe,"alternation");o(pXe,"option");o(Wp,"block");o(zpe,"plus");o(Gpe,"star");o(mXe,"optional");o(zf,"defineDecisionState");o(N1,"makeAlts");o(gXe,"getProdType");o(yXe,"makeBlock");o(xP,"tokenRef");o(vXe,"ruleRef");o(xXe,"buildRuleHandle");o(Di,"epsilon");o(ia,"newState");o(bP,"addTransition");o(bXe,"removeState")});function TP(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}var bb,M1,Upe=M(()=>{"use strict";Vm();bb={},M1=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=TP(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return rt(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};o(TP,"getATNConfigKey")});function TXe(t,e){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:t,decision:e,states:{}},r[i]=a),a}}function qpe(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let a of n){if(a===void 0){if(e)break;return!1}let s=[a.tokenTypeIdx].concat(a.categoryMatches);for(let l of s)if(r.has(l)){if(!i.has(l))return!1}else r.add(l),i.add(l)}}return!0}function wXe(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nKu(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${AXe(t.production)}${r}> inside <${t.topLevelRule.name}> Rule, + For further details.`);this.skipValidations=Gt(r,"skipValidations")?r.skipValidations:$s.skipValidations}};$4.DEFER_DEFINITION_ERRORS_HANDLING=!1;dye($4,[l6,f6,g6,y6,x6,v6,b6,T6,w6,E6]);z4=class extends $4{static{o(this,"EmbeddedActionsParser")}constructor(e,r=$s){let n=yn(r);n.outputCst=!1,super(e,n)}}});var mye=I(()=>{"use strict";Fs()});var gye=I(()=>{"use strict"});var yye=I(()=>{"use strict";mye();gye()});var vye=I(()=>{"use strict";dF()});var Vd=I(()=>{"use strict";dF();xo();E4();dm();Dy();$F();Ey();Ly();CF();Fs();Fs();yye();vye()});function mm(t,e,r){return`${t.name}_${e}_${r}`}function wye(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};btt(e,t);let r=t.length;for(let n=0;nkye(t,e,s));return By(t,e,n,r,...i)}function Ctt(t,e,r){let n=ka(t,e,r,{type:qd});Ud(t,n);let i=By(t,e,n,r,gm(t,e,r));return Att(t,e,r,i)}function gm(t,e,r){let n=cn(it(r.definition,i=>kye(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:Dtt(t,n)}function Sye(t,e,r,n,i){let a=n.left,s=n.right,l=ka(t,e,r,{type:xtt});Ud(t,l);let u=ka(t,e,r,{type:Tye});return a.loopback=l,u.loopback=l,t.decisionMap[mm(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,qi(s,l),i===void 0?(qi(l,a),qi(l,u)):(qi(l,u),qi(l,i.left),qi(i.right,a)),{left:a,right:u}}function Eye(t,e,r,n,i){let a=n.left,s=n.right,l=ka(t,e,r,{type:vtt});Ud(t,l);let u=ka(t,e,r,{type:Tye}),h=ka(t,e,r,{type:ytt});return l.loopback=h,u.loopback=h,qi(l,a),qi(l,u),qi(s,h),i!==void 0?(qi(h,u),qi(h,i.left),qi(i.right,a)):qi(h,l),t.decisionMap[mm(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function Att(t,e,r,n){let i=n.left,a=n.right;return qi(i,a),t.decisionMap[mm(e,"Option",r.idx)]=i,n}function Ud(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function By(t,e,r,n,...i){let a=ka(t,e,n,{type:gtt,start:r});r.end=a;for(let l of i)l!==void 0?(qi(r,l.left),qi(l.right,a)):qi(r,a);let s={left:r,right:a};return t.decisionMap[mm(e,_tt(n),n.idx)]=r,s}function _tt(t){if(t instanceof Fn)return"Alternation";if(t instanceof wn)return"Option";if(t instanceof Kr)return"Repetition";if(t instanceof Bn)return"RepetitionWithSeparator";if(t instanceof Wn)return"RepetitionMandatory";if(t instanceof Hn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function Dtt(t,e){let r=e.length;for(let a=0;a{"use strict";E1();JM();Vd();o(mm,"buildATNKey");qd=1,mtt=2,xye=4,bye=5,Py=7,gtt=8,ytt=9,vtt=10,xtt=11,Tye=12,G4=class{static{o(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},Iy=class extends G4{static{o(this,"AtomTransition")}constructor(e,r){super(e),this.tokenType=r}},V4=class extends G4{static{o(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},Oy=class extends G4{static{o(this,"RuleTransition")}constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(wye,"createATN");o(btt,"createRuleStartAndStopATNStates");o(kye,"atom");o(Ttt,"repetition");o(wtt,"repetitionSep");o(ktt,"repetitionMandatory");o(Stt,"repetitionMandatorySep");o(Ett,"alternation");o(Ctt,"option");o(gm,"block");o(Sye,"plus");o(Eye,"star");o(Att,"optional");o(Ud,"defineDecisionState");o(By,"makeAlts");o(_tt,"getProdType");o(Dtt,"makeBlock");o(jF,"tokenRef");o(Rtt,"ruleRef");o(Ltt,"buildRuleHandle");o(qi,"epsilon");o(ka,"newState");o(XF,"addTransition");o(Ntt,"removeState")});function KF(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}var q4,Fy,Aye=I(()=>{"use strict";E1();q4={},Fy=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=KF(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return it(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};o(KF,"getATNConfigKey")});function Mtt(t,e){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:t,decision:e,states:{}},r[i]=a),a}}function Dye(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let a of n){if(a===void 0){if(e)break;return!1}let s=[a.tokenTypeIdx].concat(a.categoryMatches);for(let l of s)if(r.has(l)){if(!i.has(l))return!1}else r.add(l),i.add(l)}}return!0}function Itt(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nqh(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${$tt(t.production)}${r}> inside <${t.topLevelRule.name}> Rule, <${e}> may appears as a prefix path in all these alternatives. `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES -For Further details.`,n}function AXe(t){if(t instanceof fn)return"SUBRULE";if(t instanceof dn)return"OPTION";if(t instanceof Dn)return"OR";if(t instanceof Bn)return"AT_LEAST_ONE";if(t instanceof Fn)return"AT_LEAST_ONE_SEP";if(t instanceof _n)return"MANY_SEP";if(t instanceof zr)return"MANY";if(t instanceof Ar)return"CONSUME";throw Error("non exhaustive match")}function _Xe(t,e,r){let n=ya(e.configs.elements,a=>a.state.transitions),i=Wae(n.filter(a=>a instanceof D1).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function DXe(t,e){return t.edges[e.tokenTypeIdx]}function LXe(t,e,r){let n=new M1,i=[];for(let s of t.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===R1){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!OXe(a))for(let s of i)a.add(s);return a}function RXe(t,e){if(t instanceof D1&&ib(e,t.tokenType))return t.target}function NXe(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Ype(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function Wpe(t,e,r,n){return n=Xpe(t,n),e.edges[r.tokenTypeIdx]=n,n}function Xpe(t,e){if(e===bb)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function MXe(t){let e=new M1,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};MS(s,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function zXe(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var NS,Hpe,Tb,jpe=M(()=>{"use strict";Ff();Vpe();Upe();NR();CR();Yae();Vm();Rw();sk();hk();PR();o(TXe,"createDFACache");NS=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;nconsole.log(n))}initialize(e){this.atn=Fpe(e.rules),this.dfas=wXe(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=qp(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=rt(uS({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>rt(p,m=>m[0]));if(qpe(d,!1)&&!a){let p=Jr(d,(m,g,y)=>(Ae(g,v=>{v&&(m[v.tokenTypeIdx]=y,Ae(v.categoryMatches,x=>{m[x]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),v=p[y.tokenTypeIdx];if(m!==void 0&&v!==void 0){let x=(g=m[v])===null||g===void 0?void 0:g.GATE;if(x!==void 0&&x.call(this)===!1)return}return v}:function(){let m=this.LA(1);return p[m.tokenTypeIdx]}}else return i?function(p){let m=new NS,g=p===void 0?0:p.length;for(let v=0;vrt(p,m=>m[0]));if(qpe(d)&&d[0][0]&&!a){let p=d[0],m=Qr(p);if(m.length===1&&mr(m[0].categoryMatches)){let y=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===y}}else{let g=Jr(m,(y,v)=>(v!==void 0&&(y[v.tokenTypeIdx]=!0,Ae(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=wP.call(this,s,f,Hpe,l);return typeof p=="object"?!1:p===0}}};o(qpe,"isLL1Sequence");o(wXe,"initATNSimulator");o(wP,"adaptivePredict");o(kXe,"performLookahead");o(EXe,"computeLookaheadTarget");o(SXe,"reportLookaheadAmbiguity");o(CXe,"buildAmbiguityError");o(AXe,"getProductionDslName");o(_Xe,"buildAdaptivePredictError");o(DXe,"getExistingTargetState");o(LXe,"computeReachSet");o(RXe,"getReachableTarget");o(NXe,"getUniqueAlt");o(Ype,"newDFAState");o(Wpe,"addDFAEdge");o(Xpe,"addDFAState");o(MXe,"computeStartState");o(MS,"closure");o(IXe,"getEpsilonTarget");o(OXe,"hasConfigInRuleStopState");o(PXe,"allConfigsInRuleStopStates");o(BXe,"hasConflictTerminatingPrediction");o(FXe,"getConflictingAltSets");o($Xe,"hasConflictingAltSet");o(zXe,"hasStateAssociatedWithOneAlt")});var Kpe=M(()=>{"use strict";jpe()});var Qpe,kP,Zpe,IS,tn,Gr,OS,Jpe,EP,e0e,t0e,r0e,n0e,SP,i0e,a0e,s0e,PS,I1,O1,CP,P1,o0e,AP,_P,DP,LP,RP,l0e,c0e,NP,u0e,MP,wb,h0e,f0e,d0e,p0e,m0e,g0e,y0e,v0e,BS,x0e,b0e,T0e,w0e,k0e,E0e,S0e,C0e,A0e,_0e,D0e,FS,L0e,R0e,N0e,M0e,I0e,O0e,P0e,B0e,F0e,$0e,z0e,G0e,V0e,IP,OP,U0e,H0e,q0e,W0e,Y0e,X0e,j0e,K0e,Q0e,PP,Ge,BP=M(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(Qpe||(Qpe={}));(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(kP||(kP={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(Zpe||(Zpe={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(IS||(IS={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=IS.MAX_VALUE),i===Number.MAX_VALUE&&(i=IS.MAX_VALUE),{line:n,character:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Ge.uinteger(i.line)&&Ge.uinteger(i.character)}o(r,"is"),t.is=r})(tn||(tn={}));(function(t){function e(n,i,a,s){if(Ge.uinteger(n)&&Ge.uinteger(i)&&Ge.uinteger(a)&&Ge.uinteger(s))return{start:tn.create(n,i),end:tn.create(a,s)};if(tn.is(n)&&tn.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${a}, ${s}]`)}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&tn.is(i.start)&&tn.is(i.end)}o(r,"is"),t.is=r})(Gr||(Gr={}));(function(t){function e(n,i){return{uri:n,range:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Gr.is(i.range)&&(Ge.string(i.uri)||Ge.undefined(i.uri))}o(r,"is"),t.is=r})(OS||(OS={}));(function(t){function e(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Gr.is(i.targetRange)&&Ge.string(i.targetUri)&&Gr.is(i.targetSelectionRange)&&(Gr.is(i.originSelectionRange)||Ge.undefined(i.originSelectionRange))}o(r,"is"),t.is=r})(Jpe||(Jpe={}));(function(t){function e(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Ge.numberRange(i.red,0,1)&&Ge.numberRange(i.green,0,1)&&Ge.numberRange(i.blue,0,1)&&Ge.numberRange(i.alpha,0,1)}o(r,"is"),t.is=r})(EP||(EP={}));(function(t){function e(n,i){return{range:n,color:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Gr.is(i.range)&&EP.is(i.color)}o(r,"is"),t.is=r})(e0e||(e0e={}));(function(t){function e(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Ge.string(i.label)&&(Ge.undefined(i.textEdit)||O1.is(i))&&(Ge.undefined(i.additionalTextEdits)||Ge.typedArray(i.additionalTextEdits,O1.is))}o(r,"is"),t.is=r})(t0e||(t0e={}));(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(r0e||(r0e={}));(function(t){function e(n,i,a,s,l,u){let h={startLine:n,endLine:i};return Ge.defined(a)&&(h.startCharacter=a),Ge.defined(s)&&(h.endCharacter=s),Ge.defined(l)&&(h.kind=l),Ge.defined(u)&&(h.collapsedText=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Ge.uinteger(i.startLine)&&Ge.uinteger(i.startLine)&&(Ge.undefined(i.startCharacter)||Ge.uinteger(i.startCharacter))&&(Ge.undefined(i.endCharacter)||Ge.uinteger(i.endCharacter))&&(Ge.undefined(i.kind)||Ge.string(i.kind))}o(r,"is"),t.is=r})(n0e||(n0e={}));(function(t){function e(n,i){return{location:n,message:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&OS.is(i.location)&&Ge.string(i.message)}o(r,"is"),t.is=r})(SP||(SP={}));(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(i0e||(i0e={}));(function(t){t.Unnecessary=1,t.Deprecated=2})(a0e||(a0e={}));(function(t){function e(r){let n=r;return Ge.objectLiteral(n)&&Ge.string(n.href)}o(e,"is"),t.is=e})(s0e||(s0e={}));(function(t){function e(n,i,a,s,l,u){let h={range:n,message:i};return Ge.defined(a)&&(h.severity=a),Ge.defined(s)&&(h.code=s),Ge.defined(l)&&(h.source=l),Ge.defined(u)&&(h.relatedInformation=u),h}o(e,"create"),t.create=e;function r(n){var i;let a=n;return Ge.defined(a)&&Gr.is(a.range)&&Ge.string(a.message)&&(Ge.number(a.severity)||Ge.undefined(a.severity))&&(Ge.integer(a.code)||Ge.string(a.code)||Ge.undefined(a.code))&&(Ge.undefined(a.codeDescription)||Ge.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(Ge.string(a.source)||Ge.undefined(a.source))&&(Ge.undefined(a.relatedInformation)||Ge.typedArray(a.relatedInformation,SP.is))}o(r,"is"),t.is=r})(PS||(PS={}));(function(t){function e(n,i,...a){let s={title:n,command:i};return Ge.defined(a)&&a.length>0&&(s.arguments=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.string(i.title)&&Ge.string(i.command)}o(r,"is"),t.is=r})(I1||(I1={}));(function(t){function e(a,s){return{range:a,newText:s}}o(e,"replace"),t.replace=e;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),t.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),t.del=n;function i(a){let s=a;return Ge.objectLiteral(s)&&Ge.string(s.newText)&&Gr.is(s.range)}o(i,"is"),t.is=i})(O1||(O1={}));(function(t){function e(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Ge.string(i.label)&&(Ge.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(Ge.string(i.description)||i.description===void 0)}o(r,"is"),t.is=r})(CP||(CP={}));(function(t){function e(r){let n=r;return Ge.string(n)}o(e,"is"),t.is=e})(P1||(P1={}));(function(t){function e(a,s,l){return{range:a,newText:s,annotationId:l}}o(e,"replace"),t.replace=e;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),t.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),t.del=n;function i(a){let s=a;return O1.is(s)&&(CP.is(s.annotationId)||P1.is(s.annotationId))}o(i,"is"),t.is=i})(o0e||(o0e={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&NP.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),t.is=r})(AP||(AP={}));(function(t){function e(n,i,a){let s={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&Ge.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||Ge.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Ge.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||P1.is(i.annotationId))}o(r,"is"),t.is=r})(_P||(_P={}));(function(t){function e(n,i,a,s){let l={kind:"rename",oldUri:n,newUri:i};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&Ge.string(i.oldUri)&&Ge.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||Ge.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Ge.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||P1.is(i.annotationId))}o(r,"is"),t.is=r})(DP||(DP={}));(function(t){function e(n,i,a){let s={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&Ge.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||Ge.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||Ge.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||P1.is(i.annotationId))}o(r,"is"),t.is=r})(LP||(LP={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>Ge.string(i.kind)?_P.is(i)||DP.is(i)||LP.is(i):AP.is(i)))}o(e,"is"),t.is=e})(RP||(RP={}));(function(t){function e(n){return{uri:n}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.string(i.uri)}o(r,"is"),t.is=r})(l0e||(l0e={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.string(i.uri)&&Ge.integer(i.version)}o(r,"is"),t.is=r})(c0e||(c0e={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.string(i.uri)&&(i.version===null||Ge.integer(i.version))}o(r,"is"),t.is=r})(NP||(NP={}));(function(t){function e(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.string(i.uri)&&Ge.string(i.languageId)&&Ge.integer(i.version)&&Ge.string(i.text)}o(r,"is"),t.is=r})(u0e||(u0e={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}o(e,"is"),t.is=e})(MP||(MP={}));(function(t){function e(r){let n=r;return Ge.objectLiteral(r)&&MP.is(n.kind)&&Ge.string(n.value)}o(e,"is"),t.is=e})(wb||(wb={}));(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(h0e||(h0e={}));(function(t){t.PlainText=1,t.Snippet=2})(f0e||(f0e={}));(function(t){t.Deprecated=1})(d0e||(d0e={}));(function(t){function e(n,i,a){return{newText:n,insert:i,replace:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Ge.string(i.newText)&&Gr.is(i.insert)&&Gr.is(i.replace)}o(r,"is"),t.is=r})(p0e||(p0e={}));(function(t){t.asIs=1,t.adjustIndentation=2})(m0e||(m0e={}));(function(t){function e(r){let n=r;return n&&(Ge.string(n.detail)||n.detail===void 0)&&(Ge.string(n.description)||n.description===void 0)}o(e,"is"),t.is=e})(g0e||(g0e={}));(function(t){function e(r){return{label:r}}o(e,"create"),t.create=e})(y0e||(y0e={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}o(e,"create"),t.create=e})(v0e||(v0e={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(e,"fromPlainText"),t.fromPlainText=e;function r(n){let i=n;return Ge.string(i)||Ge.objectLiteral(i)&&Ge.string(i.language)&&Ge.string(i.value)}o(r,"is"),t.is=r})(BS||(BS={}));(function(t){function e(r){let n=r;return!!n&&Ge.objectLiteral(n)&&(wb.is(n.contents)||BS.is(n.contents)||Ge.typedArray(n.contents,BS.is))&&(r.range===void 0||Gr.is(r.range))}o(e,"is"),t.is=e})(x0e||(x0e={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}o(e,"create"),t.create=e})(b0e||(b0e={}));(function(t){function e(r,n,...i){let a={label:r};return Ge.defined(n)&&(a.documentation=n),Ge.defined(i)?a.parameters=i:a.parameters=[],a}o(e,"create"),t.create=e})(T0e||(T0e={}));(function(t){t.Text=1,t.Read=2,t.Write=3})(w0e||(w0e={}));(function(t){function e(r,n){let i={range:r};return Ge.number(n)&&(i.kind=n),i}o(e,"create"),t.create=e})(k0e||(k0e={}));(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(E0e||(E0e={}));(function(t){t.Deprecated=1})(S0e||(S0e={}));(function(t){function e(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(e,"create"),t.create=e})(C0e||(C0e={}));(function(t){function e(r,n,i,a){return a!==void 0?{name:r,kind:n,location:{uri:i,range:a}}:{name:r,kind:n,location:{uri:i}}}o(e,"create"),t.create=e})(A0e||(A0e={}));(function(t){function e(n,i,a,s,l,u){let h={name:n,detail:i,kind:a,range:s,selectionRange:l};return u!==void 0&&(h.children=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Ge.string(i.name)&&Ge.number(i.kind)&&Gr.is(i.range)&&Gr.is(i.selectionRange)&&(i.detail===void 0||Ge.string(i.detail))&&(i.deprecated===void 0||Ge.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),t.is=r})(_0e||(_0e={}));(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(D0e||(D0e={}));(function(t){t.Invoked=1,t.Automatic=2})(FS||(FS={}));(function(t){function e(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.typedArray(i.diagnostics,PS.is)&&(i.only===void 0||Ge.typedArray(i.only,Ge.string))&&(i.triggerKind===void 0||i.triggerKind===FS.Invoked||i.triggerKind===FS.Automatic)}o(r,"is"),t.is=r})(L0e||(L0e={}));(function(t){function e(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):I1.is(i)?s.command=i:s.edit=i,l&&a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Ge.string(i.title)&&(i.diagnostics===void 0||Ge.typedArray(i.diagnostics,PS.is))&&(i.kind===void 0||Ge.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||I1.is(i.command))&&(i.isPreferred===void 0||Ge.boolean(i.isPreferred))&&(i.edit===void 0||RP.is(i.edit))}o(r,"is"),t.is=r})(R0e||(R0e={}));(function(t){function e(n,i){let a={range:n};return Ge.defined(i)&&(a.data=i),a}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Gr.is(i.range)&&(Ge.undefined(i.command)||I1.is(i.command))}o(r,"is"),t.is=r})(N0e||(N0e={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Ge.uinteger(i.tabSize)&&Ge.boolean(i.insertSpaces)}o(r,"is"),t.is=r})(M0e||(M0e={}));(function(t){function e(n,i,a){return{range:n,target:i,data:a}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Gr.is(i.range)&&(Ge.undefined(i.target)||Ge.string(i.target))}o(r,"is"),t.is=r})(I0e||(I0e={}));(function(t){function e(n,i){return{range:n,parent:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&Gr.is(i.range)&&(i.parent===void 0||t.is(i.parent))}o(r,"is"),t.is=r})(O0e||(O0e={}));(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(P0e||(P0e={}));(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(B0e||(B0e={}));(function(t){function e(r){let n=r;return Ge.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(e,"is"),t.is=e})(F0e||(F0e={}));(function(t){function e(n,i){return{range:n,text:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Gr.is(i.range)&&Ge.string(i.text)}o(r,"is"),t.is=r})($0e||($0e={}));(function(t){function e(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Gr.is(i.range)&&Ge.boolean(i.caseSensitiveLookup)&&(Ge.string(i.variableName)||i.variableName===void 0)}o(r,"is"),t.is=r})(z0e||(z0e={}));(function(t){function e(n,i){return{range:n,expression:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Gr.is(i.range)&&(Ge.string(i.expression)||i.expression===void 0)}o(r,"is"),t.is=r})(G0e||(G0e={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.defined(i)&&Gr.is(n.stoppedLocation)}o(r,"is"),t.is=r})(V0e||(V0e={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(IP||(IP={}));(function(t){function e(n){return{value:n}}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&(i.tooltip===void 0||Ge.string(i.tooltip)||wb.is(i.tooltip))&&(i.location===void 0||OS.is(i.location))&&(i.command===void 0||I1.is(i.command))}o(r,"is"),t.is=r})(OP||(OP={}));(function(t){function e(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Ge.objectLiteral(i)&&tn.is(i.position)&&(Ge.string(i.label)||Ge.typedArray(i.label,OP.is))&&(i.kind===void 0||IP.is(i.kind))&&i.textEdits===void 0||Ge.typedArray(i.textEdits,O1.is)&&(i.tooltip===void 0||Ge.string(i.tooltip)||wb.is(i.tooltip))&&(i.paddingLeft===void 0||Ge.boolean(i.paddingLeft))&&(i.paddingRight===void 0||Ge.boolean(i.paddingRight))}o(r,"is"),t.is=r})(U0e||(U0e={}));(function(t){function e(r){return{kind:"snippet",value:r}}o(e,"createSnippet"),t.createSnippet=e})(H0e||(H0e={}));(function(t){function e(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(e,"create"),t.create=e})(q0e||(q0e={}));(function(t){function e(r){return{items:r}}o(e,"create"),t.create=e})(W0e||(W0e={}));(function(t){t.Invoked=0,t.Automatic=1})(Y0e||(Y0e={}));(function(t){function e(r,n){return{range:r,text:n}}o(e,"create"),t.create=e})(X0e||(X0e={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(e,"create"),t.create=e})(j0e||(j0e={}));(function(t){function e(r){let n=r;return Ge.objectLiteral(n)&&kP.is(n.uri)&&Ge.string(n.name)}o(e,"is"),t.is=e})(K0e||(K0e={}));(function(t){function e(a,s,l,u){return new PP(a,s,l,u)}o(e,"create"),t.create=e;function r(a){let s=a;return!!(Ge.defined(s)&&Ge.string(s.uri)&&(Ge.undefined(s.languageId)||Ge.string(s.languageId))&&Ge.uinteger(s.lineCount)&&Ge.func(s.getText)&&Ge.func(s.positionAt)&&Ge.func(s.offsetAt))}o(r,"is"),t.is=r;function n(a,s){let l=a.getText(),u=i(s,(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),h=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],p=a.offsetAt(d.range.start),m=a.offsetAt(d.range.end);if(m<=h)l=l.substring(0,p)+d.newText+l.substring(m,l.length);else throw new Error("Overlapping edit");h=p}return l}o(n,"applyEdits"),t.applyEdits=n;function i(a,s){if(a.length<=1)return a;let l=a.length/2|0,u=a.slice(0,l),h=a.slice(l);i(u,s),i(h,s);let f=0,d=0,p=0;for(;fa.state.transitions),i=Rue(n.filter(a=>a instanceof Iy).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function Gtt(t,e){return t.edges[e.tokenTypeIdx]}function Vtt(t,e,r){let n=new Fy,i=[];for(let s of t.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===Py){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!Ytt(a))for(let s of i)a.add(s);return a}function qtt(t,e){if(t instanceof Iy&&A4(e,t.tokenType))return t.target}function Utt(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Lye(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function Rye(t,e,r,n){return n=Nye(t,n),e.edges[r.tokenTypeIdx]=n,n}function Nye(t,e){if(e===q4)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function Wtt(t){let e=new Fy,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};_6(s,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function Ztt(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var A6,_ye,U4,Mye=I(()=>{"use strict";Vd();Cye();Aye();oI();tI();Lue();E1();pS();qS();jS();hI();o(Mtt,"createDFACache");A6=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;nconsole.log(n))}initialize(e){this.atn=wye(e.rules),this.dfas=Itt(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=mm(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=it(a6({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>it(p,m=>m[0]));if(Dye(d,!1)&&!a){let p=un(d,(m,g,y)=>(Re(g,v=>{v&&(m[v.tokenTypeIdx]=y,Re(v.categoryMatches,x=>{m[x]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),v=p[y.tokenTypeIdx];if(m!==void 0&&v!==void 0){let x=(g=m[v])===null||g===void 0?void 0:g.GATE;if(x!==void 0&&x.call(this)===!1)return}return v}:function(){let m=this.LA(1);return p[m.tokenTypeIdx]}}else return i?function(p){let m=new A6,g=p===void 0?0:p.length;for(let v=0;vit(p,m=>m[0]));if(Dye(d)&&d[0][0]&&!a){let p=d[0],m=ln(p);if(m.length===1&&Tr(m[0].categoryMatches)){let y=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===y}}else{let g=un(m,(y,v)=>(v!==void 0&&(y[v.tokenTypeIdx]=!0,Re(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=QF.call(this,s,f,_ye,l);return typeof p=="object"?!1:p===0}}};o(Dye,"isLL1Sequence");o(Itt,"initATNSimulator");o(QF,"adaptivePredict");o(Ott,"performLookahead");o(Ptt,"computeLookaheadTarget");o(Btt,"reportLookaheadAmbiguity");o(Ftt,"buildAmbiguityError");o($tt,"getProductionDslName");o(ztt,"buildAdaptivePredictError");o(Gtt,"getExistingTargetState");o(Vtt,"computeReachSet");o(qtt,"getReachableTarget");o(Utt,"getUniqueAlt");o(Lye,"newDFAState");o(Rye,"addDFAEdge");o(Nye,"addDFAState");o(Wtt,"computeStartState");o(_6,"closure");o(Htt,"getEpsilonTarget");o(Ytt,"hasConfigInRuleStopState");o(jtt,"allConfigsInRuleStopStates");o(Xtt,"hasConflictTerminatingPrediction");o(Ktt,"getConflictingAltSets");o(Qtt,"hasConflictingAltSet");o(Ztt,"hasStateAssociatedWithOneAlt")});var Iye=I(()=>{"use strict";Mye()});var B6={};vr(B6,{AnnotatedTextEdit:()=>Yh,ChangeAnnotation:()=>ym,ChangeAnnotationIdentifier:()=>Va,CodeAction:()=>N$,CodeActionContext:()=>L$,CodeActionKind:()=>R$,CodeActionTriggerKind:()=>Q4,CodeDescription:()=>o$,CodeLens:()=>M$,Color:()=>R6,ColorInformation:()=>t$,ColorPresentation:()=>r$,Command:()=>vm,CompletionItem:()=>v$,CompletionItemKind:()=>f$,CompletionItemLabelDetails:()=>y$,CompletionItemTag:()=>p$,CompletionList:()=>x$,CreateFile:()=>zy,DeleteFile:()=>Vy,Diagnostic:()=>Y4,DiagnosticRelatedInformation:()=>L6,DiagnosticSeverity:()=>a$,DiagnosticTag:()=>s$,DocumentHighlight:()=>S$,DocumentHighlightKind:()=>k$,DocumentLink:()=>O$,DocumentSymbol:()=>D$,DocumentUri:()=>ZF,EOL:()=>Jtt,FoldingRange:()=>i$,FoldingRangeKind:()=>n$,FormattingOptions:()=>I$,Hover:()=>b$,InlayHint:()=>U$,InlayHintKind:()=>O6,InlayHintLabelPart:()=>P6,InlineCompletionContext:()=>K$,InlineCompletionItem:()=>H$,InlineCompletionList:()=>Y$,InlineCompletionTriggerKind:()=>j$,InlineValueContext:()=>q$,InlineValueEvaluatableExpression:()=>V$,InlineValueText:()=>z$,InlineValueVariableLookup:()=>G$,InsertReplaceEdit:()=>m$,InsertTextFormat:()=>d$,InsertTextMode:()=>g$,Location:()=>H4,LocationLink:()=>e$,MarkedString:()=>K4,MarkupContent:()=>qy,MarkupKind:()=>I6,OptionalVersionedTextDocumentIdentifier:()=>X4,ParameterInformation:()=>T$,Position:()=>nn,Range:()=>Yr,RenameFile:()=>Gy,SelectedCompletionInfo:()=>X$,SelectionRange:()=>P$,SemanticTokenModifiers:()=>F$,SemanticTokenTypes:()=>B$,SemanticTokens:()=>$$,SignatureInformation:()=>w$,StringValue:()=>W$,SymbolInformation:()=>A$,SymbolKind:()=>E$,SymbolTag:()=>C$,TextDocument:()=>Z$,TextDocumentEdit:()=>j4,TextDocumentIdentifier:()=>c$,TextDocumentItem:()=>h$,TextEdit:()=>Lu,URI:()=>D6,VersionedTextDocumentIdentifier:()=>u$,WorkspaceChange:()=>l$,WorkspaceEdit:()=>N6,WorkspaceFolder:()=>Q$,WorkspaceSymbol:()=>_$,integer:()=>JF,uinteger:()=>W4});var ZF,D6,JF,W4,nn,Yr,H4,e$,R6,t$,r$,n$,i$,L6,a$,s$,o$,Y4,vm,Lu,ym,Va,Yh,j4,zy,Gy,Vy,N6,$y,M6,l$,c$,u$,X4,h$,I6,qy,f$,d$,p$,m$,g$,y$,v$,x$,K4,b$,T$,w$,k$,S$,E$,C$,A$,_$,D$,R$,Q4,L$,N$,M$,I$,O$,P$,B$,F$,$$,z$,G$,V$,q$,O6,P6,U$,W$,H$,Y$,j$,X$,K$,Q$,Jtt,Z$,J$,qe,Uy=I(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(ZF||(ZF={}));(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(D6||(D6={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(JF||(JF={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(W4||(W4={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=W4.MAX_VALUE),i===Number.MAX_VALUE&&(i=W4.MAX_VALUE),{line:n,character:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&qe.uinteger(i.line)&&qe.uinteger(i.character)}o(r,"is"),t.is=r})(nn||(nn={}));(function(t){function e(n,i,a,s){if(qe.uinteger(n)&&qe.uinteger(i)&&qe.uinteger(a)&&qe.uinteger(s))return{start:nn.create(n,i),end:nn.create(a,s)};if(nn.is(n)&&nn.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${a}, ${s}]`)}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&nn.is(i.start)&&nn.is(i.end)}o(r,"is"),t.is=r})(Yr||(Yr={}));(function(t){function e(n,i){return{uri:n,range:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&Yr.is(i.range)&&(qe.string(i.uri)||qe.undefined(i.uri))}o(r,"is"),t.is=r})(H4||(H4={}));(function(t){function e(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&Yr.is(i.targetRange)&&qe.string(i.targetUri)&&Yr.is(i.targetSelectionRange)&&(Yr.is(i.originSelectionRange)||qe.undefined(i.originSelectionRange))}o(r,"is"),t.is=r})(e$||(e$={}));(function(t){function e(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&qe.numberRange(i.red,0,1)&&qe.numberRange(i.green,0,1)&&qe.numberRange(i.blue,0,1)&&qe.numberRange(i.alpha,0,1)}o(r,"is"),t.is=r})(R6||(R6={}));(function(t){function e(n,i){return{range:n,color:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&Yr.is(i.range)&&R6.is(i.color)}o(r,"is"),t.is=r})(t$||(t$={}));(function(t){function e(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&qe.string(i.label)&&(qe.undefined(i.textEdit)||Lu.is(i))&&(qe.undefined(i.additionalTextEdits)||qe.typedArray(i.additionalTextEdits,Lu.is))}o(r,"is"),t.is=r})(r$||(r$={}));(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(n$||(n$={}));(function(t){function e(n,i,a,s,l,u){let h={startLine:n,endLine:i};return qe.defined(a)&&(h.startCharacter=a),qe.defined(s)&&(h.endCharacter=s),qe.defined(l)&&(h.kind=l),qe.defined(u)&&(h.collapsedText=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&qe.uinteger(i.startLine)&&qe.uinteger(i.startLine)&&(qe.undefined(i.startCharacter)||qe.uinteger(i.startCharacter))&&(qe.undefined(i.endCharacter)||qe.uinteger(i.endCharacter))&&(qe.undefined(i.kind)||qe.string(i.kind))}o(r,"is"),t.is=r})(i$||(i$={}));(function(t){function e(n,i){return{location:n,message:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&H4.is(i.location)&&qe.string(i.message)}o(r,"is"),t.is=r})(L6||(L6={}));(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(a$||(a$={}));(function(t){t.Unnecessary=1,t.Deprecated=2})(s$||(s$={}));(function(t){function e(r){let n=r;return qe.objectLiteral(n)&&qe.string(n.href)}o(e,"is"),t.is=e})(o$||(o$={}));(function(t){function e(n,i,a,s,l,u){let h={range:n,message:i};return qe.defined(a)&&(h.severity=a),qe.defined(s)&&(h.code=s),qe.defined(l)&&(h.source=l),qe.defined(u)&&(h.relatedInformation=u),h}o(e,"create"),t.create=e;function r(n){var i;let a=n;return qe.defined(a)&&Yr.is(a.range)&&qe.string(a.message)&&(qe.number(a.severity)||qe.undefined(a.severity))&&(qe.integer(a.code)||qe.string(a.code)||qe.undefined(a.code))&&(qe.undefined(a.codeDescription)||qe.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(qe.string(a.source)||qe.undefined(a.source))&&(qe.undefined(a.relatedInformation)||qe.typedArray(a.relatedInformation,L6.is))}o(r,"is"),t.is=r})(Y4||(Y4={}));(function(t){function e(n,i,...a){let s={title:n,command:i};return qe.defined(a)&&a.length>0&&(s.arguments=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.string(i.title)&&qe.string(i.command)}o(r,"is"),t.is=r})(vm||(vm={}));(function(t){function e(a,s){return{range:a,newText:s}}o(e,"replace"),t.replace=e;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),t.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),t.del=n;function i(a){let s=a;return qe.objectLiteral(s)&&qe.string(s.newText)&&Yr.is(s.range)}o(i,"is"),t.is=i})(Lu||(Lu={}));(function(t){function e(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&qe.string(i.label)&&(qe.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(qe.string(i.description)||i.description===void 0)}o(r,"is"),t.is=r})(ym||(ym={}));(function(t){function e(r){let n=r;return qe.string(n)}o(e,"is"),t.is=e})(Va||(Va={}));(function(t){function e(a,s,l){return{range:a,newText:s,annotationId:l}}o(e,"replace"),t.replace=e;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),t.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),t.del=n;function i(a){let s=a;return Lu.is(s)&&(ym.is(s.annotationId)||Va.is(s.annotationId))}o(i,"is"),t.is=i})(Yh||(Yh={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&X4.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),t.is=r})(j4||(j4={}));(function(t){function e(n,i,a){let s={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&qe.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||qe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||qe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Va.is(i.annotationId))}o(r,"is"),t.is=r})(zy||(zy={}));(function(t){function e(n,i,a,s){let l={kind:"rename",oldUri:n,newUri:i};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&qe.string(i.oldUri)&&qe.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||qe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||qe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Va.is(i.annotationId))}o(r,"is"),t.is=r})(Gy||(Gy={}));(function(t){function e(n,i,a){let s={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&qe.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||qe.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||qe.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||Va.is(i.annotationId))}o(r,"is"),t.is=r})(Vy||(Vy={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>qe.string(i.kind)?zy.is(i)||Gy.is(i)||Vy.is(i):j4.is(i)))}o(e,"is"),t.is=e})(N6||(N6={}));$y=class{static{o(this,"TextEditChangeImpl")}constructor(e,r){this.edits=e,this.changeAnnotations=r}insert(e,r,n){let i,a;if(n===void 0?i=Lu.insert(e,r):Va.is(n)?(a=n,i=Yh.insert(e,r,n)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(n),i=Yh.insert(e,r,a)),this.edits.push(i),a!==void 0)return a}replace(e,r,n){let i,a;if(n===void 0?i=Lu.replace(e,r):Va.is(n)?(a=n,i=Yh.replace(e,r,n)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(n),i=Yh.replace(e,r,a)),this.edits.push(i),a!==void 0)return a}delete(e,r){let n,i;if(r===void 0?n=Lu.del(e):Va.is(r)?(i=r,n=Yh.del(e,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=Yh.del(e,i)),this.edits.push(n),i!==void 0)return i}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},M6=class{static{o(this,"ChangeAnnotations")}constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,r){let n;if(Va.is(e)?n=e:(n=this.nextId(),r=e),this._annotations[n]!==void 0)throw new Error(`Id ${n} is already in use.`);if(r===void 0)throw new Error(`No annotation provided for id ${n}`);return this._annotations[n]=r,this._size++,n}nextId(){return this._counter++,this._counter.toString()}},l$=class{static{o(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new M6(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(r=>{if(j4.is(r)){let n=new $y(r.edits,this._changeAnnotations);this._textEditChanges[r.textDocument.uri]=n}})):e.changes&&Object.keys(e.changes).forEach(r=>{let n=new $y(e.changes[r]);this._textEditChanges[r]=n})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(X4.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let r={uri:e.uri,version:e.version},n=this._textEditChanges[r.uri];if(!n){let i=[],a={textDocument:r,edits:i};this._workspaceEdit.documentChanges.push(a),n=new $y(i,this._changeAnnotations),this._textEditChanges[r.uri]=n}return n}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let r=this._textEditChanges[e];if(!r){let n=[];this._workspaceEdit.changes[e]=n,r=new $y(n),this._textEditChanges[e]=r}return r}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new M6,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;ym.is(r)||Va.is(r)?i=r:n=r;let a,s;if(i===void 0?a=zy.create(e,n):(s=Va.is(i)?i:this._changeAnnotations.manage(i),a=zy.create(e,n,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}renameFile(e,r,n,i){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let a;ym.is(n)||Va.is(n)?a=n:i=n;let s,l;if(a===void 0?s=Gy.create(e,r,i):(l=Va.is(a)?a:this._changeAnnotations.manage(a),s=Gy.create(e,r,i,l)),this._workspaceEdit.documentChanges.push(s),l!==void 0)return l}deleteFile(e,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;ym.is(r)||Va.is(r)?i=r:n=r;let a,s;if(i===void 0?a=Vy.create(e,n):(s=Va.is(i)?i:this._changeAnnotations.manage(i),a=Vy.create(e,n,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}};(function(t){function e(n){return{uri:n}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.string(i.uri)}o(r,"is"),t.is=r})(c$||(c$={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.string(i.uri)&&qe.integer(i.version)}o(r,"is"),t.is=r})(u$||(u$={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.string(i.uri)&&(i.version===null||qe.integer(i.version))}o(r,"is"),t.is=r})(X4||(X4={}));(function(t){function e(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.string(i.uri)&&qe.string(i.languageId)&&qe.integer(i.version)&&qe.string(i.text)}o(r,"is"),t.is=r})(h$||(h$={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}o(e,"is"),t.is=e})(I6||(I6={}));(function(t){function e(r){let n=r;return qe.objectLiteral(r)&&I6.is(n.kind)&&qe.string(n.value)}o(e,"is"),t.is=e})(qy||(qy={}));(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(f$||(f$={}));(function(t){t.PlainText=1,t.Snippet=2})(d$||(d$={}));(function(t){t.Deprecated=1})(p$||(p$={}));(function(t){function e(n,i,a){return{newText:n,insert:i,replace:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i&&qe.string(i.newText)&&Yr.is(i.insert)&&Yr.is(i.replace)}o(r,"is"),t.is=r})(m$||(m$={}));(function(t){t.asIs=1,t.adjustIndentation=2})(g$||(g$={}));(function(t){function e(r){let n=r;return n&&(qe.string(n.detail)||n.detail===void 0)&&(qe.string(n.description)||n.description===void 0)}o(e,"is"),t.is=e})(y$||(y$={}));(function(t){function e(r){return{label:r}}o(e,"create"),t.create=e})(v$||(v$={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}o(e,"create"),t.create=e})(x$||(x$={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(e,"fromPlainText"),t.fromPlainText=e;function r(n){let i=n;return qe.string(i)||qe.objectLiteral(i)&&qe.string(i.language)&&qe.string(i.value)}o(r,"is"),t.is=r})(K4||(K4={}));(function(t){function e(r){let n=r;return!!n&&qe.objectLiteral(n)&&(qy.is(n.contents)||K4.is(n.contents)||qe.typedArray(n.contents,K4.is))&&(r.range===void 0||Yr.is(r.range))}o(e,"is"),t.is=e})(b$||(b$={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}o(e,"create"),t.create=e})(T$||(T$={}));(function(t){function e(r,n,...i){let a={label:r};return qe.defined(n)&&(a.documentation=n),qe.defined(i)?a.parameters=i:a.parameters=[],a}o(e,"create"),t.create=e})(w$||(w$={}));(function(t){t.Text=1,t.Read=2,t.Write=3})(k$||(k$={}));(function(t){function e(r,n){let i={range:r};return qe.number(n)&&(i.kind=n),i}o(e,"create"),t.create=e})(S$||(S$={}));(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(E$||(E$={}));(function(t){t.Deprecated=1})(C$||(C$={}));(function(t){function e(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(e,"create"),t.create=e})(A$||(A$={}));(function(t){function e(r,n,i,a){return a!==void 0?{name:r,kind:n,location:{uri:i,range:a}}:{name:r,kind:n,location:{uri:i}}}o(e,"create"),t.create=e})(_$||(_$={}));(function(t){function e(n,i,a,s,l,u){let h={name:n,detail:i,kind:a,range:s,selectionRange:l};return u!==void 0&&(h.children=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return i&&qe.string(i.name)&&qe.number(i.kind)&&Yr.is(i.range)&&Yr.is(i.selectionRange)&&(i.detail===void 0||qe.string(i.detail))&&(i.deprecated===void 0||qe.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),t.is=r})(D$||(D$={}));(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(R$||(R$={}));(function(t){t.Invoked=1,t.Automatic=2})(Q4||(Q4={}));(function(t){function e(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.typedArray(i.diagnostics,Y4.is)&&(i.only===void 0||qe.typedArray(i.only,qe.string))&&(i.triggerKind===void 0||i.triggerKind===Q4.Invoked||i.triggerKind===Q4.Automatic)}o(r,"is"),t.is=r})(L$||(L$={}));(function(t){function e(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):vm.is(i)?s.command=i:s.edit=i,l&&a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&qe.string(i.title)&&(i.diagnostics===void 0||qe.typedArray(i.diagnostics,Y4.is))&&(i.kind===void 0||qe.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||vm.is(i.command))&&(i.isPreferred===void 0||qe.boolean(i.isPreferred))&&(i.edit===void 0||N6.is(i.edit))}o(r,"is"),t.is=r})(N$||(N$={}));(function(t){function e(n,i){let a={range:n};return qe.defined(i)&&(a.data=i),a}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&Yr.is(i.range)&&(qe.undefined(i.command)||vm.is(i.command))}o(r,"is"),t.is=r})(M$||(M$={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&qe.uinteger(i.tabSize)&&qe.boolean(i.insertSpaces)}o(r,"is"),t.is=r})(I$||(I$={}));(function(t){function e(n,i,a){return{range:n,target:i,data:a}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&Yr.is(i.range)&&(qe.undefined(i.target)||qe.string(i.target))}o(r,"is"),t.is=r})(O$||(O$={}));(function(t){function e(n,i){return{range:n,parent:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&Yr.is(i.range)&&(i.parent===void 0||t.is(i.parent))}o(r,"is"),t.is=r})(P$||(P$={}));(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(B$||(B$={}));(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(F$||(F$={}));(function(t){function e(r){let n=r;return qe.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(e,"is"),t.is=e})($$||($$={}));(function(t){function e(n,i){return{range:n,text:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Yr.is(i.range)&&qe.string(i.text)}o(r,"is"),t.is=r})(z$||(z$={}));(function(t){function e(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Yr.is(i.range)&&qe.boolean(i.caseSensitiveLookup)&&(qe.string(i.variableName)||i.variableName===void 0)}o(r,"is"),t.is=r})(G$||(G$={}));(function(t){function e(n,i){return{range:n,expression:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Yr.is(i.range)&&(qe.string(i.expression)||i.expression===void 0)}o(r,"is"),t.is=r})(V$||(V$={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.defined(i)&&Yr.is(n.stoppedLocation)}o(r,"is"),t.is=r})(q$||(q$={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(O6||(O6={}));(function(t){function e(n){return{value:n}}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&(i.tooltip===void 0||qe.string(i.tooltip)||qy.is(i.tooltip))&&(i.location===void 0||H4.is(i.location))&&(i.command===void 0||vm.is(i.command))}o(r,"is"),t.is=r})(P6||(P6={}));(function(t){function e(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return qe.objectLiteral(i)&&nn.is(i.position)&&(qe.string(i.label)||qe.typedArray(i.label,P6.is))&&(i.kind===void 0||O6.is(i.kind))&&i.textEdits===void 0||qe.typedArray(i.textEdits,Lu.is)&&(i.tooltip===void 0||qe.string(i.tooltip)||qy.is(i.tooltip))&&(i.paddingLeft===void 0||qe.boolean(i.paddingLeft))&&(i.paddingRight===void 0||qe.boolean(i.paddingRight))}o(r,"is"),t.is=r})(U$||(U$={}));(function(t){function e(r){return{kind:"snippet",value:r}}o(e,"createSnippet"),t.createSnippet=e})(W$||(W$={}));(function(t){function e(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(e,"create"),t.create=e})(H$||(H$={}));(function(t){function e(r){return{items:r}}o(e,"create"),t.create=e})(Y$||(Y$={}));(function(t){t.Invoked=0,t.Automatic=1})(j$||(j$={}));(function(t){function e(r,n){return{range:r,text:n}}o(e,"create"),t.create=e})(X$||(X$={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(e,"create"),t.create=e})(K$||(K$={}));(function(t){function e(r){let n=r;return qe.objectLiteral(n)&&D6.is(n.uri)&&qe.string(n.name)}o(e,"is"),t.is=e})(Q$||(Q$={}));Jtt=[` +`,`\r +`,"\r"];(function(t){function e(a,s,l,u){return new J$(a,s,l,u)}o(e,"create"),t.create=e;function r(a){let s=a;return!!(qe.defined(s)&&qe.string(s.uri)&&(qe.undefined(s.languageId)||qe.string(s.languageId))&&qe.uinteger(s.lineCount)&&qe.func(s.getText)&&qe.func(s.positionAt)&&qe.func(s.offsetAt))}o(r,"is"),t.is=r;function n(a,s){let l=a.getText(),u=i(s,(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),h=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],p=a.offsetAt(d.range.start),m=a.offsetAt(d.range.end);if(m<=h)l=l.substring(0,p)+d.newText+l.substring(m,l.length);else throw new Error("Overlapping edit");h=p}return l}o(n,"applyEdits"),t.applyEdits=n;function i(a,s){if(a.length<=1)return a;let l=a.length/2|0,u=a.slice(0,l),h=a.slice(l);i(u,s),i(h,s);let f=0,d=0,p=0;for(;f0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return tn.create(0,e);for(;ne?i=s:n=s+1}let a=n-1;return tn.create(a,e-r[a])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1"u"}o(n,"undefined"),t.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),t.boolean=i;function a(m){return e.call(m)==="[object String]"}o(a,"string"),t.string=a;function s(m){return e.call(m)==="[object Number]"}o(s,"number"),t.number=s;function l(m,g,y){return e.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),t.numberRange=l;function u(m){return e.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),t.integer=u;function h(m){return e.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),t.uinteger=h;function f(m){return e.call(m)==="[object Function]"}o(f,"func"),t.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),t.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),t.typedArray=p})(Ge||(Ge={}))});var kb,Eb,Yp,Xp,FP,B1,$S=M(()=>{"use strict";BP();Bl();kb=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){var e;return(e=this.nodeStack[this.nodeStack.length-1])!==null&&e!==void 0?e:this.rootNode}buildRootNode(e){return this.rootNode=new B1(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new Xp;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new Yp(e.startOffset,e.image.length,xg(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let a of e){let s=new Yp(a.startOffset,a.image.length,xg(a),a.tokenType,!0);s.root=this.rootNode,r.push(s)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let a=n.container.content.indexOf(n);if(a>0){n.container.content.splice(a,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}},Eb=class{static{o(this,"AbstractCstNode")}get parent(){return this.container}get feature(){return this.grammarSource}get hidden(){return!1}get astNode(){var e,r;let n=typeof((e=this._astNode)===null||e===void 0?void 0:e.$type)=="string"?this._astNode:(r=this.container)===null||r===void 0?void 0:r.astNode;if(!n)throw new Error("This node has no associated AST element");return n}set astNode(e){this._astNode=e}get element(){return this.astNode}get text(){return this.root.fullText.substring(this.offset,this.end)}},Yp=class extends Eb{static{o(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,a=!1){super(),this._hidden=a,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},Xp=class extends Eb{static{o(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new FP(this)}get children(){return this.content}get offset(){var e,r;return(r=(e=this.firstNonHiddenNode)===null||e===void 0?void 0:e.offset)!==null&&r!==void 0?r:0}get length(){return this.end-this.offset}get end(){var e,r;return(r=(e=this.lastNonHiddenNode)===null||e===void 0?void 0:e.end)!==null&&r!==void 0?r:0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},FP=class t extends Array{static{o(this,"CstNodeContainer")}constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},B1=class extends Xp{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}});function $P(t){return t.$type===zS}var zS,Z0e,J0e,Sb,Cb,GS,F1,Ab,GXe,zP,_b=M(()=>{"use strict";Ff();Kpe();Hc();zl();hs();$S();zS=Symbol("Datatype");o($P,"isDataTypeNode");Z0e="\u200B",J0e=o(t=>t.endsWith(Z0e)?t:t+Z0e,"withRuleSuffix"),Sb=class{static{o(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";this.wrapper=new zP(r,Object.assign(Object.assign({},e.parser.ParserConfig),{skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Cb=class extends Sb{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new kb,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=this.computeRuleType(e),i=this.wrapper.DEFINE_RULE(J0e(e.name),this.startImplementation(n,r).bind(this));return this.allRules.set(e.name,i),e.entry&&(this.mainRule=i),i}computeRuleType(e){if(!e.fragment){if(Kx(e))return zS;{let r=c1(e);return r??e.name}}}parse(e,r={}){this.nodeBuilder.buildRootNode(e);let n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;let i=r.rule?this.allRules.get(r.rule):this.mainRule;if(!i)throw new Error(r.rule?`No rule found with name '${r.rule}'`:"No main rule available.");let a=i.call(this.wrapper,{});return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,{value:a,lexerErrors:n.errors,lexerReport:n.report,parserErrors:this.wrapper.errors}}startImplementation(e,r){return n=>{let i=!this.isRecording()&&e!==void 0;if(i){let s={$type:e};this.stack.push(s),e===zS&&(s.value="")}let a;try{a=r(n)}catch{a=void 0}return a===void 0&&i&&(a=this.construct()),a}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;in)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(a);let s=this.nodeBuilder.buildLeafNode(i,n),{assignment:l,isCrossRef:u}=this.getAssignment(n),h=this.current;if(l){let f=Zo(n)?i.image:this.converter.convert(i.image,s);this.assign(l.operator,l.feature,f,s,u)}else if($P(h)){let f=i.image;Zo(n)||(f=this.converter.convert(f,s).toString()),h.value+=f}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,a){let s;!this.isRecording()&&!n&&(s=this.nodeBuilder.buildCompositeNode(i));let l=this.wrapper.wrapSubrule(e,r,a);!this.isRecording()&&s&&s.length>0&&this.performSubruleAssignment(l,i,s)}performSubruleAssignment(e,r,n){let{assignment:i,isCrossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,a);else if(!i){let s=this.current;if($P(s))s.value+=e.toString();else if(typeof e=="object"&&e){let u=this.assignWithoutOverride(e,s);this.stack.pop(),this.stack.push(u)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let a={$type:e};this.stack.push(a),this.assign(r.operator,r.feature,n,n.$cstNode,!1)}else n.$type=e}}construct(){if(this.isRecording())return;let e=this.current;return GE(e),this.nodeBuilder.construct(e),this.stack.pop(),$P(e)?this.converter.convert(e.value,e.$cstNode):(gO(this.astReflection,e),e)}getAssignment(e){if(!this.assignmentMap.has(e)){let r=Ip(e,Fl);this.assignmentMap.set(e,{assignment:r,isCrossRef:r?Mp(r.terminal):!1})}return this.assignmentMap.get(e)}assign(e,r,n,i,a){let s=this.current,l;switch(a&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):l=n,e){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(e,r){for(let[i,a]of Object.entries(r)){let s=e[i];s===void 0?e[i]=a:Array.isArray(s)&&Array.isArray(a)&&(a.push(...s),e[i]=a)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},GS=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return Zu.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Zu.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Zu.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Zu.buildEarlyExitMessage(e)}},F1=class extends GS{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Ab=class extends Sb{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(J0e(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,a){this.before(i),this.wrapper.wrapSubrule(e,r,a),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},GXe={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new F1},zP=class extends yb{static{o(this,"ChevrotainWrapper")}constructor(e,r){let n=r&&"maxLookahead"in r;super(e,Object.assign(Object.assign(Object.assign({},GXe),{lookaheadStrategy:n?new Ju({maxLookahead:r.maxLookahead}):new Tb({logging:r.skipValidations?()=>{}:void 0})}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r){return this.RULE(e,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}}});function Db(t,e,r){return VXe({parser:e,tokens:r,ruleNames:new Map},t),e}function VXe(t,e){let r=Xx(e,!1),n=an(e.rules).filter(Va).filter(i=>r.has(i));for(let i of n){let a=Object.assign(Object.assign({},t),{consume:1,optional:1,subrule:1,many:1,or:1});t.parser.rule(i,jp(a,i.definition))}}function jp(t,e,r=!1){let n;if(Zo(e))n=jXe(t,e);else if(qu(e))n=UXe(t,e);else if(Fl(e))n=jp(t,e.terminal);else if(Mp(e))n=eme(t,e);else if($l(e))n=HXe(t,e);else if(FE(e))n=WXe(t,e);else if(zE(e))n=YXe(t,e);else if(Of(e))n=XXe(t,e);else if(oO(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,yo,e),"method")}else throw new Rp(e.$cstNode,`Unexpected element type: ${e.$type}`);return tme(t,r?void 0:VS(e),n,e.cardinality)}function UXe(t,e){let r=Qx(e);return()=>t.parser.action(r,e)}function HXe(t,e){let r=e.rule.ref;if(Va(r)){let n=t.subrule++,i=r.fragment,a=e.arguments.length>0?qXe(r,e.arguments):()=>({});return s=>t.parser.subrule(n,rme(t,r),i,e,a(s))}else if(mo(r)){let n=t.consume++,i=GP(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)Uc(r);else throw new Rp(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function qXe(t,e){let r=e.map(n=>eh(n.value));return n=>{let i={};for(let a=0;ae(n)||r(n)}else if(JI(t)){let e=eh(t.left),r=eh(t.right);return n=>e(n)&&r(n)}else if(tO(t)){let e=eh(t.value);return r=>!e(r)}else if(rO(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(ZI(t)){let e=!!t.true;return()=>e}Uc(t)}function WXe(t,e){if(e.elements.length===1)return jp(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:jp(t,i,!0)},s=VS(i);s&&(a.GATE=eh(s)),r.push(a)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(a=>{let s={ALT:o(()=>a.ALT(i),"ALT")},l=a.GATE;return l&&(s.GATE=()=>l(i)),s}))}}function YXe(t,e){if(e.elements.length===1)return jp(t,e.elements[0]);let r=[];for(let l of e.elements){let u={ALT:jp(t,l,!0)},h=VS(l);h&&(u.GATE=eh(h)),r.push(u)}let n=t.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>t.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=t.parser;f.ALT=()=>{if(u.ALT(l),!d.isRecording()){let m=i(n,d);d.unorderedGroups.get(m)||d.unorderedGroups.set(m,[]);let g=d.unorderedGroups.get(m);typeof g?.[h]>"u"&&(g[h]=!0)}};let p=u.GATE;return p?f.GATE=()=>p(l):f.GATE=()=>{let m=d.unorderedGroups.get(i(n,d));return!m?.[h]},f})),"alternatives"),s=tme(t,VS(e),a,"*");return l=>{s(l),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function XXe(t,e){let r=e.elements.map(n=>jp(t,n));return n=>r.forEach(i=>i(n))}function VS(t){if(Of(t))return t.guardCondition}function eme(t,e,r=e.terminal){if(r)if($l(r)&&Va(r.rule.ref)){let n=r.rule.ref,i=t.subrule++;return a=>t.parser.subrule(i,rme(t,n),!1,e,a)}else if($l(r)&&mo(r.rule.ref)){let n=t.consume++,i=GP(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Zo(r)){let n=t.consume++,i=GP(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let n=WE(e.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+Qx(e.type.ref));return eme(t,e,i)}}function jXe(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function tme(t,e,r,n){let i=e&&eh(e);if(!n)if(i){let a=t.or++;return s=>t.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:RS(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=t.many++;return s=>t.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=t.many++;if(i){let s=t.or++;return l=>t.parser.alternatives(s,[{ALT:o(()=>t.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:RS(),GATE:o(()=>!i(l),"GATE")}])}else return s=>t.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=t.optional++;return s=>t.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else Uc(n)}function rme(t,e){let r=KXe(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function KXe(t,e){if(Va(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!Va(n);)(Of(n)||FE(n)||zE(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function GP(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}var US=M(()=>{"use strict";Ff();Hc();ME();Ys();zl();o(Db,"createParser");o(VXe,"buildRules");o(jp,"buildElement");o(UXe,"buildAction");o(HXe,"buildRuleCall");o(qXe,"buildRuleCallPredicate");o(eh,"buildPredicate");o(WXe,"buildAlternatives");o(YXe,"buildUnorderedGroup");o(XXe,"buildGroup");o(VS,"getGuardCondition");o(eme,"buildCrossReference");o(jXe,"buildKeyword");o(tme,"wrap");o(rme,"getRule");o(KXe,"getRuleName");o(GP,"getToken")});function VP(t){let e=t.Grammar,r=t.parser.Lexer,n=new Ab(t);return Db(e,n,r.definition),n.finalize(),n}var UP=M(()=>{"use strict";_b();US();o(VP,"createCompletionParser")});function HP(t){let e=nme(t);return e.finalize(),e}function nme(t){let e=t.Grammar,r=t.parser.Lexer,n=new Cb(t);return Db(e,n,r.definition)}var qP=M(()=>{"use strict";_b();US();o(HP,"createLangiumParser");o(nme,"prepareLangiumParser")});var th,HS=M(()=>{"use strict";Ff();Hc();hs();zl();l1();Ys();th=class{static{o(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,r){let n=an(Xx(e,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return i.forEach(s=>{let l=s.PATTERN;typeof l=="object"&&l&&"test"in l&&o1(l)?a.unshift(s):a.push(s)}),a}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(mo).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=u1(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=o1(r)?Zn.SKIPPED:"hidden"),i}requiresCustomPattern(e){return e.flags.includes("u")||e.flags.includes("s")?!0:!!(e.source.includes("?<=")||e.source.includes("?(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Va).flatMap(i=>qc(i).filter(Zo)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),a={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(a.LINE_BREAKS=!0),a}buildKeywordPattern(e,r){return r?new RegExp(kO(e.value)):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&EO("^"+a.source+"$",e.value)&&n.push(i),n},[])}}});var Kp,Xc,WP=M(()=>{"use strict";Hc();zl();Kp=class{static{o(this,"DefaultValueConverter")}convert(e,r){let n=r.grammarSource;if(Mp(n)&&(n=AO(n)),$l(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){var i;switch(e.name.toUpperCase()){case"INT":return Xc.convertInt(r);case"STRING":return Xc.convertString(r);case"ID":return Xc.convertID(r)}switch((i=IO(e))===null||i===void 0?void 0:i.toLowerCase()){case"number":return Xc.convertNumber(r);case"boolean":return Xc.convertBoolean(r);case"bigint":return Xc.convertBigint(r);case"date":return Xc.convertDate(r);default:return r}}};(function(t){function e(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(jP,"__esModule",{value:!0});var YP;function XP(){if(YP===void 0)throw new Error("No runtime abstraction layer installed");return YP}o(XP,"RAL");(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");YP=r}o(e,"install"),t.install=e})(XP||(XP={}));jP.default=XP});var sme=sa(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.stringArray=Ha.array=Ha.func=Ha.error=Ha.number=Ha.string=Ha.boolean=void 0;function QXe(t){return t===!0||t===!1}o(QXe,"boolean");Ha.boolean=QXe;function ime(t){return typeof t=="string"||t instanceof String}o(ime,"string");Ha.string=ime;function ZXe(t){return typeof t=="number"||t instanceof Number}o(ZXe,"number");Ha.number=ZXe;function JXe(t){return t instanceof Error}o(JXe,"error");Ha.error=JXe;function eje(t){return typeof t=="function"}o(eje,"func");Ha.func=eje;function ame(t){return Array.isArray(t)}o(ame,"array");Ha.array=ame;function tje(t){return ame(t)&&t.every(e=>ime(e))}o(tje,"stringArray");Ha.stringArray=tje});var ZP=sa($1=>{"use strict";Object.defineProperty($1,"__esModule",{value:!0});$1.Emitter=$1.Event=void 0;var rje=KP(),ome;(function(t){let e={dispose(){}};t.None=function(){return e}})(ome||($1.Event=ome={}));var QP=class{static{o(this,"CallbackList")}add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(e,r),"dispose")})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i{this._callbacks||(this._callbacks=new QP),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};$1.Emitter=qS;qS._noop=function(){}});var lme=sa(z1=>{"use strict";Object.defineProperty(z1,"__esModule",{value:!0});z1.CancellationTokenSource=z1.CancellationToken=void 0;var nje=KP(),ije=sme(),JP=ZP(),WS;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:JP.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:JP.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||ije.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(e,"is"),t.is=e})(WS||(z1.CancellationToken=WS={}));var aje=Object.freeze(function(t,e){let r=(0,nje.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),YS=class{static{o(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?aje:(this._emitter||(this._emitter=new JP.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},eB=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new YS),this._token}cancel(){this._token?this._token.cancel():this._token=WS.Cancelled}dispose(){this._token?this._token instanceof YS&&this._token.dispose():this._token=WS.None}};z1.CancellationTokenSource=eB});var br={};var el=M(()=>{"use strict";Lr(br,La(lme(),1))});function tB(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}function jS(){return XS=performance.now(),new br.CancellationTokenSource}function ume(t){cme=t}function Kc(t){return t===jc}async function bi(t){if(t===br.CancellationToken.None)return;let e=performance.now();if(e-XS>=cme&&(XS=e,await tB(),XS=performance.now()),t.isCancellationRequested)throw jc}var XS,cme,jc,gs,tl=M(()=>{"use strict";el();o(tB,"delayNextTick");XS=0,cme=10;o(jS,"startCancelableOperation");o(ume,"setInterruptionPeriod");jc=Symbol("OperationCancelled");o(Kc,"isOperationCancelled");o(bi,"interruptAndCheck");gs=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}}});function rB(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);rB(n,e),rB(i,e);let a=0,s=0,l=0;for(;ar.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function sje(t){let e=dme(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var KS,G1,pme=M(()=>{"use strict";KS=class t{static{o(this,"FullTextDocument")}constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=dme(n.range),a=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(s,this._content.length);let l=Math.max(i.start.line,0),u=Math.max(i.end.line,0),h=this._lineOffsets,f=hme(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;pe?i=s:n=s+1}let a=n-1;return e=this.ensureBeforeEOL(e,r[a]),{line:a,character:e-r[a]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1r&&fme(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(t){function e(i,a,s,l){return new KS(i,a,s,l)}o(e,"create"),t.create=e;function r(i,a,s){if(i instanceof KS)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),t.update=r;function n(i,a){let s=i.getText(),l=rB(a.map(sje),(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),u=0,h=[];for(let f of l){let d=i.offsetAt(f.range.start);if(du&&h.push(s.substring(u,d)),f.newText.length&&h.push(f.newText),u=i.offsetAt(f.range.end)}return h.push(s.substr(u)),h.join("")}o(n,"applyEdits"),t.applyEdits=n})(G1||(G1={}));o(rB,"mergeSort");o(hme,"computeLineOffsets");o(fme,"isEOL");o(dme,"getWellformedRange");o(sje,"getWellformedEdit")});var mme,ys,V1,nB=M(()=>{"use strict";(()=>{"use strict";var t={470:i=>{function a(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}o(a,"e");function s(u,h){for(var f,d="",p=0,m=-1,g=0,y=0;y<=u.length;++y){if(y2){var v=d.lastIndexOf("/");if(v!==d.length-1){v===-1?(d="",p=0):p=(d=d.slice(0,v)).length-1-d.lastIndexOf("/"),m=y,g=0;continue}}else if(d.length===2||d.length===1){d="",p=0,m=y,g=0;continue}}h&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(m+1,y):d=u.slice(m+1,y),p=y-m-1;m=y,g=0}else f===46&&g!==-1?++g:g=-1}return d}o(s,"r");var l={resolve:o(function(){for(var u,h="",f=!1,d=arguments.length-1;d>=-1&&!f;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),a(p),p.length!==0&&(h=p+"/"+h,f=p.charCodeAt(0)===47)}return h=s(h,!f),f?h.length>0?"/"+h:"/":h.length>0?h:"."},"resolve"),normalize:o(function(u){if(a(u),u.length===0)return".";var h=u.charCodeAt(0)===47,f=u.charCodeAt(u.length-1)===47;return(u=s(u,!h)).length!==0||h||(u="."),u.length>0&&f&&(u+="/"),h?"/"+u:u},"normalize"),isAbsolute:o(function(u){return a(u),u.length>0&&u.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var u,h=0;h0&&(u===void 0?u=f:u+="/"+f)}return u===void 0?".":l.normalize(u)},"join"),relative:o(function(u,h){if(a(u),a(h),u===h||(u=l.resolve(u))===(h=l.resolve(h)))return"";for(var f=1;fy){if(h.charCodeAt(m+x)===47)return h.slice(m+x+1);if(x===0)return h.slice(m+x)}else p>y&&(u.charCodeAt(f+x)===47?v=x:x===0&&(v=0));break}var b=u.charCodeAt(f+x);if(b!==h.charCodeAt(m+x))break;b===47&&(v=x)}var T="";for(x=f+v+1;x<=d;++x)x!==d&&u.charCodeAt(x)!==47||(T.length===0?T+="..":T+="/..");return T.length>0?T+h.slice(m+v):(m+=v,h.charCodeAt(m)===47&&++m,h.slice(m))},"relative"),_makeLong:o(function(u){return u},"_makeLong"),dirname:o(function(u){if(a(u),u.length===0)return".";for(var h=u.charCodeAt(0),f=h===47,d=-1,p=!0,m=u.length-1;m>=1;--m)if((h=u.charCodeAt(m))===47){if(!p){d=m;break}}else p=!1;return d===-1?f?"/":".":f&&d===1?"//":u.slice(0,d)},"dirname"),basename:o(function(u,h){if(h!==void 0&&typeof h!="string")throw new TypeError('"ext" argument must be a string');a(u);var f,d=0,p=-1,m=!0;if(h!==void 0&&h.length>0&&h.length<=u.length){if(h.length===u.length&&h===u)return"";var g=h.length-1,y=-1;for(f=u.length-1;f>=0;--f){var v=u.charCodeAt(f);if(v===47){if(!m){d=f+1;break}}else y===-1&&(m=!1,y=f+1),g>=0&&(v===h.charCodeAt(g)?--g==-1&&(p=f):(g=-1,p=y))}return d===p?p=y:p===-1&&(p=u.length),u.slice(d,p)}for(f=u.length-1;f>=0;--f)if(u.charCodeAt(f)===47){if(!m){d=f+1;break}}else p===-1&&(m=!1,p=f+1);return p===-1?"":u.slice(d,p)},"basename"),extname:o(function(u){a(u);for(var h=-1,f=0,d=-1,p=!0,m=0,g=u.length-1;g>=0;--g){var y=u.charCodeAt(g);if(y!==47)d===-1&&(p=!1,d=g+1),y===46?h===-1?h=g:m!==1&&(m=1):h!==-1&&(m=-1);else if(!p){f=g+1;break}}return h===-1||d===-1||m===0||m===1&&h===d-1&&h===f+1?"":u.slice(h,d)},"extname"),format:o(function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return(function(h,f){var d=f.dir||f.root,p=f.base||(f.name||"")+(f.ext||"");return d?d===f.root?d+p:d+"/"+p:p})(0,u)},"format"),parse:o(function(u){a(u);var h={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return h;var f,d=u.charCodeAt(0),p=d===47;p?(h.root="/",f=1):f=0;for(var m=-1,g=0,y=-1,v=!0,x=u.length-1,b=0;x>=f;--x)if((d=u.charCodeAt(x))!==47)y===-1&&(v=!1,y=x+1),d===46?m===-1?m=x:b!==1&&(b=1):m!==-1&&(b=-1);else if(!v){g=x+1;break}return m===-1||y===-1||b===0||b===1&&m===y-1&&m===g+1?y!==-1&&(h.base=h.name=g===0&&p?u.slice(1,y):u.slice(g,y)):(g===0&&p?(h.name=u.slice(1,m),h.base=u.slice(1,y)):(h.name=u.slice(g,m),h.base=u.slice(g,y)),h.ext=u.slice(m,y)),g>0?h.dir=u.slice(0,g-1):p&&(h.dir="/"),h},"parse"),sep:"/",delimiter:":",win32:null,posix:null};l.posix=l,i.exports=l}},e={};function r(i){var a=e[i];if(a!==void 0)return a.exports;var s=e[i]={exports:{}};return t[i](s,s.exports,r),s.exports}o(r,"r"),r.d=(i,a)=>{for(var s in a)r.o(a,s)&&!r.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:a[s]})},r.o=(i,a)=>Object.prototype.hasOwnProperty.call(i,a),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};(()=>{let i;r.r(n),r.d(n,{URI:o(()=>p,"URI"),Utils:o(()=>I,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,l=/^\/\//;function u(R,E){if(!R.scheme&&E)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${R.authority}", path: "${R.path}", query: "${R.query}", fragment: "${R.fragment}"}`);if(R.scheme&&!a.test(R.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(R.path){if(R.authority){if(!s.test(R.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(l.test(R.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(u,"s");let h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{static{o(this,"f")}static isUri(E){return E instanceof p||!!E&&typeof E.authority=="string"&&typeof E.fragment=="string"&&typeof E.path=="string"&&typeof E.query=="string"&&typeof E.scheme=="string"&&typeof E.fsPath=="string"&&typeof E.with=="function"&&typeof E.toString=="function"}scheme;authority;path;query;fragment;constructor(E,_,D,O,N,P=!1){typeof E=="object"?(this.scheme=E.scheme||h,this.authority=E.authority||h,this.path=E.path||h,this.query=E.query||h,this.fragment=E.fragment||h):(this.scheme=(function(B,F){return B||F?B:"file"})(E,P),this.authority=_||h,this.path=(function(B,F){switch(B){case"https":case"http":case"file":F?F[0]!==f&&(F=f+F):F=f}return F})(this.scheme,D||h),this.query=O||h,this.fragment=N||h,u(this,P))}get fsPath(){return b(this,!1)}with(E){if(!E)return this;let{scheme:_,authority:D,path:O,query:N,fragment:P}=E;return _===void 0?_=this.scheme:_===null&&(_=h),D===void 0?D=this.authority:D===null&&(D=h),O===void 0?O=this.path:O===null&&(O=h),N===void 0?N=this.query:N===null&&(N=h),P===void 0?P=this.fragment:P===null&&(P=h),_===this.scheme&&D===this.authority&&O===this.path&&N===this.query&&P===this.fragment?this:new g(_,D,O,N,P)}static parse(E,_=!1){let D=d.exec(E);return D?new g(D[2]||h,k(D[4]||h),k(D[5]||h),k(D[7]||h),k(D[9]||h),_):new g(h,h,h,h,h)}static file(E){let _=h;if(i&&(E=E.replace(/\\/g,f)),E[0]===f&&E[1]===f){let D=E.indexOf(f,2);D===-1?(_=E.substring(2),E=f):(_=E.substring(2,D),E=E.substring(D)||f)}return new g("file",_,E,h,h)}static from(E){let _=new g(E.scheme,E.authority,E.path,E.query,E.fragment);return u(_,!0),_}toString(E=!1){return T(this,E)}toJSON(){return this}static revive(E){if(E){if(E instanceof p)return E;{let _=new g(E);return _._formatted=E.external,_._fsPath=E._sep===m?E.fsPath:null,_}}return E}}let m=i?1:void 0;class g extends p{static{o(this,"l")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(E=!1){return E?T(this,!0):(this._formatted||(this._formatted=T(this,!1)),this._formatted)}toJSON(){let E={$mid:1};return this._fsPath&&(E.fsPath=this._fsPath,E._sep=m),this._formatted&&(E.external=this._formatted),this.path&&(E.path=this.path),this.scheme&&(E.scheme=this.scheme),this.authority&&(E.authority=this.authority),this.query&&(E.query=this.query),this.fragment&&(E.fragment=this.fragment),E}}let y={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function v(R,E,_){let D,O=-1;for(let N=0;N=97&&P<=122||P>=65&&P<=90||P>=48&&P<=57||P===45||P===46||P===95||P===126||E&&P===47||_&&P===91||_&&P===93||_&&P===58)O!==-1&&(D+=encodeURIComponent(R.substring(O,N)),O=-1),D!==void 0&&(D+=R.charAt(N));else{D===void 0&&(D=R.substr(0,N));let B=y[P];B!==void 0?(O!==-1&&(D+=encodeURIComponent(R.substring(O,N)),O=-1),D+=B):O===-1&&(O=N)}}return O!==-1&&(D+=encodeURIComponent(R.substring(O))),D!==void 0?D:R}o(v,"d");function x(R){let E;for(let _=0;_1&&R.scheme==="file"?`//${R.authority}${R.path}`:R.path.charCodeAt(0)===47&&(R.path.charCodeAt(1)>=65&&R.path.charCodeAt(1)<=90||R.path.charCodeAt(1)>=97&&R.path.charCodeAt(1)<=122)&&R.path.charCodeAt(2)===58?E?R.path.substr(1):R.path[1].toLowerCase()+R.path.substr(2):R.path,i&&(_=_.replace(/\//g,"\\")),_}o(b,"m");function T(R,E){let _=E?x:v,D="",{scheme:O,authority:N,path:P,query:B,fragment:F}=R;if(O&&(D+=O,D+=":"),(N||O==="file")&&(D+=f,D+=f),N){let V=N.indexOf("@");if(V!==-1){let $=N.substr(0,V);N=N.substr(V+1),V=$.lastIndexOf(":"),V===-1?D+=_($,!1,!1):(D+=_($.substr(0,V),!1,!1),D+=":",D+=_($.substr(V+1),!1,!0)),D+="@"}N=N.toLowerCase(),V=N.lastIndexOf(":"),V===-1?D+=_(N,!1,!0):(D+=_(N.substr(0,V),!1,!0),D+=N.substr(V))}if(P){if(P.length>=3&&P.charCodeAt(0)===47&&P.charCodeAt(2)===58){let V=P.charCodeAt(1);V>=65&&V<=90&&(P=`/${String.fromCharCode(V+32)}:${P.substr(3)}`)}else if(P.length>=2&&P.charCodeAt(1)===58){let V=P.charCodeAt(0);V>=65&&V<=90&&(P=`${String.fromCharCode(V+32)}:${P.substr(2)}`)}D+=_(P,!0,!1)}return B&&(D+="?",D+=_(B,!1,!1)),F&&(D+="#",D+=E?F:v(F,!1,!1)),D}o(T,"y");function S(R){try{return decodeURIComponent(R)}catch{return R.length>3?R.substr(0,3)+S(R.substr(3)):R}}o(S,"v");let w=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function k(R){return R.match(w)?R.replace(w,(E=>S(E))):R}o(k,"C");var C=r(470);let A=C.posix||C,L="/";var I;(function(R){R.joinPath=function(E,..._){return E.with({path:A.join(E.path,..._)})},R.resolvePath=function(E,..._){let D=E.path,O=!1;D[0]!==L&&(D=L+D,O=!0);let N=A.resolve(D,..._);return O&&N[0]===L&&!E.authority&&(N=N.substring(1)),E.with({path:N})},R.dirname=function(E){if(E.path.length===0||E.path===L)return E;let _=A.dirname(E.path);return _.length===1&&_.charCodeAt(0)===46&&(_=""),E.with({path:_})},R.basename=function(E){return A.basename(E.path)},R.extname=function(E){return A.extname(E.path)}})(I||(I={}))})(),mme=n})();({URI:ys,Utils:V1}=mme)});var vs,Qc=M(()=>{"use strict";nB();(function(t){t.basename=V1.basename,t.dirname=V1.dirname,t.extname=V1.extname,t.joinPath=V1.joinPath,t.resolvePath=V1.resolvePath;function e(i,a){return i?.toString()===a?.toString()}o(e,"equals"),t.equals=e;function r(i,a){let s=typeof i=="string"?i:i.path,l=typeof a=="string"?a:a.path,u=s.split("/").filter(m=>m.length>0),h=l.split("/").filter(m=>m.length>0),f=0;for(;f{"use strict";pme();U1();el();Ys();Qc();(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(Ln||(Ln={}));Lb=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=br.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??ys.parse(e.uri),br.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return br.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){let i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let a;if(n)a={parseResult:e,uri:r,state:Ln.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:Ln.Parsed,references:[],get textDocument(){return s()}}}return e.value.$document=a,a}async update(e,r){var n,i;let a=(n=e.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,s=(i=this.textDocuments)===null||i===void 0?void 0:i.get(e.uri.toString()),l=s?s.getText():await this.fileSystemProvider.readFile(e.uri);if(s)Object.defineProperty(e,"textDocument",{value:s});else{let u=this.createTextDocumentGetter(e.uri,l);Object.defineProperty(e,"textDocument",{get:u})}return a!==l&&(e.parseResult=await this.parseAsync(e.uri,l,r),e.parseResult.value.$document=e),e.state=Ln.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=G1.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},Rb=class{static{o(this,"DefaultLangiumDocuments")}constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.serviceRegistry=e.ServiceRegistry}get all(){return an(this.documentMap.values())}addDocument(e){let r=e.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,e)}getDocument(e){let r=e.toString();return this.documentMap.get(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(this.serviceRegistry.getServices(e).references.Linker.unlink(n),n.state=Ln.Changed,n.precomputedScopes=void 0,n.diagnostics=void 0),n}deleteDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(n.state=Ln.Changed,this.documentMap.delete(r)),n}}});var iB,Nb,aB=M(()=>{"use strict";el();Pl();hs();tl();U1();iB=Symbol("ref_resolving"),Nb=class{static{o(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,r=br.CancellationToken.None){for(let n of Jo(e.parseResult.value))await bi(r),a1(n).forEach(i=>this.doLink(i,e))}doLink(e,r){var n;let i=e.reference;if(i._ref===void 0){i._ref=iB;try{let a=this.getCandidate(e);if(_p(a))i._ref=a;else if(i._nodeDescription=a,this.langiumDocuments().hasDocument(a.documentUri)){let s=this.loadAstNode(a);i._ref=s??this.createLinkingError(e,a)}else i._ref=void 0}catch(a){console.error(`An error occurred while resolving reference to '${i.$refText}':`,a);let s=(n=a.message)!==null&&n!==void 0?n:String(a);i._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${i.$refText}': ${s}`})}r.references.push(i)}}unlink(e){for(let r of e.references)delete r._ref,delete r._nodeDescription;e.references=[]}getCandidate(e){let n=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return n??this.createLinkingError(e)}buildReference(e,r,n,i){let a=this,s={$refNode:n,$refText:i,get ref(){var l;if(li(this._ref))return this._ref;if(qI(this._nodeDescription)){let u=a.loadAstNode(this._nodeDescription);this._ref=u??a.createLinkingError({reference:s,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=iB;let u=Vx(e).$document,h=a.getLinkedNode({reference:s,container:e,property:r});if(h.error&&u&&u.state{"use strict";zl();o(gme,"isNamed");Mb=class{static{o(this,"DefaultNameProvider")}getName(e){if(gme(e))return e.name}getNameNode(e){return jx(e.$cstNode,"name")}}});var Ib,oB=M(()=>{"use strict";zl();Pl();hs();Bl();Ys();Qc();Ib=class{static{o(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){let r=MO(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(wa(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(wa(a)&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return a.ref}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||YI(e,i)))return n}}}findDeclarationNode(e){let r=this.findDeclaration(e);if(r?.$cstNode){let n=this.nameProvider.getNameNode(r);return n??r.$cstNode}}findReferences(e,r){let n=[];if(r.includeDeclaration){let a=this.getReferenceToSelf(e);a&&n.push(a)}let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(a=>vs.equals(a.sourceUri,r.documentUri))),n.push(...i),an(n)}getReferenceToSelf(e){let r=this.nameProvider.getNameNode(e);if(r){let n=Ua(e),i=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:Lp(r),local:!0}}}}});var Vl,Qp,H1=M(()=>{"use strict";Ys();Vl=class{static{o(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return vg.sum(an(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){var r;return(r=this.map.get(e))!==null&&r!==void 0?r:[]}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return an(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return an(this.map.keys())}values(){return an(this.map.values()).flat()}entriesGroupedByKey(){return an(this.map.entries())}},Qp=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}}});var Ob,lB=M(()=>{"use strict";el();hs();H1();tl();Ob=class{static{o(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,r=br.CancellationToken.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,r)}async computeExportsForNode(e,r,n=Ux,i=br.CancellationToken.None){let a=[];this.exportNode(e,a,r);for(let s of n(e))await bi(i),this.exportNode(s,a,r);return a}exportNode(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async computeLocalScopes(e,r=br.CancellationToken.None){let n=e.parseResult.value,i=new Vl;for(let a of qc(n))await bi(r),this.processNode(a,e,i);return i}processNode(e,r,n){let i=e.$container;if(i){let a=this.nameProvider.getName(e);a&&n.add(i,this.descriptions.createDescription(e,a,r))}}}});var q1,Pb,oje,cB=M(()=>{"use strict";Ys();q1=class{static{o(this,"StreamScope")}constructor(e,r,n){var i;this.elements=e,this.outerScope=r,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===e.toLowerCase()):this.elements.find(n=>n.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}},Pb=class{static{o(this,"MapScope")}constructor(e,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(let a of e){let s=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(s,a)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getAllElements(){let e=an(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},oje={getElement(){},getAllElements(){return Nx}}});var W1,Bb,Zp,QS,Y1,ZS=M(()=>{"use strict";W1=class{static{o(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},Bb=class extends W1{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},Zp=class extends W1{static{o(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},QS=class extends Zp{static{o(this,"DocumentCache")}constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let a of i)this.clear(a)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let a=n.concat(i);for(let s of a)this.clear(s)}))}},Y1=class extends Bb{static{o(this,"WorkspaceCache")}constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var Fb,uB=M(()=>{"use strict";cB();hs();Ys();ZS();Fb=class{static{o(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new Y1(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=Ua(e.container).precomputedScopes;if(i){let s=e.container;do{let l=i.get(s);l.length>0&&r.push(an(l).filter(u=>this.reflection.isSubtype(u.type,n))),s=s.$container}while(s)}let a=this.getGlobalScope(n,e);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(e,r,n){return new q1(an(e),r,n)}createScopeForNodes(e,r,n){let i=an(e).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new q1(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new Pb(this.indexManager.allElements(e)))}}});function hB(t){return typeof t.$comment=="string"}function yme(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var $b,JS=M(()=>{"use strict";nB();Pl();hs();zl();o(hB,"isAstNodeWithComment");o(yme,"isIntermediateReference");$b=class{static{o(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r?.replacer,a=o((l,u)=>this.replacer(l,u,n),"defaultReplacer"),s=i?(l,u)=>i(l,u,a):a;try{return this.currentDocument=Ua(e),JSON.stringify(e,s,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){var u,h,f,d;if(!this.ignoreProperties.has(e))if(wa(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=Ua(p),y="";this.currentDocument&&this.currentDocument!==g&&(l?y=l(g.uri,r):y=g.uri.toString());let v=this.astNodeLocator.getAstNodePath(p);return{$ref:`${y}#${v}`,$refText:m}}else return{$error:(h=(u=r.error)===null||u===void 0?void 0:u.message)!==null&&h!==void 0?h:"Could not resolve reference",$refText:m}}else if(li(r)){let p;if(a&&(p=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},r)),(!e||r.$document)&&p?.$textRegion&&(p.$textRegion.documentURI=(f=this.currentDocument)===null||f===void 0?void 0:f.uri.toString())),i&&!e&&(p??(p=Object.assign({},r)),p.$sourceText=(d=r.$cstNode)===null||d===void 0?void 0:d.text),s){p??(p=Object.assign({},r));let m=this.commentProvider.getComment(r);m&&(p.$comment=m.replace(/\r/g,""))}return p??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let s=DO(e.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),e}}linkNode(e,r,n,i,a,s){for(let[u,h]of Object.entries(e))if(Array.isArray(h))for(let f=0;f{"use strict";Qc();zb=class{static{o(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let r=e.LanguageMetaData;for(let n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);this.languageIdMap.set(r.languageId,e),this.languageIdMap.size===1?this.singleton=e:this.singleton=void 0}getServices(e){var r,n;if(this.singleton!==void 0)return this.singleton;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let i=(n=(r=this.textDocuments)===null||r===void 0?void 0:r.get(e))===null||n===void 0?void 0:n.languageId;if(i!==void 0){let l=this.languageIdMap.get(i);if(l)return l}let a=vs.extname(e),s=this.fileExtensionMap.get(a);if(!s)throw i?new Error(`The service registry contains no services for the extension '${a}' for language '${i}'.`):new Error(`The service registry contains no services for the extension '${a}'.`);return s}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}}});function Jp(t){return{code:t}}var X1,Gb,Vb=M(()=>{"use strict";vo();H1();tl();Ys();o(Jp,"diagnosticData");(function(t){t.all=["fast","slow","built-in"]})(X1||(X1={}));Gb=class{static{o(this,"ValidationRegistry")}constructor(e){this.entries=new Vl,this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[i,a]of Object.entries(e)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,r),category:n};this.addEntry(i,l)}else Uc(s)}}wrapValidationException(e,r){return async(n,i,a)=>{await this.handleException(()=>e.call(r,n,i,a),"An error occurred during validation",i,n)}}async handleException(e,r,n,i){try{await e()}catch(a){if(Kc(a))throw a;console.error(`${r}:`,a),a instanceof Error&&a.stack&&console.error(a.stack);let s=a instanceof Error?a.message:String(a);n("error",`${r}: ${s}`,{node:i})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=an(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return async(i,a,s,l)=>{await this.handleException(()=>e.call(n,i,a,s,l),r,a,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}}});function vme(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=jx(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=RO(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function e6(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function xme(t){switch(t){case"error":return Jp(rl.LexingError);case"warning":return Jp(rl.LexingWarning);case"info":return Jp(rl.LexingInfo);case"hint":return Jp(rl.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Ub,rl,dB=M(()=>{"use strict";el();zl();hs();Bl();tl();Vb();Ub=class{static{o(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,r={},n=br.CancellationToken.None){let i=e.parseResult,a=[];if(await bi(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===rl.LexingError})||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===rl.ParsingError}))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===rl.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(Kc(s))throw s;console.error("An error occurred during validation:",s)}return await bi(n),a}processLexingErrors(e,r,n){var i,a,s;let l=[...e.lexerErrors,...(a=(i=e.lexerReport)===null||i===void 0?void 0:i.diagnostics)!==null&&a!==void 0?a:[]];for(let u of l){let h=(s=u.severity)!==null&&s!==void 0?s:"error",f={severity:e6(h),range:{start:{line:u.line-1,character:u.column-1},end:{line:u.line-1,character:u.column+u.length-1}},message:u.message,data:xme(h),source:this.getSource()};r.push(f)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let s=i.previousToken;if(isNaN(s.startOffset)){let l={line:0,character:0};a={start:l,end:l}}else{let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}}}else a=xg(i.token);if(a){let s={severity:e6("error"),range:a,message:i.message,data:Jp(rl.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(e,r,n){for(let i of e.references){let a=i.error;if(a){let s={node:a.container,property:a.property,index:a.index,data:{code:rl.LinkingError,containerType:a.container.$type,property:a.property,refText:a.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(e,r,n=br.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await this.validateAstBefore(e,r,a,n),await this.validateAstNodes(e,r,a,n),await this.validateAstAfter(e,r,a,n),i}async validateAstBefore(e,r,n,i=br.CancellationToken.None){var a;let s=this.validationRegistry.checksBefore;for(let l of s)await bi(i),await l(e,n,(a=r.categories)!==null&&a!==void 0?a:[],i)}async validateAstNodes(e,r,n,i=br.CancellationToken.None){await Promise.all(Jo(e).map(async a=>{await bi(i);let s=this.validationRegistry.getChecks(a.$type,r.categories);for(let l of s)await l(a,n,i)}))}async validateAstAfter(e,r,n,i=br.CancellationToken.None){var a;let s=this.validationRegistry.checksAfter;for(let l of s)await bi(i),await l(e,n,(a=r.categories)!==null&&a!==void 0?a:[],i)}toDiagnostic(e,r,n){return{message:r,range:vme(n),severity:e6(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(vme,"getDiagnosticRange");o(e6,"toDiagnosticSeverity");o(xme,"toDiagnosticData");(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(rl||(rl={}))});var Hb,qb,pB=M(()=>{"use strict";el();Pl();hs();Bl();tl();Qc();Hb=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??Ua(e);r??(r=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${a} has no name.`);let s,l=o(()=>{var u;return s??(s=Lp((u=this.nameProvider.getNameNode(e))!==null&&u!==void 0?u:e.$cstNode))},"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return l()},selectionSegment:Lp(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},qb=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=br.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of Jo(i))await bi(r),a1(a).filter(s=>!_p(s)).forEach(s=>{let l=this.createDescription(s);l&&n.push(l)});return n}createDescription(e){let r=e.reference.$nodeDescription,n=e.reference.$refNode;if(!r||!n)return;let i=Ua(e.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:r.documentUri,targetPath:r.path,segment:Lp(n),local:vs.equals(r.documentUri,i)}}}});var Wb,mB=M(()=>{"use strict";Wb=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,a)=>{if(!i||a.length===0)return i;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1)),h=i[l];return h?.[u]}return i[a]},e)}}});var ei={};var t6=M(()=>{"use strict";Lr(ei,La(ZP(),1))});var Yb,gB=M(()=>{"use strict";t6();tl();Yb=class{static{o(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new gs,this.settings={},this.workspaceConfig=!1,this.onConfigurationSectionUpdateEmitter=new ei.Emitter,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var r,n;this.workspaceConfig=(n=(r=e.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(e){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(r=>{let n=e.settings[r];this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}});var Gf,yB=M(()=>{"use strict";(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}o(e,"create"),t.create=e})(Gf||(Gf={}))});var Xb,vB=M(()=>{"use strict";el();yB();H1();tl();Ys();Vb();U1();Xb=class{static{o(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Vl,this.documentPhaseListeners=new Vl,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Ln.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,r={},n=br.CancellationToken.None){var i,a;for(let s of e){let l=s.uri.toString();if(s.state===Ln.Validated){if(typeof r.validation=="boolean"&&r.validation)s.state=Ln.IndexedReferences,s.diagnostics=void 0,this.buildState.delete(l);else if(typeof r.validation=="object"){let u=this.buildState.get(l),h=(i=u?.result)===null||i===void 0?void 0:i.validationChecks;if(h){let d=((a=r.validation.categories)!==null&&a!==void 0?a:X1.all).filter(p=>!h.includes(p));d.length>0&&(this.buildState.set(l,{completed:!1,options:{validation:Object.assign(Object.assign({},r.validation),{categories:d})},result:u.result}),s.state=Ln.IndexedReferences)}}}else this.buildState.delete(l)}this.currentState=Ln.Changed,await this.emitUpdate(e.map(s=>s.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=br.CancellationToken.None){this.currentState=Ln.Changed;for(let s of r)this.langiumDocuments.deleteDocument(s),this.buildState.delete(s.toString()),this.indexManager.remove(s);for(let s of e){if(!this.langiumDocuments.invalidateDocument(s)){let u=this.langiumDocumentFactory.fromModel({$type:"INVALID"},s);u.state=Ln.Changed,this.langiumDocuments.addDocument(u)}this.buildState.delete(s.toString())}let i=an(e).concat(r).map(s=>s.toString()).toSet();this.langiumDocuments.all.filter(s=>!i.has(s.uri.toString())&&this.shouldRelink(s,i)).forEach(s=>{this.serviceRegistry.getServices(s.uri).references.Linker.unlink(s),s.state=Math.min(s.state,Ln.ComputedScopes),s.diagnostics=void 0}),await this.emitUpdate(e,r),await bi(n);let a=this.sortDocuments(this.langiumDocuments.all.filter(s=>{var l;return s.staten(e,r)))}sortDocuments(e){let r=0,n=e.length-1;for(;r=0&&!this.hasTextDocument(e[n]);)n--;rn.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),Gf.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,Ln.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(e,Ln.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(e,Ln.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(e,Ln.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(e,Ln.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=e.filter(a=>this.shouldValidate(a));await this.runCancelable(i,Ln.Validated,n,a=>this.validate(a,n));for(let a of e){let s=this.buildState.get(a.uri.toString());s&&(s.completed=!0)}}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a?.result})}}async runCancelable(e,r,n,i){let a=e.filter(l=>l.statel.state===r);await this.notifyBuildPhase(s,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),Gf.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),Gf.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=br.CancellationToken.None),i){let a=this.langiumDocuments.getDocument(i);if(a&&a.state>e)return Promise.resolve(i)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(jc):new Promise((a,s)=>{let l=this.onBuildPhase(e,()=>{if(l.dispose(),u.dispose(),i){let h=this.langiumDocuments.getDocument(i);a(h?.uri)}else a(void 0)}),u=n.onCancellationRequested(()=>{l.dispose(),u.dispose(),s(jc)})})}async notifyDocumentPhase(e,r,n){let a=this.documentPhaseListeners.get(r).slice();for(let s of a)try{await s(e,n)}catch(l){if(!Kc(l))throw l}}async notifyBuildPhase(e,r,n){if(e.length===0)return;let a=this.buildPhaseListeners.get(r).slice();for(let s of a)await bi(n),await s(e,n)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){var n,i;let a=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,s=this.getBuildOptions(e).validation,l=typeof s=="object"?s:void 0,u=await a.validateDocument(e,l,r);e.diagnostics?e.diagnostics.push(...u):e.diagnostics=u;let h=this.buildState.get(e.uri.toString());if(h){(n=h.result)!==null&&n!==void 0||(h.result={});let f=(i=l?.categories)!==null&&i!==void 0?i:X1.all;h.result.validationChecks?h.result.validationChecks.push(...f):h.result.validationChecks=[...f]}}getBuildOptions(e){var r,n;return(n=(r=this.buildState.get(e.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}});var jb,xB=M(()=>{"use strict";hs();ZS();el();Ys();Qc();jb=class{static{o(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new Zp,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=Ua(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{vs.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),an(i)}allElements(e,r){let n=an(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){var n;return r?this.symbolByTypeIndex.get(e,r,()=>{var a;return((a=this.symbolIndex.get(e))!==null&&a!==void 0?a:[]).filter(l=>this.astReflection.isSubtype(l.type,r))}):(n=this.symbolIndex.get(e))!==null&&n!==void 0?n:[]}remove(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(e,r=br.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.computeExports(e,r),a=e.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(e,r=br.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),i)}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var Kb,bB=M(()=>{"use strict";el();tl();Qc();Kb=class{static{o(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new gs,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){var r;this.folders=(r=e.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(e){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(e,r=br.CancellationToken.None){let n=await this.performStartup(e);await bi(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){let r=this.serviceRegistry.all.flatMap(a=>a.LanguageMetaData.fileExtensions),n=[],i=o(a=>{n.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)},"collector");return await this.loadAdditionalDocuments(e,i),await Promise.all(e.map(a=>[a,this.getRootFolder(a)]).map(async a=>this.traverseFolder(...a,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return ys.parse(e.uri)}async traverseFolder(e,r,n,i){let a=await this.fileSystemProvider.readDirectory(r);await Promise.all(a.map(async s=>{if(this.includeEntry(e,s,n)){if(s.isDirectory)await this.traverseFolder(e,s.uri,n,i);else if(s.isFile){let l=await this.langiumDocuments.getOrCreateDocument(s.uri);i(l)}}}))}includeEntry(e,r,n){let i=vs.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=vs.extname(r.uri);return n.includes(a)}return!1}}});function n6(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function wB(t){return t&&"modes"in t&&"defaultMode"in t}function TB(t){return!n6(t)&&!wB(t)}var Qb,r6,e0,i6=M(()=>{"use strict";Ff();Qb=class{static{o(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,r,n,i,a){return x1.buildUnexpectedCharactersMessage(e,r,n,i,a)}buildUnableToPopLexerModeMessage(e){return x1.buildUnableToPopLexerModeMessage(e)}},r6={mode:"full"},e0=class{static{o(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=TB(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new Zn(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=r6){var n,i,a;let s=this.chevrotainLexer.tokenize(e);return{tokens:s.tokens,errors:s.errors,hidden:(n=s.groups.hidden)!==null&&n!==void 0?n:[],report:(a=(i=this.tokenBuilder).flushLexingReport)===null||a===void 0?void 0:a.call(i,e)}}toTokenTypeDictionary(e){if(TB(e))return e;let r=wB(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};o(n6,"isTokenTypeArray");o(wB,"isIMultiModeLexerDefinition");o(TB,"isTokenTypeDictionary")});function SB(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=tn.create(0,0));let a=wme(t),s=AB(n),l=cje({lines:a,position:i,options:s});return pje({index:0,tokens:l,position:i})}function CB(t,e){let r=AB(e),n=wme(t);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],s=r.start,l=r.end;return!!s?.exec(i)&&!!l?.exec(a)}function wme(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(TO)}function cje(t){var e,r,n;let i=[],a=t.position.line,s=t.position.character;for(let l=0;l=f.length){if(i.length>0){let m=tn.create(a,s);i.push({type:"break",content:"",range:Gr.create(m,m)})}}else{bme.lastIndex=d;let m=bme.exec(f);if(m){let g=m[0],y=m[1],v=tn.create(a,s+d),x=tn.create(a,s+d+g.length);i.push({type:"tag",content:y,range:Gr.create(v,x)}),d+=g.length,d=EB(f,d)}if(d0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function uje(t,e,r,n){let i=[];if(t.length===0){let a=tn.create(r,n),s=tn.create(r,n+e.length);i.push({type:"text",content:e,range:Gr.create(a,s)})}else{let a=0;for(let l of t){let u=l.index,h=e.substring(a,u);h.length>0&&i.push({type:"text",content:e.substring(a,u),range:Gr.create(tn.create(r,a+n),tn.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Gr.create(tn.create(r,a+f+n),tn.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Gr.create(tn.create(r,a+f+n),tn.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Gr.create(tn.create(r,a+f+n),tn.create(r,a+f+n))});a=u+l[0].length}let s=e.substring(a);s.length>0&&i.push({type:"text",content:s,range:Gr.create(tn.create(r,a+n),tn.create(r,a+n+s.length))})}return i}function EB(t,e){let r=t.substring(e).match(hje);return r?e+r.index:t.length}function dje(t){let e=t.match(fje);if(e&&typeof e.index=="number")return e.index}function pje(t){var e,r,n,i;let a=tn.create(t.position.line,t.position.character);if(t.tokens.length===0)return new a6([],Gr.create(a,a));let s=[];for(;t.index0){let u=EB(e,a);s=e.substring(u),e=e.substring(0,a)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(s=`\`${s}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,e,s))!==null&&i!==void 0?i:xje(e,s)}}function xje(t,e){try{return ys.parse(t,!0),`[${e}](${t})`}catch{return t}}function Tme(t){return t.endsWith(` +`&&i++}n&&r.length>0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return nn.create(0,e);for(;ne?i=s:n=s+1}let a=n-1;return nn.create(a,e-r[a])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1"u"}o(n,"undefined"),t.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),t.boolean=i;function a(m){return e.call(m)==="[object String]"}o(a,"string"),t.string=a;function s(m){return e.call(m)==="[object Number]"}o(s,"number"),t.number=s;function l(m,g,y){return e.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),t.numberRange=l;function u(m){return e.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),t.integer=u;function h(m){return e.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),t.uinteger=h;function f(m){return e.call(m)==="[object Function]"}o(f,"func"),t.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),t.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),t.typedArray=p})(qe||(qe={}))});var Z4,J4,xm,bm,ez,Wy,F6=I(()=>{"use strict";Uy();yc();Z4=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new Wy(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new bm;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new xm(e.startOffset,e.image.length,fy(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let a of e){let s=new xm(a.startOffset,a.image.length,fy(a),a.tokenType,!0);s.root=this.rootNode,r.push(s)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let a=n.container.content.indexOf(n);if(a>0){n.container.content.splice(a,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&!e.$infix&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}},J4=class{static{o(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let e=typeof this._astNode?.$type=="string"?this._astNode:this.container?.astNode;if(!e)throw new Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}},xm=class extends J4{static{o(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,a=!1){super(),this._hidden=a,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},bm=class extends J4{static{o(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new ez(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},ez=class t extends Array{static{o(this,"CstNodeContainer")}constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},Wy=class extends bm{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}});function tz(t){return t.$type===$6}var $6,Oye,Pye,eT,tT,z6,Hy,rT,ert,G6,rz,nT=I(()=>{"use strict";Uo();Vd();Iye();Uo();wc();ls();F6();$6=Symbol("Datatype");o(tz,"isDataTypeNode");Oye="\u200B",Pye=o(t=>t.endsWith(Oye)?t:t+Oye,"withRuleSuffix"),eT=class{static{o(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new rz(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new G6(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider})}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},tT=class extends eT{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new Z4,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=this.computeRuleType(e),i;Bd(e)&&(i=e.name,this.registerPrecedenceMap(e));let a=this.wrapper.DEFINE_RULE(Pye(e.name),this.startImplementation(n,i,r).bind(this));return this.allRules.set(e.name,a),wa(e)&&e.entry&&(this.mainRule=a),a}registerPrecedenceMap(e){let r=e.name,n=new Map;for(let i=0;i0&&(r=this.construct()),r===void 0)throw new Error("No result from parser");if(this.stack.length>0)throw new Error("Parser stack is not empty after parsing");return r}startImplementation(e,r,n){return i=>{let a=!this.isRecording()&&e!==void 0;if(a){let s={$type:e};this.stack.push(s),e===$6?s.value="":r!==void 0&&(s.$infixName=r)}return n(i),a?this.construct():void 0}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;in)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(a);let s=this.nodeBuilder.buildLeafNode(i,n),{assignment:l,crossRef:u}=this.getAssignment(n),h=this.current;if(l){let f=Dl(n)?i.image:this.converter.convert(i.image,s);this.assign(l.operator,l.feature,f,s,u)}else if(tz(h)){let f=i.image;Dl(n)||(f=this.converter.convert(f,s).toString()),h.value+=f}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,a){let s;!this.isRecording()&&!n&&(s=this.nodeBuilder.buildCompositeNode(i));let l;try{l=this.wrapper.wrapSubrule(e,r,a)}finally{this.isRecording()||(l===void 0&&!n&&(l=this.construct()),l!==void 0&&s&&s.length>0&&this.performSubruleAssignment(l,i,s))}}performSubruleAssignment(e,r,n){let{assignment:i,crossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,a);else if(!i){let s=this.current;if(tz(s))s.value+=e.toString();else if(typeof e=="object"&&e){let u=this.assignWithoutOverride(e,s);this.stack.pop(),this.stack.push(u)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let a={$type:e};this.stack.push(a),this.assign(r.operator,r.feature,n,n.$cstNode)}else n.$type=e}}construct(){if(this.isRecording())return;let e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):tz(e)?this.converter.convert(e.value,e.$cstNode):(kB(this.astReflection,e),e)}constructInfix(e,r){let n=e.parts;if(!Array.isArray(n)||n.length===0)return;let i=e.operators;if(!Array.isArray(i)||n.length<2)return n[0];let a=0,s=-1;for(let y=0;ys?(s=x.precedence,a=y):x.precedence===s&&(x.rightAssoc||(a=y))}let l=i.slice(0,a),u=i.slice(a+1),h=n.slice(0,a+1),f=n.slice(a+1),d={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:h,operators:l},p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:f,operators:u},m=this.constructInfix(d,r),g=this.constructInfix(p,r);return{$type:e.$type,$cstNode:e.$cstNode,left:m,operator:i[a],right:g}}getAssignment(e){if(!this.assignmentMap.has(e)){let r=Ih(e,xc);this.assignmentMap.set(e,{assignment:r,crossRef:r&&bc(r.terminal)?r.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,r,n,i,a){let s=this.current,l;switch(a==="single"&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):a==="multi"&&typeof n=="string"?l=this.linker.buildMultiReference(s,r,i,n):l=n,e){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(e,r){for(let[i,a]of Object.entries(r)){let s=e[i];s===void 0?e[i]=a:Array.isArray(s)&&Array.isArray(a)&&(a.push(...s),e[i]=a)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},z6=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return Wh.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Wh.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Wh.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Wh.buildEarlyExitMessage(e)}},Hy=class extends z6{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},rT=class extends eT{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(Pye(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,a){this.before(i),this.wrapper.wrapSubrule(e,r,a),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},ert={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new Hy},G6=class extends z4{static{o(this,"ChevrotainWrapper")}constructor(e,r){let n=r&&"maxLookahead"in r;super(e,{...ert,lookaheadStrategy:n?new Hh({maxLookahead:r.maxLookahead}):new U4({logging:r.skipValidations?()=>{}:void 0}),...r})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r,n){return this.RULE(e,r,n)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r,void 0)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}rule(e){return e.call(this,{})}},rz=class extends G6{static{o(this,"ProfilerWrapper")}constructor(e,r,n){super(e,r),this.task=n}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,r,n){this.task.startSubTask(this.ruleName(r));try{return super.subrule(e,r,n)}finally{this.task.stopSubTask(this.ruleName(r))}}}});function iT(t,e,r){return trt({parser:e,tokens:r,ruleNames:new Map},t),e}function trt(t,e){let r=v4(e,!1),n=Or(e.rules).filter(wa).filter(a=>r.has(a));for(let a of n){let s={...t,consume:1,optional:1,subrule:1,many:1,or:1};t.parser.rule(a,Tm(s,a.definition))}let i=Or(e.rules).filter(Bd).filter(a=>r.has(a));for(let a of i)t.parser.rule(a,rrt(t,a))}function rrt(t,e){let r=e.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(Os(r))throw new Error("Cannot use terminal rule in infix expression");let n=e.operators.precedences.flatMap(m=>m.operators),i={$type:"Group",elements:[]},a={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},s={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(a,s);let u={$container:s,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},h={...a,$container:s};s.elements.push(u,h);let d=n.map(m=>t.tokens[m.value]).map((m,g)=>({ALT:o(()=>t.parser.consume(g,m,u),"ALT")})),p;return m=>{p??(p=iz(t,r)),t.parser.subrule(0,p,!1,a,m),t.parser.many(0,{DEF:o(()=>{t.parser.alternatives(0,d),t.parser.subrule(1,p,!1,h,m)},"DEF")})}}function Tm(t,e,r=!1){let n;if(Dl(e))n=crt(t,e);else if(Fh(e))n=nrt(t,e);else if(xc(e))n=Tm(t,e.terminal);else if(bc(e))n=Bye(t,e);else if(Tc(e))n=irt(t,e);else if(DC(e))n=srt(t,e);else if(MC(e))n=ort(t,e);else if(Pd(e))n=lrt(t,e);else if(RB(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,Ho,e),"method")}else throw new am(e.$cstNode,`Unexpected element type: ${e.$type}`);return Fye(t,r?void 0:V6(e),n,e.cardinality)}function nrt(t,e){let r=$d(e);return()=>t.parser.action(r,e)}function irt(t,e){let r=e.rule.ref;if(Bh(r)){let n=t.subrule++,i=wa(r)&&r.fragment,a=e.arguments.length>0?art(r,e.arguments):()=>({}),s;return l=>{s??(s=iz(t,r)),t.parser.subrule(n,s,i,e,a(l))}}else if(Os(r)){let n=t.consume++,i=nz(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)_u(r);else throw new am(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function art(t,e){if(e.some(n=>n.calledByName)){let n=e.map(i=>({parameterName:i.parameter?.ref?.name,predicate:Nu(i.value)}));return i=>{let a={};for(let{parameterName:s,predicate:l}of n)s&&(a[s]=l(i));return a}}else{let n=e.map(i=>Nu(i.value));return i=>{let a={};for(let s=0;se(n)||r(n)}else if(_B(t)){let e=Nu(t.left),r=Nu(t.right);return n=>e(n)&&r(n)}else if(MB(t)){let e=Nu(t.value);return r=>!e(r)}else if(IB(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(CB(t)){let e=!!t.true;return()=>e}_u(t)}function srt(t,e){if(e.elements.length===1)return Tm(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:Tm(t,i,!0)},s=V6(i);s&&(a.GATE=Nu(s)),r.push(a)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(a=>{let s={ALT:o(()=>a.ALT(i),"ALT")},l=a.GATE;return l&&(s.GATE=()=>l(i)),s}))}}function ort(t,e){if(e.elements.length===1)return Tm(t,e.elements[0]);let r=[];for(let l of e.elements){let u={ALT:Tm(t,l,!0)},h=V6(l);h&&(u.GATE=Nu(h)),r.push(u)}let n=t.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>t.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=t.parser;f.ALT=()=>{if(u.ALT(l),!d.isRecording()){let m=i(n,d);d.unorderedGroups.get(m)||d.unorderedGroups.set(m,[]);let g=d.unorderedGroups.get(m);typeof g?.[h]>"u"&&(g[h]=!0)}};let p=u.GATE;return p?f.GATE=()=>p(l):f.GATE=()=>!d.unorderedGroups.get(i(n,d))?.[h],f})),"alternatives"),s=Fye(t,V6(e),a,"*");return l=>{s(l),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function lrt(t,e){let r=e.elements.map(n=>Tm(t,n));return n=>r.forEach(i=>i(n))}function V6(t){if(Pd(t))return t.guardCondition}function Bye(t,e,r=e.terminal){if(r)if(Tc(r)&&wa(r.rule.ref)){let n=r.rule.ref,i=t.subrule++,a;return s=>{a??(a=iz(t,n)),t.parser.subrule(i,a,!1,e,s)}}else if(Tc(r)&&Os(r.rule.ref)){let n=t.consume++,i=nz(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Dl(r)){let n=t.consume++,i=nz(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let i=zC(e.type.ref)?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+$d(e.type.ref));return Bye(t,e,i)}}function crt(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function Fye(t,e,r,n){let i=e&&Nu(e);if(!n)if(i){let a=t.or++;return s=>t.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:C6(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=t.many++;return s=>t.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=t.many++;if(i){let s=t.or++;return l=>t.parser.alternatives(s,[{ALT:o(()=>t.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:C6(),GATE:o(()=>!i(l),"GATE")}])}else return s=>t.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=t.optional++;return s=>t.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else _u(n)}function iz(t,e){let r=urt(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function urt(t,e){if(Bh(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!wa(n);)(Pd(n)||DC(n)||MC(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function nz(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}var q6=I(()=>{"use strict";Vd();Uo();PC();Ms();wc();o(iT,"createParser");o(trt,"buildRules");o(rrt,"buildInfixRule");o(Tm,"buildElement");o(nrt,"buildAction");o(irt,"buildRuleCall");o(art,"buildRuleCallPredicate");o(Nu,"buildPredicate");o(srt,"buildAlternatives");o(ort,"buildUnorderedGroup");o(lrt,"buildGroup");o(V6,"getGuardCondition");o(Bye,"buildCrossReference");o(crt,"buildKeyword");o(Fye,"wrap");o(iz,"getRule");o(urt,"getRuleName");o(nz,"getToken")});function az(t){let e=t.Grammar,r=t.parser.Lexer,n=new rT(t);return iT(e,n,r.definition),n.finalize(),n}var sz=I(()=>{"use strict";nT();q6();o(az,"createCompletionParser")});function oz(t){let e=$ye(t);return e.finalize(),e}function $ye(t){let e=t.Grammar,r=t.parser.Lexer,n=new tT(t);return iT(e,n,r.definition)}var lz=I(()=>{"use strict";nT();q6();o(oz,"createLangiumParser");o($ye,"prepareLangiumParser")});var jh,U6=I(()=>{"use strict";Vd();Uo();ls();wc();py();Ms();jh=class{static{o(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,r){let n=Or(v4(e,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return a.push(...i),a}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(Os).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=my(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=y4(r)?li.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let r=new RegExp(e,e.flags+"y");return(n,i)=>(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Bh).flatMap(i=>gc(i).filter(Dl)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),a={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(a.LINE_BREAKS=!0),a}buildKeywordPattern(e,r){return r?new RegExp(Fd(e.value),"i"):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&JB("^"+a.source+"$",e.value)&&n.push(i),n},[])}}});var wm,Mu,cz=I(()=>{"use strict";Uo();wc();wm=class{static{o(this,"DefaultValueConverter")}convert(e,r){let n=r.grammarSource;if(bc(n)&&(n=rF(n)),Tc(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){switch(e.name.toUpperCase()){case"INT":return Mu.convertInt(r);case"STRING":return Mu.convertString(r);case"ID":return Mu.convertID(r)}switch(cF(e)?.toLowerCase()){case"number":return Mu.convertNumber(r);case"boolean":return Mu.convertBoolean(r);case"bigint":return Mu.convertBigint(r);case"date":return Mu.convertDate(r);default:return r}}};(function(t){function e(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(fz,"__esModule",{value:!0});var uz;function hz(){if(uz===void 0)throw new Error("No runtime abstraction layer installed");return uz}o(hz,"RAL");(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");uz=r}o(e,"install"),t.install=e})(hz||(hz={}));fz.default=hz});var Yy=Jt(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.stringArray=cs.array=cs.func=cs.error=cs.number=cs.string=cs.boolean=void 0;function hrt(t){return t===!0||t===!1}o(hrt,"boolean");cs.boolean=hrt;function zye(t){return typeof t=="string"||t instanceof String}o(zye,"string");cs.string=zye;function frt(t){return typeof t=="number"||t instanceof Number}o(frt,"number");cs.number=frt;function drt(t){return t instanceof Error}o(drt,"error");cs.error=drt;function prt(t){return typeof t=="function"}o(prt,"func");cs.func=prt;function Gye(t){return Array.isArray(t)}o(Gye,"array");cs.array=Gye;function mrt(t){return Gye(t)&&t.every(e=>zye(e))}o(mrt,"stringArray");cs.stringArray=mrt});var km=Jt(jy=>{"use strict";Object.defineProperty(jy,"__esModule",{value:!0});jy.Emitter=jy.Event=void 0;var grt=Wd(),Vye;(function(t){let e={dispose(){}};t.None=function(){return e}})(Vye||(jy.Event=Vye={}));var dz=class{static{o(this,"CallbackList")}add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(e,r),"dispose")})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i{this._callbacks||(this._callbacks=new dz),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};jy.Emitter=W6;W6._noop=function(){}});var aT=Jt(Xy=>{"use strict";Object.defineProperty(Xy,"__esModule",{value:!0});Xy.CancellationTokenSource=Xy.CancellationToken=void 0;var yrt=Wd(),vrt=Yy(),pz=km(),H6;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:pz.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:pz.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||vrt.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(e,"is"),t.is=e})(H6||(Xy.CancellationToken=H6={}));var xrt=Object.freeze(function(t,e){let r=(0,yrt.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),Y6=class{static{o(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?xrt:(this._emitter||(this._emitter=new pz.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},mz=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new Y6),this._token}cancel(){this._token?this._token.cancel():this._token=H6.Cancelled}dispose(){this._token?this._token instanceof Y6&&this._token.dispose():this._token=H6.None}};Xy.CancellationTokenSource=mz});var Ar={};var Rl=I(()=>{"use strict";$r(Ar,Aa(aT(),1))});function gz(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}function X6(){return j6=performance.now(),new Ar.CancellationTokenSource}function Uye(t){qye=t}function Iu(t){return t===Ll}async function Ti(t){if(t===Ar.CancellationToken.None)return;let e=performance.now();if(e-j6>=qye&&(j6=e,await gz(),j6=performance.now()),t.isCancellationRequested)throw Ll}var j6,qye,Ll,zs,Nl=I(()=>{"use strict";Rl();o(gz,"delayNextTick");j6=0,qye=10;o(X6,"startCancelableOperation");o(Uye,"setInterruptionPeriod");Ll=Symbol("OperationCancelled");o(Iu,"isOperationCancelled");o(Ti,"interruptAndCheck");zs=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}}});function yz(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);yz(n,e),yz(i,e);let a=0,s=0,l=0;for(;ar.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function brt(t){let e=Yye(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var K6,Ky,jye=I(()=>{"use strict";K6=class t{static{o(this,"FullTextDocument")}constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=Yye(n.range),a=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(s,this._content.length);let l=Math.max(i.start.line,0),u=Math.max(i.end.line,0),h=this._lineOffsets,f=Wye(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;pe?i=s:n=s+1}let a=n-1;return e=this.ensureBeforeEOL(e,r[a]),{line:a,character:e-r[a]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1r&&Hye(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(t){function e(i,a,s,l){return new K6(i,a,s,l)}o(e,"create"),t.create=e;function r(i,a,s){if(i instanceof K6)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),t.update=r;function n(i,a){let s=i.getText(),l=yz(a.map(brt),(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),u=0,h=[];for(let f of l){let d=i.offsetAt(f.range.start);if(du&&h.push(s.substring(u,d)),f.newText.length&&h.push(f.newText),u=i.offsetAt(f.range.end)}return h.push(s.substr(u)),h.join("")}o(n,"applyEdits"),t.applyEdits=n})(Ky||(Ky={}));o(yz,"mergeSort");o(Wye,"computeLineOffsets");o(Hye,"isEOL");o(Yye,"getWellformedRange");o(brt,"getWellformedEdit")});var Xye,ia,Qy,vz=I(()=>{"use strict";(()=>{"use strict";var t={975:L=>{function S(N){if(typeof N!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(N))}o(S,"e");function A(N,M){for(var P,B="",F=0,G=-1,$=0,V=0;V<=N.length;++V){if(V2){var K=B.lastIndexOf("/");if(K!==B.length-1){K===-1?(B="",F=0):F=(B=B.slice(0,K)).length-1-B.lastIndexOf("/"),G=V,$=0;continue}}else if(B.length===2||B.length===1){B="",F=0,G=V,$=0;continue}}M&&(B.length>0?B+="/..":B="..",F=2)}else B.length>0?B+="/"+N.slice(G+1,V):B=N.slice(G+1,V),F=V-G-1;G=V,$=0}else P===46&&$!==-1?++$:$=-1}return B}o(A,"r");var _={resolve:o(function(){for(var N,M="",P=!1,B=arguments.length-1;B>=-1&&!P;B--){var F;B>=0?F=arguments[B]:(N===void 0&&(N=process.cwd()),F=N),S(F),F.length!==0&&(M=F+"/"+M,P=F.charCodeAt(0)===47)}return M=A(M,!P),P?M.length>0?"/"+M:"/":M.length>0?M:"."},"resolve"),normalize:o(function(N){if(S(N),N.length===0)return".";var M=N.charCodeAt(0)===47,P=N.charCodeAt(N.length-1)===47;return(N=A(N,!M)).length!==0||M||(N="."),N.length>0&&P&&(N+="/"),M?"/"+N:N},"normalize"),isAbsolute:o(function(N){return S(N),N.length>0&&N.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var N,M=0;M0&&(N===void 0?N=P:N+="/"+P)}return N===void 0?".":_.normalize(N)},"join"),relative:o(function(N,M){if(S(N),S(M),N===M||(N=_.resolve(N))===(M=_.resolve(M)))return"";for(var P=1;PV){if(M.charCodeAt(G+ee)===47)return M.slice(G+ee+1);if(ee===0)return M.slice(G+ee)}else F>V&&(N.charCodeAt(P+ee)===47?K=ee:ee===0&&(K=0));break}var H=N.charCodeAt(P+ee);if(H!==M.charCodeAt(G+ee))break;H===47&&(K=ee)}var he="";for(ee=P+K+1;ee<=B;++ee)ee!==B&&N.charCodeAt(ee)!==47||(he.length===0?he+="..":he+="/..");return he.length>0?he+M.slice(G+K):(G+=K,M.charCodeAt(G)===47&&++G,M.slice(G))},"relative"),_makeLong:o(function(N){return N},"_makeLong"),dirname:o(function(N){if(S(N),N.length===0)return".";for(var M=N.charCodeAt(0),P=M===47,B=-1,F=!0,G=N.length-1;G>=1;--G)if((M=N.charCodeAt(G))===47){if(!F){B=G;break}}else F=!1;return B===-1?P?"/":".":P&&B===1?"//":N.slice(0,B)},"dirname"),basename:o(function(N,M){if(M!==void 0&&typeof M!="string")throw new TypeError('"ext" argument must be a string');S(N);var P,B=0,F=-1,G=!0;if(M!==void 0&&M.length>0&&M.length<=N.length){if(M.length===N.length&&M===N)return"";var $=M.length-1,V=-1;for(P=N.length-1;P>=0;--P){var K=N.charCodeAt(P);if(K===47){if(!G){B=P+1;break}}else V===-1&&(G=!1,V=P+1),$>=0&&(K===M.charCodeAt($)?--$==-1&&(F=P):($=-1,F=V))}return B===F?F=V:F===-1&&(F=N.length),N.slice(B,F)}for(P=N.length-1;P>=0;--P)if(N.charCodeAt(P)===47){if(!G){B=P+1;break}}else F===-1&&(G=!1,F=P+1);return F===-1?"":N.slice(B,F)},"basename"),extname:o(function(N){S(N);for(var M=-1,P=0,B=-1,F=!0,G=0,$=N.length-1;$>=0;--$){var V=N.charCodeAt($);if(V!==47)B===-1&&(F=!1,B=$+1),V===46?M===-1?M=$:G!==1&&(G=1):M!==-1&&(G=-1);else if(!F){P=$+1;break}}return M===-1||B===-1||G===0||G===1&&M===B-1&&M===P+1?"":N.slice(M,B)},"extname"),format:o(function(N){if(N===null||typeof N!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof N);return(function(M,P){var B=P.dir||P.root,F=P.base||(P.name||"")+(P.ext||"");return B?B===P.root?B+F:B+"/"+F:F})(0,N)},"format"),parse:o(function(N){S(N);var M={root:"",dir:"",base:"",ext:"",name:""};if(N.length===0)return M;var P,B=N.charCodeAt(0),F=B===47;F?(M.root="/",P=1):P=0;for(var G=-1,$=0,V=-1,K=!0,ee=N.length-1,H=0;ee>=P;--ee)if((B=N.charCodeAt(ee))!==47)V===-1&&(K=!1,V=ee+1),B===46?G===-1?G=ee:H!==1&&(H=1):G!==-1&&(H=-1);else if(!K){$=ee+1;break}return G===-1||V===-1||H===0||H===1&&G===V-1&&G===$+1?V!==-1&&(M.base=M.name=$===0&&F?N.slice(1,V):N.slice($,V)):($===0&&F?(M.name=N.slice(1,G),M.base=N.slice(1,V)):(M.name=N.slice($,G),M.base=N.slice($,V)),M.ext=N.slice(G,V)),$>0?M.dir=N.slice(0,$-1):F&&(M.dir="/"),M},"parse"),sep:"/",delimiter:":",win32:null,posix:null};_.posix=_,L.exports=_}},e={};function r(L){var S=e[L];if(S!==void 0)return S.exports;var A=e[L]={exports:{}};return t[L](A,A.exports,r),A.exports}o(r,"r"),r.d=(L,S)=>{for(var A in S)r.o(S,A)&&!r.o(L,A)&&Object.defineProperty(L,A,{enumerable:!0,get:S[A]})},r.o=(L,S)=>Object.prototype.hasOwnProperty.call(L,S),r.r=L=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(L,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(L,"__esModule",{value:!0})};var n={};let i;r.r(n),r.d(n,{URI:o(()=>p,"URI"),Utils:o(()=>O,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,l=/^\/\//;function u(L,S){if(!L.scheme&&S)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${L.authority}", path: "${L.path}", query: "${L.query}", fragment: "${L.fragment}"}`);if(L.scheme&&!a.test(L.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(L.path){if(L.authority){if(!s.test(L.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(l.test(L.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(u,"a");let h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{static{o(this,"l")}static isUri(S){return S instanceof p||!!S&&typeof S.authority=="string"&&typeof S.fragment=="string"&&typeof S.path=="string"&&typeof S.query=="string"&&typeof S.scheme=="string"&&typeof S.fsPath=="string"&&typeof S.with=="function"&&typeof S.toString=="function"}scheme;authority;path;query;fragment;constructor(S,A,_,N,M,P=!1){typeof S=="object"?(this.scheme=S.scheme||h,this.authority=S.authority||h,this.path=S.path||h,this.query=S.query||h,this.fragment=S.fragment||h):(this.scheme=(function(B,F){return B||F?B:"file"})(S,P),this.authority=A||h,this.path=(function(B,F){switch(B){case"https":case"http":case"file":F?F[0]!==f&&(F=f+F):F=f}return F})(this.scheme,_||h),this.query=N||h,this.fragment=M||h,u(this,P))}get fsPath(){return b(this,!1)}with(S){if(!S)return this;let{scheme:A,authority:_,path:N,query:M,fragment:P}=S;return A===void 0?A=this.scheme:A===null&&(A=h),_===void 0?_=this.authority:_===null&&(_=h),N===void 0?N=this.path:N===null&&(N=h),M===void 0?M=this.query:M===null&&(M=h),P===void 0?P=this.fragment:P===null&&(P=h),A===this.scheme&&_===this.authority&&N===this.path&&M===this.query&&P===this.fragment?this:new g(A,_,N,M,P)}static parse(S,A=!1){let _=d.exec(S);return _?new g(_[2]||h,k(_[4]||h),k(_[5]||h),k(_[7]||h),k(_[9]||h),A):new g(h,h,h,h,h)}static file(S){let A=h;if(i&&(S=S.replace(/\\/g,f)),S[0]===f&&S[1]===f){let _=S.indexOf(f,2);_===-1?(A=S.substring(2),S=f):(A=S.substring(2,_),S=S.substring(_)||f)}return new g("file",A,S,h,h)}static from(S){let A=new g(S.scheme,S.authority,S.path,S.query,S.fragment);return u(A,!0),A}toString(S=!1){return T(this,S)}toJSON(){return this}static revive(S){if(S){if(S instanceof p)return S;{let A=new g(S);return A._formatted=S.external,A._fsPath=S._sep===m?S.fsPath:null,A}}return S}}let m=i?1:void 0;class g extends p{static{o(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(S=!1){return S?T(this,!0):(this._formatted||(this._formatted=T(this,!1)),this._formatted)}toJSON(){let S={$mid:1};return this._fsPath&&(S.fsPath=this._fsPath,S._sep=m),this._formatted&&(S.external=this._formatted),this.path&&(S.path=this.path),this.scheme&&(S.scheme=this.scheme),this.authority&&(S.authority=this.authority),this.query&&(S.query=this.query),this.fragment&&(S.fragment=this.fragment),S}}let y={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function v(L,S,A){let _,N=-1;for(let M=0;M=97&&P<=122||P>=65&&P<=90||P>=48&&P<=57||P===45||P===46||P===95||P===126||S&&P===47||A&&P===91||A&&P===93||A&&P===58)N!==-1&&(_+=encodeURIComponent(L.substring(N,M)),N=-1),_!==void 0&&(_+=L.charAt(M));else{_===void 0&&(_=L.substr(0,M));let B=y[P];B!==void 0?(N!==-1&&(_+=encodeURIComponent(L.substring(N,M)),N=-1),_+=B):N===-1&&(N=M)}}return N!==-1&&(_+=encodeURIComponent(L.substring(N))),_!==void 0?_:L}o(v,"m");function x(L){let S;for(let A=0;A1&&L.scheme==="file"?`//${L.authority}${L.path}`:L.path.charCodeAt(0)===47&&(L.path.charCodeAt(1)>=65&&L.path.charCodeAt(1)<=90||L.path.charCodeAt(1)>=97&&L.path.charCodeAt(1)<=122)&&L.path.charCodeAt(2)===58?S?L.path.substr(1):L.path[1].toLowerCase()+L.path.substr(2):L.path,i&&(A=A.replace(/\//g,"\\")),A}o(b,"v");function T(L,S){let A=S?x:v,_="",{scheme:N,authority:M,path:P,query:B,fragment:F}=L;if(N&&(_+=N,_+=":"),(M||N==="file")&&(_+=f,_+=f),M){let G=M.indexOf("@");if(G!==-1){let $=M.substr(0,G);M=M.substr(G+1),G=$.lastIndexOf(":"),G===-1?_+=A($,!1,!1):(_+=A($.substr(0,G),!1,!1),_+=":",_+=A($.substr(G+1),!1,!0)),_+="@"}M=M.toLowerCase(),G=M.lastIndexOf(":"),G===-1?_+=A(M,!1,!0):(_+=A(M.substr(0,G),!1,!0),_+=M.substr(G))}if(P){if(P.length>=3&&P.charCodeAt(0)===47&&P.charCodeAt(2)===58){let G=P.charCodeAt(1);G>=65&&G<=90&&(P=`/${String.fromCharCode(G+32)}:${P.substr(3)}`)}else if(P.length>=2&&P.charCodeAt(1)===58){let G=P.charCodeAt(0);G>=65&&G<=90&&(P=`${String.fromCharCode(G+32)}:${P.substr(2)}`)}_+=A(P,!0,!1)}return B&&(_+="?",_+=A(B,!1,!1)),F&&(_+="#",_+=S?F:v(F,!1,!1)),_}o(T,"b");function E(L){try{return decodeURIComponent(L)}catch{return L.length>3?L.substr(0,3)+E(L.substr(3)):L}}o(E,"C");let w=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function k(L){return L.match(w)?L.replace(w,(S=>E(S))):L}o(k,"w");var C=r(975);let D=C.posix||C,R="/";var O;(function(L){L.joinPath=function(S,...A){return S.with({path:D.join(S.path,...A)})},L.resolvePath=function(S,...A){let _=S.path,N=!1;_[0]!==R&&(_=R+_,N=!0);let M=D.resolve(_,...A);return N&&M[0]===R&&!S.authority&&(M=M.substring(1)),S.with({path:M})},L.dirname=function(S){if(S.path.length===0||S.path===R)return S;let A=D.dirname(S.path);return A.length===1&&A.charCodeAt(0)===46&&(A=""),S.with({path:A})},L.basename=function(S){return D.basename(S.path)},L.extname=function(S){return D.extname(S.path)}})(O||(O={})),Xye=n})();({URI:ia,Utils:Qy}=Xye)});var Ii,Zy,Sc=I(()=>{"use strict";vz();(function(t){t.basename=Qy.basename,t.dirname=Qy.dirname,t.extname=Qy.extname,t.joinPath=Qy.joinPath,t.resolvePath=Qy.resolvePath;let e=typeof process=="object"&&process?.platform==="win32";function r(s,l){return s?.toString()===l?.toString()}o(r,"equals"),t.equals=r;function n(s,l){let u=typeof s=="string"?ia.parse(s).path:s.path,h=typeof l=="string"?ia.parse(l).path:l.path,f=u.split("/").filter(y=>y.length>0),d=h.split("/").filter(y=>y.length>0);if(e){let y=/^[A-Z]:$/;if(f[0]&&y.test(f[0])&&(f[0]=f[0].toLowerCase()),d[0]&&y.test(d[0])&&(d[0]=d[0].toLowerCase()),f[0]!==d[0])return h.substring(1)}let p=0;for(;p({name:i.name,uri:Ii.joinPath(ia.parse(r),i.name).toString(),element:i.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let r=this.getNode(Ii.normalize(e),!1);return r?this.collectValues(r):[]}getNode(e,r){let n=e.split("/");e.charAt(e.length-1)==="/"&&n.pop();let i=this.root;for(let a of n){let s=i.children.get(a);if(!s)if(r)s={name:a,children:new Map,parent:i},i.children.set(a,s);else return;i=s}return i}collectValues(e){let r=[];e.element&&r.push(e.element);for(let n of e.children.values())r.push(...this.collectValues(n));return r}}});var Nr,sT,oT,Jy=I(()=>{"use strict";jye();Jy();Rl();Ms();Sc();(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(Nr||(Nr={}));sT=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=Ar.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??ia.parse(e.uri),Ar.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return Ar.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){let i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let a;if(n)a={parseResult:e,uri:r,state:Nr.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:Nr.Parsed,references:[],get textDocument(){return s()}}}return e.value.$document=a,a}async update(e,r){let n=e.parseResult.value.$cstNode?.root.fullText,i=this.textDocuments?.get(e.uri.toString()),a=i?i.getText():await this.fileSystemProvider.readFile(e.uri);if(i)Object.defineProperty(e,"textDocument",{value:i});else{let s=this.createTextDocumentGetter(e.uri,a);Object.defineProperty(e,"textDocument",{get:s})}return n!==a&&(e.parseResult=await this.parseAsync(e.uri,a,r),e.parseResult.value.$document=e),e.state=Nr.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=Ky.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},oT=class{static{o(this,"DefaultLangiumDocuments")}constructor(e){this.documentTrie=new Zy,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return Or(this.documentTrie.all())}addDocument(e){let r=e.uri.toString();if(this.documentTrie.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentTrie.insert(r,e)}getDocument(e){let r=e.toString();return this.documentTrie.find(r)}getDocuments(e){let r=e.toString();return this.documentTrie.findAll(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&this.documentBuilder().resetToState(n,Nr.Changed),n}deleteDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&(n.state=Nr.Changed,this.documentTrie.delete(r)),n}deleteDocuments(e){let r=e.toString(),n=this.documentTrie.findAll(r);for(let i of n)i.state=Nr.Changed;return this.documentTrie.delete(r),n}}});var Sm,lT,xz=I(()=>{"use strict";Rl();mc();ls();Nl();Jy();Sm=Symbol("RefResolving"),lT=class{static{o(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async link(e,r=Ar.CancellationToken.None){if(this.profiler?.isActive("linking")){let n=this.profiler.createTask("linking",this.languageId);n.start();try{for(let i of Is(e.parseResult.value))await Ti(r),Rd(i).forEach(a=>{let s=`${i.$type}:${a.property}`;n.startSubTask(s);try{this.doLink(a,e)}finally{n.stopSubTask(s)}})}finally{n.stop()}}else for(let n of Is(e.parseResult.value))await Ti(r),Rd(n).forEach(i=>this.doLink(i,e))}doLink(e,r){let n=e.reference;if("_ref"in n&&n._ref===void 0){n._ref=Sm;try{let i=this.getCandidate(e);if(W0(i))n._ref=i;else{n._nodeDescription=i;let a=this.loadAstNode(i);n._ref=a??this.createLinkingError(e,i)}}catch(i){console.error(`An error occurred while resolving reference to '${n.$refText}':`,i);let a=i.message??String(i);n._ref={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${a}`}}r.references.push(n)}else if("_items"in n&&n._items===void 0){n._items=Sm;try{let i=this.getCandidates(e),a=[];if(W0(i))n._linkingError=i;else for(let s of i){let l=this.loadAstNode(s);l&&a.push({ref:l,$nodeDescription:s})}n._items=a}catch(i){n._linkingError={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${i}`},n._items=[]}r.references.push(n)}}unlink(e){for(let r of e.references)"_ref"in r?(r._ref=void 0,delete r._nodeDescription):"_items"in r&&(r._items=void 0,delete r._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let n=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(i=>`${i.documentUri}#${i.path}`).toArray();return n.length>0?n:this.createLinkingError(e)}buildReference(e,r,n,i){let a=this,s={$refNode:n,$refText:i,_ref:void 0,get ref(){if(bi(this._ref))return this._ref;if(bB(this._nodeDescription)){let l=a.loadAstNode(this._nodeDescription);this._ref=l??a.createLinkingError({reference:s,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=Sm;let l=ny(e).$document,u=a.getLinkedNode({reference:s,container:e,property:r});if(u.error&&l&&l.state0))return this._linkingError=a.createLinkingError({reference:s,container:e,property:r})}};return s}throwCyclicReferenceError(e,r,n){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${n}')`)}getLinkedNode(e){try{let r=this.getCandidate(e);if(W0(r))return{error:r};let n=this.loadAstNode(r);return n?{node:n,descr:r}:{descr:r,error:this.createLinkingError(e,r)}}catch(r){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,r);let n=r.message??String(r);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${n}`}}}}loadAstNode(e){if(e.node)return e.node;let r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){let n=ny(e.container).$document;n&&n.state{"use strict";wc();o(Kye,"isNamed");cT=class{static{o(this,"DefaultNameProvider")}getName(e){if(Kye(e))return e.name}getNameNode(e){return x4(e.$cstNode,"name")}}});var uT,Tz=I(()=>{"use strict";wc();mc();ls();yc();Ms();Sc();Uo();uT=class{static{o(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator,this.documents=e.shared.workspace.LangiumDocuments,this.hasMultiReference=Is(e.Grammar).some(r=>bc(r)&&r.isMulti)}findDeclarations(e){if(e){let r=lF(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(ra(i)||Go(i))return pC(i);if(Array.isArray(i)){for(let a of i)if((ra(a)||Go(a))&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return pC(a)}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||UB(e,i)))return this.getSelfNodes(n)}}return[]}getSelfNodes(e){if(this.hasMultiReference){let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),n=this.getNodeFromReferenceDescription(r.head());if(n){for(let i of Rd(n))if(Go(i.reference)&&i.reference.items.some(a=>a.ref===e))return i.reference.items.map(a=>a.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;let r=this.documents.getDocument(e.sourceUri);if(r)return this.nodeLocator.getAstNode(r.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let r=this.findDeclarations(e),n=[];for(let i of r){let a=this.nameProvider.getNameNode(i)??i.$cstNode;a&&n.push(a)}return n}findReferences(e,r){let n=[];r.includeDeclaration&&n.push(...this.getSelfReferences(e));let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(a=>Ii.equals(a.sourceUri,r.documentUri))),n.push(...i),Or(n)}getSelfReferences(e){let r=this.getSelfNodes(e),n=[];for(let i of r){let a=this.nameProvider.getNameNode(i);if(a){let s=os(i),l=this.nodeLocator.getAstNodePath(i);n.push({sourceUri:s.uri,sourcePath:l,targetUri:s.uri,targetPath:l,segment:im(a),local:!0})}}return n}}});var us,Em,Hd=I(()=>{"use strict";Ms();us=class{static{o(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return ty.sum(Or(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let r=this.map.get(e);return r?Or(r):Dd}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return Or(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return Or(this.map.keys())}values(){return Or(this.map.values()).flat()}entriesGroupedByKey(){return Or(this.map.entries())}},Em=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}}});var hT,wz=I(()=>{"use strict";ls();Rl();Hd();Nl();hT=class{static{o(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,r=Ar.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,r)}async collectExportedSymbolsForNode(e,r,n=t4,i=Ar.CancellationToken.None){let a=[];this.addExportedSymbol(e,a,r);for(let s of n(e))await Ti(i),this.addExportedSymbol(s,a,r);return a}addExportedSymbol(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async collectLocalSymbols(e,r=Ar.CancellationToken.None){let n=e.parseResult.value,i=new us;for(let a of gc(n))await Ti(r),this.addLocalSymbol(a,e,i);return i}addLocalSymbol(e,r,n){let i=e.$container;if(i){let a=this.nameProvider.getName(e);a&&n.add(i,this.descriptions.createDescription(e,a,r))}}}});var ev,kz,fT,Trt,Sz=I(()=>{"use strict";Hd();Ms();ev=class{static{o(this,"StreamScope")}constructor(e,r,n){this.elements=e,this.outerScope=r,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.find(i=>i.name.toLowerCase()===r):this.elements.find(i=>i.name===e);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.filter(i=>i.name.toLowerCase()===r):this.elements.filter(i=>i.name===e);return(this.concatOuterScope||n.isEmpty())&&this.outerScope?n.concat(this.outerScope.getElements(e)):n}},kz=class{static{o(this,"MapScope")}constructor(e,r,n){this.elements=new Map,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let i of e){let a=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.set(a,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r),i=n?[n]:[];return(this.concatOuterScope||i.length>0)&&this.outerScope?Or(i).concat(this.outerScope.getElements(e)):Or(i)}getAllElements(){let e=Or(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},fT=class{static{o(this,"MultiMapScope")}constructor(e,r,n){this.elements=new us,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let i of e){let a=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.add(a,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r)[0];if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);return(this.concatOuterScope||n.length===0)&&this.outerScope?Or(n).concat(this.outerScope.getElements(e)):Or(n)}getAllElements(){let e=Or(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},Trt={getElement(){},getElements(){return Dd},getAllElements(){return Dd}}});var tv,dT,Cm,Q6,rv,Z6=I(()=>{"use strict";tv=class{static{o(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},dT=class extends tv{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},Cm=class extends tv{static{o(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},Q6=class extends Cm{static{o(this,"DocumentCache")}constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let a of i)this.clear(a)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let a=n.concat(i);for(let s of a)this.clear(s)}))}},rv=class extends dT{static{o(this,"WorkspaceCache")}constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var pT,Ez=I(()=>{"use strict";Sz();ls();Ms();Z6();pT=class{static{o(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new rv(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=os(e.container).localSymbols;if(i){let s=e.container;do i.has(s)&&r.push(i.getStream(s).filter(l=>this.reflection.isSubtype(l.type,n))),s=s.$container;while(s)}let a=this.getGlobalScope(n,e);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(e,r,n){return new ev(Or(e),r,n)}createScopeForNodes(e,r,n){let i=Or(e).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new ev(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new fT(this.indexManager.allElements(e)))}}});function Cz(t){return typeof t.$comment=="string"}function Qye(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var mT,J6=I(()=>{"use strict";vz();mc();ls();wc();o(Cz,"isAstNodeWithComment");o(Qye,"isIntermediateReference");mT=class{static{o(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r?.replacer,a=o((l,u)=>this.replacer(l,u,n),"defaultReplacer"),s=i?(l,u)=>i(l,u,a):a;try{return this.currentDocument=os(e),JSON.stringify(e,s,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){if(!this.ignoreProperties.has(e))if(ra(r)){let u=r.ref,h=n?r.$refText:void 0;if(u){let f=os(u),d="";this.currentDocument&&this.currentDocument!==f&&(l?d=l(f.uri,u):d=f.uri.toString());let p=this.astNodeLocator.getAstNodePath(u);return{$ref:`${d}#${p}`,$refText:h}}else return{$error:r.error?.message??"Could not resolve reference",$refText:h}}else if(Go(r)){let u=n?r.$refText:void 0,h=[];for(let f of r.items){let d=f.ref,p=os(f.ref),m="";this.currentDocument&&this.currentDocument!==p&&(l?m=l(p.uri,d):m=p.uri.toString());let g=this.astNodeLocator.getAstNodePath(d);h.push(`${m}#${g}`)}return{$refs:h,$refText:u}}else if(bi(r)){let u;if(a&&(u=this.addAstNodeRegionWithAssignmentsTo({...r}),(!e||r.$document)&&u?.$textRegion&&(u.$textRegion.documentURI=this.currentDocument?.uri.toString())),i&&!e&&(u??(u={...r}),u.$sourceText=r.$cstNode?.text),s){u??(u={...r});let h=this.commentProvider.getComment(r);h&&(u.$comment=h.replace(/\r/g,""))}return u??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let s=iF(e.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),e}}linkNode(e,r,n,i,a,s){for(let[u,h]of Object.entries(e))if(Array.isArray(h))for(let f=0;f{"use strict";Sc();gT=class{static{o(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let r=e.LanguageMetaData;for(let n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);if(r.fileNames)for(let n of r.fileNames)this.fileNameMap.has(n)&&console.warn(`The file name ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileNameMap.set(n,e);this.languageIdMap.set(r.languageId,e)}getServices(e){if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let r=this.textDocuments?.get(e)?.languageId;if(r!==void 0){let s=this.languageIdMap.get(r);if(s)return s}let n=Ii.extname(e),i=Ii.basename(e),a=this.fileNameMap.get(i)??this.fileExtensionMap.get(n);if(!a)throw r?new Error(`The service registry contains no services for the extension '${n}' for language '${r}'.`):new Error(`The service registry contains no services for the extension '${n}'.`);return a}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}}});function Am(t){return{code:t}}var eA,yT,tA=I(()=>{"use strict";Yo();Hd();Nl();Ms();o(Am,"diagnosticData");(function(t){t.defaults=["fast","slow","built-in"],t.all=t.defaults})(eA||(eA={}));yT=class{static{o(this,"ValidationRegistry")}constructor(e){this.entries=new us,this.knownCategories=new Set(eA.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(n);for(let[i,a]of Object.entries(e)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,r),category:n};this.addEntry(i,l)}else _u(s)}}wrapValidationException(e,r){return async(n,i,a)=>{await this.handleException(()=>e.call(r,n,i,a),"An error occurred during validation",i,n)}}async handleException(e,r,n,i){try{await e()}catch(a){if(Iu(a))throw a;console.error(`${r}:`,a),a instanceof Error&&a.stack&&console.error(a.stack);let s=a instanceof Error?a.message:String(a);n("error",`${r}: ${s}`,{node:i})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=Or(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return async(i,a,s,l)=>{await this.handleException(()=>e.call(n,i,a,s,l),r,a,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}}});function Jye(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=x4(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=sF(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function rA(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function eve(t){switch(t){case"error":return Am(Ml.LexingError);case"warning":return Am(Ml.LexingWarning);case"info":return Am(Ml.LexingInfo);case"hint":return Am(Ml.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Zye,vT,Ml,_z=I(()=>{"use strict";Rl();wc();ls();yc();Nl();tA();Zye=Object.freeze({validateNode:!0,validateChildren:!0}),vT=class{static{o(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async validateDocument(e,r={},n=Ar.CancellationToken.None){let i=e.parseResult,a=[];if(await Ti(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(s=>s.data?.code===Ml.LexingError)||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(s=>s.data?.code===Ml.ParsingError))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(s=>s.data?.code===Ml.LinkingError))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(Iu(s))throw s;console.error("An error occurred during validation:",s)}return await Ti(n),a}processLexingErrors(e,r,n){let i=[...e.lexerErrors,...e.lexerReport?.diagnostics??[]];for(let a of i){let s=a.severity??"error",l={severity:rA(s),range:{start:{line:a.line-1,character:a.column-1},end:{line:a.line-1,character:a.column+a.length-1}},message:a.message,data:eve(s),source:this.getSource()};r.push(l)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let s=i.previousToken;if(isNaN(s.startOffset)){let l={line:0,character:0};a={start:l,end:l}}else{let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}}}else a=fy(i.token);if(a){let s={severity:rA("error"),range:a,message:i.message,data:Am(Ml.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(e,r,n){for(let i of e.references){let a=i.error;if(a){let s={node:a.info.container,range:i.$refNode?.range,property:a.info.property,index:a.info.index,data:{code:Ml.LinkingError,containerType:a.info.container.$type,property:a.info.property,refText:a.info.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(e,r,n=Ar.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await this.validateAstBefore(e,r,a,n),await this.validateAstNodes(e,r,a,n),await this.validateAstAfter(e,r,a,n),i}async validateAstBefore(e,r,n,i=Ar.CancellationToken.None){let a=this.validationRegistry.checksBefore;for(let s of a)await Ti(i),await s(e,n,r.categories??[],i)}async validateAstNodes(e,r,n,i=Ar.CancellationToken.None){if(this.profiler?.isActive("validating")){let a=this.profiler.createTask("validating",this.languageId);a.start();try{let s=Is(e).iterator();for(let l of s){a.startSubTask(l.$type);let u=this.validateSingleNodeOptions(l,r);if(u.validateNode)try{let h=this.validationRegistry.getChecks(l.$type,r.categories);for(let f of h)await f(l,n,i)}finally{a.stopSubTask(l.$type)}u.validateChildren||s.prune()}}finally{a.stop()}}else{let a=Is(e).iterator();for(let s of a){await Ti(i);let l=this.validateSingleNodeOptions(s,r);if(l.validateNode){let u=this.validationRegistry.getChecks(s.$type,r.categories);for(let h of u)await h(s,n,i)}l.validateChildren||a.prune()}}}validateSingleNodeOptions(e,r){return Zye}async validateAstAfter(e,r,n,i=Ar.CancellationToken.None){let a=this.validationRegistry.checksAfter;for(let s of a)await Ti(i),await s(e,n,r.categories??[],i)}toDiagnostic(e,r,n){return{message:r,range:Jye(n),severity:rA(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(Jye,"getDiagnosticRange");o(rA,"toDiagnosticSeverity");o(eve,"toDiagnosticData");(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(Ml||(Ml={}))});var xT,bT,Dz=I(()=>{"use strict";Rl();mc();ls();yc();Nl();Sc();xT=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??os(e);r??(r=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${a} has no name.`);let s,l=o(()=>s??(s=im(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return l()},selectionSegment:im(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},bT=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=Ar.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of Is(i))await Ti(r),Rd(a).forEach(s=>{s.reference.error||n.push(...this.createInfoDescriptions(s))});return n}createInfoDescriptions(e){let r=e.reference;if(r.error||!r.$refNode)return[];let n=[];ra(r)&&r.$nodeDescription?n=[r.$nodeDescription]:Go(r)&&(n=r.items.map(u=>u.$nodeDescription).filter(u=>u!==void 0));let i=os(e.container).uri,a=this.nodeLocator.getAstNodePath(e.container),s=[],l=im(r.$refNode);for(let u of n)s.push({sourceUri:i,sourcePath:a,targetUri:u.documentUri,targetPath:u.path,segment:l,local:Ii.equals(u.documentUri,i)});return s}}});var TT,Rz=I(()=>{"use strict";TT=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,a)=>{if(!i||a.length===0)return i;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1));return i[l]?.[u]}return i[a]},e)}}});var ui={};var nA=I(()=>{"use strict";$r(ui,Aa(km(),1))});var wT,Lz=I(()=>{"use strict";nA();Nl();wT=class{static{o(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new zs,this.onConfigurationSectionUpdateEmitter=new ui.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}async initialized(e){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(e){typeof e.settings!="object"||e.settings===null||Object.entries(e.settings).forEach(([r,n])=>{this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}});var rG=Jt(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.Message=ir.NotificationType9=ir.NotificationType8=ir.NotificationType7=ir.NotificationType6=ir.NotificationType5=ir.NotificationType4=ir.NotificationType3=ir.NotificationType2=ir.NotificationType1=ir.NotificationType0=ir.NotificationType=ir.RequestType9=ir.RequestType8=ir.RequestType7=ir.RequestType6=ir.RequestType5=ir.RequestType4=ir.RequestType3=ir.RequestType2=ir.RequestType1=ir.RequestType=ir.RequestType0=ir.AbstractMessageSignature=ir.ParameterStructures=ir.ResponseError=ir.ErrorCodes=void 0;var _m=Yy(),Nz;(function(t){t.ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3})(Nz||(ir.ErrorCodes=Nz={}));var Mz=class t extends Error{static{o(this,"ResponseError")}constructor(e,r,n){super(r),this.code=_m.number(e)?e:Nz.UnknownErrorCode,this.data=n,Object.setPrototypeOf(this,t.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};ir.ResponseError=Mz;var bo=class t{static{o(this,"ParameterStructures")}constructor(e){this.kind=e}static is(e){return e===t.auto||e===t.byName||e===t.byPosition}toString(){return this.kind}};ir.ParameterStructures=bo;bo.auto=new bo("auto");bo.byPosition=new bo("byPosition");bo.byName=new bo("byName");var Jn=class{static{o(this,"AbstractMessageSignature")}constructor(e,r){this.method=e,this.numberOfParams=r}get parameterStructures(){return bo.auto}};ir.AbstractMessageSignature=Jn;var Iz=class extends Jn{static{o(this,"RequestType0")}constructor(e){super(e,0)}};ir.RequestType0=Iz;var Oz=class extends Jn{static{o(this,"RequestType")}constructor(e,r=bo.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};ir.RequestType=Oz;var Pz=class extends Jn{static{o(this,"RequestType1")}constructor(e,r=bo.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};ir.RequestType1=Pz;var Bz=class extends Jn{static{o(this,"RequestType2")}constructor(e){super(e,2)}};ir.RequestType2=Bz;var Fz=class extends Jn{static{o(this,"RequestType3")}constructor(e){super(e,3)}};ir.RequestType3=Fz;var $z=class extends Jn{static{o(this,"RequestType4")}constructor(e){super(e,4)}};ir.RequestType4=$z;var zz=class extends Jn{static{o(this,"RequestType5")}constructor(e){super(e,5)}};ir.RequestType5=zz;var Gz=class extends Jn{static{o(this,"RequestType6")}constructor(e){super(e,6)}};ir.RequestType6=Gz;var Vz=class extends Jn{static{o(this,"RequestType7")}constructor(e){super(e,7)}};ir.RequestType7=Vz;var qz=class extends Jn{static{o(this,"RequestType8")}constructor(e){super(e,8)}};ir.RequestType8=qz;var Uz=class extends Jn{static{o(this,"RequestType9")}constructor(e){super(e,9)}};ir.RequestType9=Uz;var Wz=class extends Jn{static{o(this,"NotificationType")}constructor(e,r=bo.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};ir.NotificationType=Wz;var Hz=class extends Jn{static{o(this,"NotificationType0")}constructor(e){super(e,0)}};ir.NotificationType0=Hz;var Yz=class extends Jn{static{o(this,"NotificationType1")}constructor(e,r=bo.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};ir.NotificationType1=Yz;var jz=class extends Jn{static{o(this,"NotificationType2")}constructor(e){super(e,2)}};ir.NotificationType2=jz;var Xz=class extends Jn{static{o(this,"NotificationType3")}constructor(e){super(e,3)}};ir.NotificationType3=Xz;var Kz=class extends Jn{static{o(this,"NotificationType4")}constructor(e){super(e,4)}};ir.NotificationType4=Kz;var Qz=class extends Jn{static{o(this,"NotificationType5")}constructor(e){super(e,5)}};ir.NotificationType5=Qz;var Zz=class extends Jn{static{o(this,"NotificationType6")}constructor(e){super(e,6)}};ir.NotificationType6=Zz;var Jz=class extends Jn{static{o(this,"NotificationType7")}constructor(e){super(e,7)}};ir.NotificationType7=Jz;var eG=class extends Jn{static{o(this,"NotificationType8")}constructor(e){super(e,8)}};ir.NotificationType8=eG;var tG=class extends Jn{static{o(this,"NotificationType9")}constructor(e){super(e,9)}};ir.NotificationType9=tG;var tve;(function(t){function e(i){let a=i;return a&&_m.string(a.method)&&(_m.string(a.id)||_m.number(a.id))}o(e,"isRequest"),t.isRequest=e;function r(i){let a=i;return a&&_m.string(a.method)&&i.id===void 0}o(r,"isNotification"),t.isNotification=r;function n(i){let a=i;return a&&(a.result!==void 0||!!a.error)&&(_m.string(a.id)||_m.number(a.id)||a.id===null)}o(n,"isResponse"),t.isResponse=n})(tve||(ir.Message=tve={}))});var iG=Jt(Yd=>{"use strict";var rve;Object.defineProperty(Yd,"__esModule",{value:!0});Yd.LRUCache=Yd.LinkedMap=Yd.Touch=void 0;var hs;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(hs||(Yd.Touch=hs={}));var iA=class{static{o(this,"LinkedMap")}constructor(){this[rve]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,r=hs.None){let n=this._map.get(e);if(n)return r!==hs.None&&this.touch(n,r),n.value}set(e,r,n=hs.None){let i=this._map.get(e);if(i)i.value=r,n!==hs.None&&this.touch(i,n);else{switch(i={key:e,value:r,next:void 0,previous:void 0},n){case hs.None:this.addItemLast(i);break;case hs.First:this.addItemFirst(i);break;case hs.Last:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let r=this._map.get(e);if(r)return this._map.delete(e),this.removeItem(r),this._size--,r.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,r){let n=this._state,i=this._head;for(;i;){if(r?e.bind(r)(i.value,i.key,this):e(i.value,i.key,this),this._state!==n)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:o(()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:r.key,done:!1};return r=r.next,i}else return{value:void 0,done:!0}},"next")};return n}values(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:o(()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:r.value,done:!1};return r=r.next,i}else return{value:void 0,done:!0}},"next")};return n}entries(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:o(()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:[r.key,r.value],done:!1};return r=r.next,i}else return{value:void 0,done:!0}},"next")};return n}[(rve=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let r=this._head,n=this.size;for(;r&&n>e;)this._map.delete(r.key),r=r.next,n--;this._head=r,this._size=n,r&&(r.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let r=e.next,n=e.previous;if(!r||!n)throw new Error("Invalid list");r.previous=n,n.next=r}e.next=void 0,e.previous=void 0,this._state++}touch(e,r){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(r!==hs.First&&r!==hs.Last)){if(r===hs.First){if(e===this._head)return;let n=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(n.previous=i,i.next=n),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(r===hs.Last){if(e===this._tail)return;let n=e.next,i=e.previous;e===this._head?(n.previous=void 0,this._head=n):(n.previous=i,i.next=n),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((r,n)=>{e.push([n,r])}),e}fromJSON(e){this.clear();for(let[r,n]of e)this.set(r,n)}};Yd.LinkedMap=iA;var nG=class extends iA{static{o(this,"LRUCache")}constructor(e,r=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,r),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,r=hs.AsNew){return super.get(e,r)}peek(e){return super.get(e,hs.None)}set(e,r){return super.set(e,r,hs.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};Yd.LRUCache=nG});var ive=Jt(aA=>{"use strict";Object.defineProperty(aA,"__esModule",{value:!0});aA.Disposable=void 0;var nve;(function(t){function e(r){return{dispose:r}}o(e,"create"),t.create=e})(nve||(aA.Disposable=nve={}))});var ave=Jt(nv=>{"use strict";Object.defineProperty(nv,"__esModule",{value:!0});nv.SharedArrayReceiverStrategy=nv.SharedArraySenderStrategy=void 0;var wrt=aT(),kT;(function(t){t.Continue=0,t.Cancelled=1})(kT||(kT={}));var aG=class{static{o(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let r=new SharedArrayBuffer(4),n=new Int32Array(r,0,1);n[0]=kT.Continue,this.buffers.set(e.id,r),e.$cancellationData=r}async sendCancellation(e,r){let n=this.buffers.get(r);if(n===void 0)return;let i=new Int32Array(n,0,1);Atomics.store(i,0,kT.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};nv.SharedArraySenderStrategy=aG;var sG=class{static{o(this,"SharedArrayBufferCancellationToken")}constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===kT.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},oG=class{static{o(this,"SharedArrayBufferCancellationTokenSource")}constructor(e){this.token=new sG(e)}cancel(){}dispose(){}},lG=class{static{o(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(e){let r=e.$cancellationData;return r===void 0?new wrt.CancellationTokenSource:new oG(r)}};nv.SharedArrayReceiverStrategy=lG});var uG=Jt(sA=>{"use strict";Object.defineProperty(sA,"__esModule",{value:!0});sA.Semaphore=void 0;var krt=Wd(),cG=class{static{o(this,"Semaphore")}constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((r,n)=>{this._waiting.push({thunk:e,resolve:r,reject:n}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,krt.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{let r=e.thunk();r instanceof Promise?r.then(n=>{this._active--,e.resolve(n),this.runNext()},n=>{this._active--,e.reject(n),this.runNext()}):(this._active--,e.resolve(r),this.runNext())}catch(r){this._active--,e.reject(r),this.runNext()}}};sA.Semaphore=cG});var ove=Jt(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.ReadableStreamMessageReader=jd.AbstractMessageReader=jd.MessageReader=void 0;var fG=Wd(),iv=Yy(),hG=km(),Srt=uG(),sve;(function(t){function e(r){let n=r;return n&&iv.func(n.listen)&&iv.func(n.dispose)&&iv.func(n.onError)&&iv.func(n.onClose)&&iv.func(n.onPartialMessage)}o(e,"is"),t.is=e})(sve||(jd.MessageReader=sve={}));var oA=class{static{o(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new hG.Emitter,this.closeEmitter=new hG.Emitter,this.partialMessageEmitter=new hG.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:new Error(`Reader received error. Reason: ${iv.string(e.message)?e.message:"unknown"}`)}};jd.AbstractMessageReader=oA;var dG;(function(t){function e(r){let n,i,a,s=new Map,l,u=new Map;if(r===void 0||typeof r=="string")n=r??"utf-8";else{if(n=r.charset??"utf-8",r.contentDecoder!==void 0&&(a=r.contentDecoder,s.set(a.name,a)),r.contentDecoders!==void 0)for(let h of r.contentDecoders)s.set(h.name,h);if(r.contentTypeDecoder!==void 0&&(l=r.contentTypeDecoder,u.set(l.name,l)),r.contentTypeDecoders!==void 0)for(let h of r.contentTypeDecoders)u.set(h.name,h)}return l===void 0&&(l=(0,fG.default)().applicationJson.decoder,u.set(l.name,l)),{charset:n,contentDecoder:a,contentDecoders:s,contentTypeDecoder:l,contentTypeDecoders:u}}o(e,"fromOptions"),t.fromOptions=e})(dG||(dG={}));var pG=class extends oA{static{o(this,"ReadableStreamMessageReader")}constructor(e,r){super(),this.readable=e,this.options=dG.fromOptions(r),this.buffer=(0,fG.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new Srt.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;let r=this.readable.onData(n=>{this.onData(n)});return this.readable.onError(n=>this.fireError(n)),this.readable.onClose(()=>this.fireClose()),r}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){let n=this.buffer.tryReadHeaders(!0);if(!n)return;let i=n.get("content-length");if(!i){this.fireError(new Error(`Header must provide a Content-Length property. +${JSON.stringify(Object.fromEntries(n))}`));return}let a=parseInt(i);if(isNaN(a)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));return}this.nextMessageLength=a}let r=this.buffer.tryReadBody(this.nextMessageLength);if(r===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let n=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(r):r,i=await this.options.contentTypeDecoder.decode(n,this.options);this.callback(i)}).catch(n=>{this.fireError(n)})}}catch(r){this.fireError(r)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,fG.default)().timer.setTimeout((e,r)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:r}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};jd.ReadableStreamMessageReader=pG});var fve=Jt(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.WriteableStreamMessageWriter=Xd.AbstractMessageWriter=Xd.MessageWriter=void 0;var lve=Wd(),ST=Yy(),Ert=uG(),cve=km(),Crt="Content-Length: ",uve=`\r +`,hve;(function(t){function e(r){let n=r;return n&&ST.func(n.dispose)&&ST.func(n.onClose)&&ST.func(n.onError)&&ST.func(n.write)}o(e,"is"),t.is=e})(hve||(Xd.MessageWriter=hve={}));var lA=class{static{o(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new cve.Emitter,this.closeEmitter=new cve.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,r,n){this.errorEmitter.fire([this.asError(e),r,n])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${ST.string(e.message)?e.message:"unknown"}`)}};Xd.AbstractMessageWriter=lA;var mG;(function(t){function e(r){return r===void 0||typeof r=="string"?{charset:r??"utf-8",contentTypeEncoder:(0,lve.default)().applicationJson.encoder}:{charset:r.charset??"utf-8",contentEncoder:r.contentEncoder,contentTypeEncoder:r.contentTypeEncoder??(0,lve.default)().applicationJson.encoder}}o(e,"fromOptions"),t.fromOptions=e})(mG||(mG={}));var gG=class extends lA{static{o(this,"WriteableStreamMessageWriter")}constructor(e,r){super(),this.writable=e,this.options=mG.fromOptions(r),this.errorCount=0,this.writeSemaphore=new Ert.Semaphore(1),this.writable.onError(n=>this.fireError(n)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(n=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(n):n).then(n=>{let i=[];return i.push(Crt,n.byteLength.toString(),uve),i.push(uve),this.doWrite(e,i,n)},n=>{throw this.fireError(n),n}))}async doWrite(e,r,n){try{return await this.writable.write(r.join(""),"ascii"),this.writable.write(n)}catch(i){return this.handleError(i,e),Promise.reject(i)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){this.writable.end()}};Xd.WriteableStreamMessageWriter=gG});var dve=Jt(cA=>{"use strict";Object.defineProperty(cA,"__esModule",{value:!0});cA.AbstractMessageBuffer=void 0;var Art=13,_rt=10,Drt=`\r +`,yG=class{static{o(this,"AbstractMessageBuffer")}constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let r=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(r),this._totalLength+=r.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let r=0,n=0,i=0,a=0;e:for(;nthis._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let a=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(a)}if(this._chunks[0].byteLength>e){let a=this._chunks[0],s=this.asNative(a,e);return this._chunks[0]=a.slice(e),this._totalLength-=e,s}let r=this.allocNative(e),n=0,i=0;for(;e>0;){let a=this._chunks[i];if(a.byteLength>e){let s=a.slice(0,e);r.set(s,n),n+=e,this._chunks[i]=a.slice(e),this._totalLength-=e,e-=e}else r.set(a,n),n+=a.byteLength,this._chunks.shift(),this._totalLength-=a.byteLength,e-=a.byteLength}return r}};cA.AbstractMessageBuffer=yG});var vve=Jt(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.createMessageConnection=Cr.ConnectionOptions=Cr.MessageStrategy=Cr.CancellationStrategy=Cr.CancellationSenderStrategy=Cr.CancellationReceiverStrategy=Cr.RequestCancellationReceiverStrategy=Cr.IdCancellationReceiverStrategy=Cr.ConnectionStrategy=Cr.ConnectionError=Cr.ConnectionErrors=Cr.LogTraceNotification=Cr.SetTraceNotification=Cr.TraceFormat=Cr.TraceValues=Cr.Trace=Cr.NullLogger=Cr.ProgressType=Cr.ProgressToken=void 0;var pve=Wd(),wi=Yy(),yr=rG(),mve=iG(),ET=km(),vG=aT(),_T;(function(t){t.type=new yr.NotificationType("$/cancelRequest")})(_T||(_T={}));var xG;(function(t){function e(r){return typeof r=="string"||typeof r=="number"}o(e,"is"),t.is=e})(xG||(Cr.ProgressToken=xG={}));var CT;(function(t){t.type=new yr.NotificationType("$/progress")})(CT||(CT={}));var bG=class{static{o(this,"ProgressType")}constructor(){}};Cr.ProgressType=bG;var TG;(function(t){function e(r){return wi.func(r)}o(e,"is"),t.is=e})(TG||(TG={}));Cr.NullLogger=Object.freeze({error:o(()=>{},"error"),warn:o(()=>{},"warn"),info:o(()=>{},"info"),log:o(()=>{},"log")});var pn;(function(t){t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose"})(pn||(Cr.Trace=pn={}));var gve;(function(t){t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose"})(gve||(Cr.TraceValues=gve={}));(function(t){function e(n){if(!wi.string(n))return t.Off;switch(n=n.toLowerCase(),n){case"off":return t.Off;case"messages":return t.Messages;case"compact":return t.Compact;case"verbose":return t.Verbose;default:return t.Off}}o(e,"fromString"),t.fromString=e;function r(n){switch(n){case t.Off:return"off";case t.Messages:return"messages";case t.Compact:return"compact";case t.Verbose:return"verbose";default:return"off"}}o(r,"toString"),t.toString=r})(pn||(Cr.Trace=pn={}));var jo;(function(t){t.Text="text",t.JSON="json"})(jo||(Cr.TraceFormat=jo={}));(function(t){function e(r){return wi.string(r)?(r=r.toLowerCase(),r==="json"?t.JSON:t.Text):t.Text}o(e,"fromString"),t.fromString=e})(jo||(Cr.TraceFormat=jo={}));var wG;(function(t){t.type=new yr.NotificationType("$/setTrace")})(wG||(Cr.SetTraceNotification=wG={}));var uA;(function(t){t.type=new yr.NotificationType("$/logTrace")})(uA||(Cr.LogTraceNotification=uA={}));var AT;(function(t){t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening"})(AT||(Cr.ConnectionErrors=AT={}));var av=class t extends Error{static{o(this,"ConnectionError")}constructor(e,r){super(r),this.code=e,Object.setPrototypeOf(this,t.prototype)}};Cr.ConnectionError=av;var kG;(function(t){function e(r){let n=r;return n&&wi.func(n.cancelUndispatched)}o(e,"is"),t.is=e})(kG||(Cr.ConnectionStrategy=kG={}));var hA;(function(t){function e(r){let n=r;return n&&(n.kind===void 0||n.kind==="id")&&wi.func(n.createCancellationTokenSource)&&(n.dispose===void 0||wi.func(n.dispose))}o(e,"is"),t.is=e})(hA||(Cr.IdCancellationReceiverStrategy=hA={}));var SG;(function(t){function e(r){let n=r;return n&&n.kind==="request"&&wi.func(n.createCancellationTokenSource)&&(n.dispose===void 0||wi.func(n.dispose))}o(e,"is"),t.is=e})(SG||(Cr.RequestCancellationReceiverStrategy=SG={}));var fA;(function(t){t.Message=Object.freeze({createCancellationTokenSource(r){return new vG.CancellationTokenSource}});function e(r){return hA.is(r)||SG.is(r)}o(e,"is"),t.is=e})(fA||(Cr.CancellationReceiverStrategy=fA={}));var dA;(function(t){t.Message=Object.freeze({sendCancellation(r,n){return r.sendNotification(_T.type,{id:n})},cleanup(r){}});function e(r){let n=r;return n&&wi.func(n.sendCancellation)&&wi.func(n.cleanup)}o(e,"is"),t.is=e})(dA||(Cr.CancellationSenderStrategy=dA={}));var pA;(function(t){t.Message=Object.freeze({receiver:fA.Message,sender:dA.Message});function e(r){let n=r;return n&&fA.is(n.receiver)&&dA.is(n.sender)}o(e,"is"),t.is=e})(pA||(Cr.CancellationStrategy=pA={}));var mA;(function(t){function e(r){let n=r;return n&&wi.func(n.handleMessage)}o(e,"is"),t.is=e})(mA||(Cr.MessageStrategy=mA={}));var yve;(function(t){function e(r){let n=r;return n&&(pA.is(n.cancellationStrategy)||kG.is(n.connectionStrategy)||mA.is(n.messageStrategy))}o(e,"is"),t.is=e})(yve||(Cr.ConnectionOptions=yve={}));var Ec;(function(t){t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed"})(Ec||(Ec={}));function Rrt(t,e,r,n){let i=r!==void 0?r:Cr.NullLogger,a=0,s=0,l=0,u="2.0",h,f=new Map,d,p=new Map,m=new Map,g,y=new mve.LinkedMap,v=new Map,x=new Set,b=new Map,T=pn.Off,E=jo.Text,w,k=Ec.New,C=new ET.Emitter,D=new ET.Emitter,R=new ET.Emitter,O=new ET.Emitter,L=new ET.Emitter,S=n&&n.cancellationStrategy?n.cancellationStrategy:pA.Message;function A(Y){if(Y===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+Y.toString()}o(A,"createRequestQueueKey");function _(Y){return Y===null?"res-unknown-"+(++l).toString():"res-"+Y.toString()}o(_,"createResponseQueueKey");function N(){return"not-"+(++s).toString()}o(N,"createNotificationQueueKey");function M(Y,ce){yr.Message.isRequest(ce)?Y.set(A(ce.id),ce):yr.Message.isResponse(ce)?Y.set(_(ce.id),ce):Y.set(N(),ce)}o(M,"addMessageToQueue");function P(Y){}o(P,"cancelUndispatched");function B(){return k===Ec.Listening}o(B,"isListening");function F(){return k===Ec.Closed}o(F,"isClosed");function G(){return k===Ec.Disposed}o(G,"isDisposed");function $(){(k===Ec.New||k===Ec.Listening)&&(k=Ec.Closed,D.fire(void 0))}o($,"closeHandler");function V(Y){C.fire([Y,void 0,void 0])}o(V,"readErrorHandler");function K(Y){C.fire(Y)}o(K,"writeErrorHandler"),t.onClose($),t.onError(V),e.onClose($),e.onError(K);function ee(){g||y.size===0||(g=(0,pve.default)().timer.setImmediate(()=>{g=void 0,he()}))}o(ee,"triggerMessageQueue");function H(Y){yr.Message.isRequest(Y)?de(Y):yr.Message.isNotification(Y)?ne(Y):yr.Message.isResponse(Y)?re(Y):te(Y)}o(H,"handleMessage");function he(){if(y.size===0)return;let Y=y.shift();try{let ce=n?.messageStrategy;mA.is(ce)?ce.handleMessage(Y,H):H(Y)}finally{ee()}}o(he,"processMessageQueue");let Z=o(Y=>{try{if(yr.Message.isNotification(Y)&&Y.method===_T.type.method){let ce=Y.params.id,U=A(ce),ue=y.get(U);if(yr.Message.isRequest(ue)){let se=n?.connectionStrategy,oe=se&&se.cancelUndispatched?se.cancelUndispatched(ue,P):void 0;if(oe&&(oe.error!==void 0||oe.result!==void 0)){y.delete(U),b.delete(ce),oe.id=ue.id,ge(oe,Y.method,Date.now()),e.write(oe).catch(()=>i.error("Sending response for canceled message failed."));return}}let z=b.get(ce);if(z!==void 0){z.cancel(),Te(Y);return}else x.add(ce)}M(y,Y)}finally{ee()}},"callback");function de(Y){if(G())return;function ce(pe,me,De){let Ce={jsonrpc:u,id:Y.id};pe instanceof yr.ResponseError?Ce.error=pe.toJson():Ce.result=pe===void 0?null:pe,ge(Ce,me,De),e.write(Ce).catch(()=>i.error("Sending response failed."))}o(ce,"reply");function U(pe,me,De){let Ce={jsonrpc:u,id:Y.id,error:pe.toJson()};ge(Ce,me,De),e.write(Ce).catch(()=>i.error("Sending response failed."))}o(U,"replyError");function ue(pe,me,De){pe===void 0&&(pe=null);let Ce={jsonrpc:u,id:Y.id,result:pe};ge(Ce,me,De),e.write(Ce).catch(()=>i.error("Sending response failed."))}o(ue,"replySuccess"),ie(Y);let z=f.get(Y.method),se,oe;z&&(se=z.type,oe=z.handler);let be=Date.now();if(oe||h){let pe=Y.id??String(Date.now()),me=hA.is(S.receiver)?S.receiver.createCancellationTokenSource(pe):S.receiver.createCancellationTokenSource(Y);Y.id!==null&&x.has(Y.id)&&me.cancel(),Y.id!==null&&b.set(pe,me);try{let De;if(oe)if(Y.params===void 0){if(se!==void 0&&se.numberOfParams!==0){U(new yr.ResponseError(yr.ErrorCodes.InvalidParams,`Request ${Y.method} defines ${se.numberOfParams} params but received none.`),Y.method,be);return}De=oe(me.token)}else if(Array.isArray(Y.params)){if(se!==void 0&&se.parameterStructures===yr.ParameterStructures.byName){U(new yr.ResponseError(yr.ErrorCodes.InvalidParams,`Request ${Y.method} defines parameters by name but received parameters by position`),Y.method,be);return}De=oe(...Y.params,me.token)}else{if(se!==void 0&&se.parameterStructures===yr.ParameterStructures.byPosition){U(new yr.ResponseError(yr.ErrorCodes.InvalidParams,`Request ${Y.method} defines parameters by position but received parameters by name`),Y.method,be);return}De=oe(Y.params,me.token)}else h&&(De=h(Y.method,Y.params,me.token));let Ce=De;De?Ce.then?Ce.then(Fe=>{b.delete(pe),ce(Fe,Y.method,be)},Fe=>{b.delete(pe),Fe instanceof yr.ResponseError?U(Fe,Y.method,be):Fe&&wi.string(Fe.message)?U(new yr.ResponseError(yr.ErrorCodes.InternalError,`Request ${Y.method} failed with message: ${Fe.message}`),Y.method,be):U(new yr.ResponseError(yr.ErrorCodes.InternalError,`Request ${Y.method} failed unexpectedly without providing any details.`),Y.method,be)}):(b.delete(pe),ce(De,Y.method,be)):(b.delete(pe),ue(De,Y.method,be))}catch(De){b.delete(pe),De instanceof yr.ResponseError?ce(De,Y.method,be):De&&wi.string(De.message)?U(new yr.ResponseError(yr.ErrorCodes.InternalError,`Request ${Y.method} failed with message: ${De.message}`),Y.method,be):U(new yr.ResponseError(yr.ErrorCodes.InternalError,`Request ${Y.method} failed unexpectedly without providing any details.`),Y.method,be)}}else U(new yr.ResponseError(yr.ErrorCodes.MethodNotFound,`Unhandled method ${Y.method}`),Y.method,be)}o(de,"handleRequest");function re(Y){if(!G())if(Y.id===null)Y.error?i.error(`Received response message without id: Error is: +${JSON.stringify(Y.error,void 0,4)}`):i.error("Received response message without id. No further error information provided.");else{let ce=Y.id,U=v.get(ce);if(j(Y,U),U!==void 0){v.delete(ce);try{if(Y.error){let ue=Y.error;U.reject(new yr.ResponseError(ue.code,ue.message,ue.data))}else if(Y.result!==void 0)U.resolve(Y.result);else throw new Error("Should never happen.")}catch(ue){ue.message?i.error(`Response handler '${U.method}' failed with message: ${ue.message}`):i.error(`Response handler '${U.method}' failed unexpectedly.`)}}}}o(re,"handleResponse");function ne(Y){if(G())return;let ce,U;if(Y.method===_T.type.method){let ue=Y.params.id;x.delete(ue),Te(Y);return}else{let ue=p.get(Y.method);ue&&(U=ue.handler,ce=ue.type)}if(U||d)try{if(Te(Y),U)if(Y.params===void 0)ce!==void 0&&ce.numberOfParams!==0&&ce.parameterStructures!==yr.ParameterStructures.byName&&i.error(`Notification ${Y.method} defines ${ce.numberOfParams} params but received none.`),U();else if(Array.isArray(Y.params)){let ue=Y.params;Y.method===CT.type.method&&ue.length===2&&xG.is(ue[0])?U({token:ue[0],value:ue[1]}):(ce!==void 0&&(ce.parameterStructures===yr.ParameterStructures.byName&&i.error(`Notification ${Y.method} defines parameters by name but received parameters by position`),ce.numberOfParams!==Y.params.length&&i.error(`Notification ${Y.method} defines ${ce.numberOfParams} params but received ${ue.length} arguments`)),U(...ue))}else ce!==void 0&&ce.parameterStructures===yr.ParameterStructures.byPosition&&i.error(`Notification ${Y.method} defines parameters by position but received parameters by name`),U(Y.params);else d&&d(Y.method,Y.params)}catch(ue){ue.message?i.error(`Notification handler '${Y.method}' failed with message: ${ue.message}`):i.error(`Notification handler '${Y.method}' failed unexpectedly.`)}else R.fire(Y)}o(ne,"handleNotification");function te(Y){if(!Y){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message: +${JSON.stringify(Y,null,4)}`);let ce=Y;if(wi.string(ce.id)||wi.number(ce.id)){let U=ce.id,ue=v.get(U);ue&&ue.reject(new Error("The received response has neither a result nor an error property."))}}o(te,"handleInvalidMessage");function Q(Y){if(Y!=null)switch(T){case pn.Verbose:return JSON.stringify(Y,null,4);case pn.Compact:return JSON.stringify(Y);default:return}}o(Q,"stringifyTrace");function le(Y){if(!(T===pn.Off||!w))if(E===jo.Text){let ce;(T===pn.Verbose||T===pn.Compact)&&Y.params&&(ce=`Params: ${Q(Y.params)} + +`),w.log(`Sending request '${Y.method} - (${Y.id})'.`,ce)}else Ge("send-request",Y)}o(le,"traceSendingRequest");function J(Y){if(!(T===pn.Off||!w))if(E===jo.Text){let ce;(T===pn.Verbose||T===pn.Compact)&&(Y.params?ce=`Params: ${Q(Y.params)} + +`:ce=`No parameters provided. + +`),w.log(`Sending notification '${Y.method}'.`,ce)}else Ge("send-notification",Y)}o(J,"traceSendingNotification");function ge(Y,ce,U){if(!(T===pn.Off||!w))if(E===jo.Text){let ue;(T===pn.Verbose||T===pn.Compact)&&(Y.error&&Y.error.data?ue=`Error data: ${Q(Y.error.data)} + +`:Y.result?ue=`Result: ${Q(Y.result)} + +`:Y.error===void 0&&(ue=`No result returned. + +`)),w.log(`Sending response '${ce} - (${Y.id})'. Processing request took ${Date.now()-U}ms`,ue)}else Ge("send-response",Y)}o(ge,"traceSendingResponse");function ie(Y){if(!(T===pn.Off||!w))if(E===jo.Text){let ce;(T===pn.Verbose||T===pn.Compact)&&Y.params&&(ce=`Params: ${Q(Y.params)} + +`),w.log(`Received request '${Y.method} - (${Y.id})'.`,ce)}else Ge("receive-request",Y)}o(ie,"traceReceivedRequest");function Te(Y){if(!(T===pn.Off||!w||Y.method===uA.type.method))if(E===jo.Text){let ce;(T===pn.Verbose||T===pn.Compact)&&(Y.params?ce=`Params: ${Q(Y.params)} + +`:ce=`No parameters provided. + +`),w.log(`Received notification '${Y.method}'.`,ce)}else Ge("receive-notification",Y)}o(Te,"traceReceivedNotification");function j(Y,ce){if(!(T===pn.Off||!w))if(E===jo.Text){let U;if((T===pn.Verbose||T===pn.Compact)&&(Y.error&&Y.error.data?U=`Error data: ${Q(Y.error.data)} + +`:Y.result?U=`Result: ${Q(Y.result)} + +`:Y.error===void 0&&(U=`No result returned. + +`)),ce){let ue=Y.error?` Request failed: ${Y.error.message} (${Y.error.code}).`:"";w.log(`Received response '${ce.method} - (${Y.id})' in ${Date.now()-ce.timerStart}ms.${ue}`,U)}else w.log(`Received response ${Y.id} without active response promise.`,U)}else Ge("receive-response",Y)}o(j,"traceReceivedResponse");function Ge(Y,ce){if(!w||T===pn.Off)return;let U={isLSPMessage:!0,type:Y,message:ce,timestamp:Date.now()};w.log(U)}o(Ge,"logLSPMessage");function ye(){if(F())throw new av(AT.Closed,"Connection is closed.");if(G())throw new av(AT.Disposed,"Connection is disposed.")}o(ye,"throwIfClosedOrDisposed");function $e(){if(B())throw new av(AT.AlreadyListening,"Connection is already listening")}o($e,"throwIfListening");function Xe(){if(!B())throw new Error("Call listen() first.")}o(Xe,"throwIfNotListening");function Ue(Y){return Y===void 0?null:Y}o(Ue,"undefinedToNull");function Le(Y){if(Y!==null)return Y}o(Le,"nullToUndefined");function Ie(Y){return Y!=null&&!Array.isArray(Y)&&typeof Y=="object"}o(Ie,"isNamedParam");function Me(Y,ce){switch(Y){case yr.ParameterStructures.auto:return Ie(ce)?Le(ce):[Ue(ce)];case yr.ParameterStructures.byName:if(!Ie(ce))throw new Error("Received parameters by name but param is not an object literal.");return Le(ce);case yr.ParameterStructures.byPosition:return[Ue(ce)];default:throw new Error(`Unknown parameter structure ${Y.toString()}`)}}o(Me,"computeSingleParam");function Ae(Y,ce){let U,ue=Y.numberOfParams;switch(ue){case 0:U=void 0;break;case 1:U=Me(Y.parameterStructures,ce[0]);break;default:U=[];for(let z=0;z{ye();let U,ue;if(wi.string(Y)){U=Y;let se=ce[0],oe=0,be=yr.ParameterStructures.auto;yr.ParameterStructures.is(se)&&(oe=1,be=se);let pe=ce.length,me=pe-oe;switch(me){case 0:ue=void 0;break;case 1:ue=Me(be,ce[oe]);break;default:if(be===yr.ParameterStructures.byName)throw new Error(`Received ${me} parameters for 'by Name' notification parameter structure.`);ue=ce.slice(oe,pe).map(De=>Ue(De));break}}else{let se=ce;U=Y.method,ue=Ae(Y,se)}let z={jsonrpc:u,method:U,params:ue};return J(z),e.write(z).catch(se=>{throw i.error("Sending notification failed."),se})},"sendNotification"),onNotification:o((Y,ce)=>{ye();let U;return wi.func(Y)?d=Y:ce&&(wi.string(Y)?(U=Y,p.set(Y,{type:void 0,handler:ce})):(U=Y.method,p.set(Y.method,{type:Y,handler:ce}))),{dispose:o(()=>{U!==void 0?p.delete(U):d=void 0},"dispose")}},"onNotification"),onProgress:o((Y,ce,U)=>{if(m.has(ce))throw new Error(`Progress handler for token ${ce} already registered`);return m.set(ce,U),{dispose:o(()=>{m.delete(ce)},"dispose")}},"onProgress"),sendProgress:o((Y,ce,U)=>ze.sendNotification(CT.type,{token:ce,value:U}),"sendProgress"),onUnhandledProgress:O.event,sendRequest:o((Y,...ce)=>{ye(),Xe();let U,ue,z;if(wi.string(Y)){U=Y;let pe=ce[0],me=ce[ce.length-1],De=0,Ce=yr.ParameterStructures.auto;yr.ParameterStructures.is(pe)&&(De=1,Ce=pe);let Fe=ce.length;vG.CancellationToken.is(me)&&(Fe=Fe-1,z=me);let Ye=Fe-De;switch(Ye){case 0:ue=void 0;break;case 1:ue=Me(Ce,ce[De]);break;default:if(Ce===yr.ParameterStructures.byName)throw new Error(`Received ${Ye} parameters for 'by Name' request parameter structure.`);ue=ce.slice(De,Fe).map(xt=>Ue(xt));break}}else{let pe=ce;U=Y.method,ue=Ae(Y,pe);let me=Y.numberOfParams;z=vG.CancellationToken.is(pe[me])?pe[me]:void 0}let se=a++,oe;z&&(oe=z.onCancellationRequested(()=>{let pe=S.sender.sendCancellation(ze,se);return pe===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${se}`),Promise.resolve()):pe.catch(()=>{i.log(`Sending cancellation messages for id ${se} failed`)})}));let be={jsonrpc:u,id:se,method:U,params:ue};return le(be),typeof S.sender.enableCancellation=="function"&&S.sender.enableCancellation(be),new Promise(async(pe,me)=>{let De=o(Ye=>{pe(Ye),S.sender.cleanup(se),oe?.dispose()},"resolveWithCleanup"),Ce=o(Ye=>{me(Ye),S.sender.cleanup(se),oe?.dispose()},"rejectWithCleanup"),Fe={method:U,timerStart:Date.now(),resolve:De,reject:Ce};try{await e.write(be),v.set(se,Fe)}catch(Ye){throw i.error("Sending request failed."),Fe.reject(new yr.ResponseError(yr.ErrorCodes.MessageWriteError,Ye.message?Ye.message:"Unknown reason")),Ye}})},"sendRequest"),onRequest:o((Y,ce)=>{ye();let U=null;return TG.is(Y)?(U=void 0,h=Y):wi.string(Y)?(U=null,ce!==void 0&&(U=Y,f.set(Y,{handler:ce,type:void 0}))):ce!==void 0&&(U=Y.method,f.set(Y.method,{type:Y,handler:ce})),{dispose:o(()=>{U!==null&&(U!==void 0?f.delete(U):h=void 0)},"dispose")}},"onRequest"),hasPendingResponse:o(()=>v.size>0,"hasPendingResponse"),trace:o(async(Y,ce,U)=>{let ue=!1,z=jo.Text;U!==void 0&&(wi.boolean(U)?ue=U:(ue=U.sendNotification||!1,z=U.traceFormat||jo.Text)),T=Y,E=z,T===pn.Off?w=void 0:w=ce,ue&&!F()&&!G()&&await ze.sendNotification(wG.type,{value:pn.toString(Y)})},"trace"),onError:C.event,onClose:D.event,onUnhandledNotification:R.event,onDispose:L.event,end:o(()=>{e.end()},"end"),dispose:o(()=>{if(G())return;k=Ec.Disposed,L.fire(void 0);let Y=new yr.ResponseError(yr.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let ce of v.values())ce.reject(Y);v=new Map,b=new Map,x=new Set,y=new mve.LinkedMap,wi.func(e.dispose)&&e.dispose(),wi.func(t.dispose)&&t.dispose()},"dispose"),listen:o(()=>{ye(),$e(),k=Ec.Listening,t.listen(Z)},"listen"),inspect:o(()=>{(0,pve.default)().console.log("inspect")},"inspect")};return ze.onNotification(uA.type,Y=>{if(T===pn.Off||!w)return;let ce=T===pn.Verbose||T===pn.Compact;w.log(Y.message,ce?Y.verbose:void 0)}),ze.onNotification(CT.type,Y=>{let ce=m.get(Y.token);ce?ce(Y.value):O.fire(Y)}),ze}o(Rrt,"createMessageConnection");Cr.createMessageConnection=Rrt});var gA=Jt(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.ProgressType=et.ProgressToken=et.createMessageConnection=et.NullLogger=et.ConnectionOptions=et.ConnectionStrategy=et.AbstractMessageBuffer=et.WriteableStreamMessageWriter=et.AbstractMessageWriter=et.MessageWriter=et.ReadableStreamMessageReader=et.AbstractMessageReader=et.MessageReader=et.SharedArrayReceiverStrategy=et.SharedArraySenderStrategy=et.CancellationToken=et.CancellationTokenSource=et.Emitter=et.Event=et.Disposable=et.LRUCache=et.Touch=et.LinkedMap=et.ParameterStructures=et.NotificationType9=et.NotificationType8=et.NotificationType7=et.NotificationType6=et.NotificationType5=et.NotificationType4=et.NotificationType3=et.NotificationType2=et.NotificationType1=et.NotificationType0=et.NotificationType=et.ErrorCodes=et.ResponseError=et.RequestType9=et.RequestType8=et.RequestType7=et.RequestType6=et.RequestType5=et.RequestType4=et.RequestType3=et.RequestType2=et.RequestType1=et.RequestType0=et.RequestType=et.Message=et.RAL=void 0;et.MessageStrategy=et.CancellationStrategy=et.CancellationSenderStrategy=et.CancellationReceiverStrategy=et.ConnectionError=et.ConnectionErrors=et.LogTraceNotification=et.SetTraceNotification=et.TraceFormat=et.TraceValues=et.Trace=void 0;var Yn=rG();Object.defineProperty(et,"Message",{enumerable:!0,get:o(function(){return Yn.Message},"get")});Object.defineProperty(et,"RequestType",{enumerable:!0,get:o(function(){return Yn.RequestType},"get")});Object.defineProperty(et,"RequestType0",{enumerable:!0,get:o(function(){return Yn.RequestType0},"get")});Object.defineProperty(et,"RequestType1",{enumerable:!0,get:o(function(){return Yn.RequestType1},"get")});Object.defineProperty(et,"RequestType2",{enumerable:!0,get:o(function(){return Yn.RequestType2},"get")});Object.defineProperty(et,"RequestType3",{enumerable:!0,get:o(function(){return Yn.RequestType3},"get")});Object.defineProperty(et,"RequestType4",{enumerable:!0,get:o(function(){return Yn.RequestType4},"get")});Object.defineProperty(et,"RequestType5",{enumerable:!0,get:o(function(){return Yn.RequestType5},"get")});Object.defineProperty(et,"RequestType6",{enumerable:!0,get:o(function(){return Yn.RequestType6},"get")});Object.defineProperty(et,"RequestType7",{enumerable:!0,get:o(function(){return Yn.RequestType7},"get")});Object.defineProperty(et,"RequestType8",{enumerable:!0,get:o(function(){return Yn.RequestType8},"get")});Object.defineProperty(et,"RequestType9",{enumerable:!0,get:o(function(){return Yn.RequestType9},"get")});Object.defineProperty(et,"ResponseError",{enumerable:!0,get:o(function(){return Yn.ResponseError},"get")});Object.defineProperty(et,"ErrorCodes",{enumerable:!0,get:o(function(){return Yn.ErrorCodes},"get")});Object.defineProperty(et,"NotificationType",{enumerable:!0,get:o(function(){return Yn.NotificationType},"get")});Object.defineProperty(et,"NotificationType0",{enumerable:!0,get:o(function(){return Yn.NotificationType0},"get")});Object.defineProperty(et,"NotificationType1",{enumerable:!0,get:o(function(){return Yn.NotificationType1},"get")});Object.defineProperty(et,"NotificationType2",{enumerable:!0,get:o(function(){return Yn.NotificationType2},"get")});Object.defineProperty(et,"NotificationType3",{enumerable:!0,get:o(function(){return Yn.NotificationType3},"get")});Object.defineProperty(et,"NotificationType4",{enumerable:!0,get:o(function(){return Yn.NotificationType4},"get")});Object.defineProperty(et,"NotificationType5",{enumerable:!0,get:o(function(){return Yn.NotificationType5},"get")});Object.defineProperty(et,"NotificationType6",{enumerable:!0,get:o(function(){return Yn.NotificationType6},"get")});Object.defineProperty(et,"NotificationType7",{enumerable:!0,get:o(function(){return Yn.NotificationType7},"get")});Object.defineProperty(et,"NotificationType8",{enumerable:!0,get:o(function(){return Yn.NotificationType8},"get")});Object.defineProperty(et,"NotificationType9",{enumerable:!0,get:o(function(){return Yn.NotificationType9},"get")});Object.defineProperty(et,"ParameterStructures",{enumerable:!0,get:o(function(){return Yn.ParameterStructures},"get")});var EG=iG();Object.defineProperty(et,"LinkedMap",{enumerable:!0,get:o(function(){return EG.LinkedMap},"get")});Object.defineProperty(et,"LRUCache",{enumerable:!0,get:o(function(){return EG.LRUCache},"get")});Object.defineProperty(et,"Touch",{enumerable:!0,get:o(function(){return EG.Touch},"get")});var Lrt=ive();Object.defineProperty(et,"Disposable",{enumerable:!0,get:o(function(){return Lrt.Disposable},"get")});var xve=km();Object.defineProperty(et,"Event",{enumerable:!0,get:o(function(){return xve.Event},"get")});Object.defineProperty(et,"Emitter",{enumerable:!0,get:o(function(){return xve.Emitter},"get")});var bve=aT();Object.defineProperty(et,"CancellationTokenSource",{enumerable:!0,get:o(function(){return bve.CancellationTokenSource},"get")});Object.defineProperty(et,"CancellationToken",{enumerable:!0,get:o(function(){return bve.CancellationToken},"get")});var Tve=ave();Object.defineProperty(et,"SharedArraySenderStrategy",{enumerable:!0,get:o(function(){return Tve.SharedArraySenderStrategy},"get")});Object.defineProperty(et,"SharedArrayReceiverStrategy",{enumerable:!0,get:o(function(){return Tve.SharedArrayReceiverStrategy},"get")});var CG=ove();Object.defineProperty(et,"MessageReader",{enumerable:!0,get:o(function(){return CG.MessageReader},"get")});Object.defineProperty(et,"AbstractMessageReader",{enumerable:!0,get:o(function(){return CG.AbstractMessageReader},"get")});Object.defineProperty(et,"ReadableStreamMessageReader",{enumerable:!0,get:o(function(){return CG.ReadableStreamMessageReader},"get")});var AG=fve();Object.defineProperty(et,"MessageWriter",{enumerable:!0,get:o(function(){return AG.MessageWriter},"get")});Object.defineProperty(et,"AbstractMessageWriter",{enumerable:!0,get:o(function(){return AG.AbstractMessageWriter},"get")});Object.defineProperty(et,"WriteableStreamMessageWriter",{enumerable:!0,get:o(function(){return AG.WriteableStreamMessageWriter},"get")});var Nrt=dve();Object.defineProperty(et,"AbstractMessageBuffer",{enumerable:!0,get:o(function(){return Nrt.AbstractMessageBuffer},"get")});var qa=vve();Object.defineProperty(et,"ConnectionStrategy",{enumerable:!0,get:o(function(){return qa.ConnectionStrategy},"get")});Object.defineProperty(et,"ConnectionOptions",{enumerable:!0,get:o(function(){return qa.ConnectionOptions},"get")});Object.defineProperty(et,"NullLogger",{enumerable:!0,get:o(function(){return qa.NullLogger},"get")});Object.defineProperty(et,"createMessageConnection",{enumerable:!0,get:o(function(){return qa.createMessageConnection},"get")});Object.defineProperty(et,"ProgressToken",{enumerable:!0,get:o(function(){return qa.ProgressToken},"get")});Object.defineProperty(et,"ProgressType",{enumerable:!0,get:o(function(){return qa.ProgressType},"get")});Object.defineProperty(et,"Trace",{enumerable:!0,get:o(function(){return qa.Trace},"get")});Object.defineProperty(et,"TraceValues",{enumerable:!0,get:o(function(){return qa.TraceValues},"get")});Object.defineProperty(et,"TraceFormat",{enumerable:!0,get:o(function(){return qa.TraceFormat},"get")});Object.defineProperty(et,"SetTraceNotification",{enumerable:!0,get:o(function(){return qa.SetTraceNotification},"get")});Object.defineProperty(et,"LogTraceNotification",{enumerable:!0,get:o(function(){return qa.LogTraceNotification},"get")});Object.defineProperty(et,"ConnectionErrors",{enumerable:!0,get:o(function(){return qa.ConnectionErrors},"get")});Object.defineProperty(et,"ConnectionError",{enumerable:!0,get:o(function(){return qa.ConnectionError},"get")});Object.defineProperty(et,"CancellationReceiverStrategy",{enumerable:!0,get:o(function(){return qa.CancellationReceiverStrategy},"get")});Object.defineProperty(et,"CancellationSenderStrategy",{enumerable:!0,get:o(function(){return qa.CancellationSenderStrategy},"get")});Object.defineProperty(et,"CancellationStrategy",{enumerable:!0,get:o(function(){return qa.CancellationStrategy},"get")});Object.defineProperty(et,"MessageStrategy",{enumerable:!0,get:o(function(){return qa.MessageStrategy},"get")});var Mrt=Wd();et.RAL=Mrt.default});var kve=Jt(LG=>{"use strict";Object.defineProperty(LG,"__esModule",{value:!0});var Ou=gA(),yA=class t extends Ou.AbstractMessageBuffer{static{o(this,"MessageBuffer")}constructor(e="utf-8"){super(e),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return t.emptyBuffer}fromString(e,r){return new TextEncoder().encode(e)}toString(e,r){return r==="ascii"?this.asciiDecoder.decode(e):new TextDecoder(r).decode(e)}asNative(e,r){return r===void 0?e:e.slice(0,r)}allocNative(e){return new Uint8Array(e)}};yA.emptyBuffer=new Uint8Array(0);var _G=class{static{o(this,"ReadableStreamWrapper")}constructor(e){this.socket=e,this._onData=new Ou.Emitter,this._messageListener=r=>{r.data.arrayBuffer().then(i=>{this._onData.fire(new Uint8Array(i))},()=>{(0,Ou.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(e){return this.socket.addEventListener("close",e),Ou.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),Ou.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),Ou.Disposable.create(()=>this.socket.removeEventListener("end",e))}onData(e){return this._onData.event(e)}},DG=class{static{o(this,"WritableStreamWrapper")}constructor(e){this.socket=e}onClose(e){return this.socket.addEventListener("close",e),Ou.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),Ou.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),Ou.Disposable.create(()=>this.socket.removeEventListener("end",e))}write(e,r){if(typeof e=="string"){if(r!==void 0&&r!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${r}`);this.socket.send(e)}else this.socket.send(e);return Promise.resolve()}end(){this.socket.close()}},Irt=new TextEncoder,wve=Object.freeze({messageBuffer:Object.freeze({create:o(t=>new yA(t),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:o((t,e)=>{if(e.charset!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${e.charset}`);return Promise.resolve(Irt.encode(JSON.stringify(t,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:o((t,e)=>{if(!(t instanceof Uint8Array))throw new Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(e.charset).decode(t)))},"decode")})}),stream:Object.freeze({asReadableStream:o(t=>new _G(t),"asReadableStream"),asWritableStream:o(t=>new DG(t),"asWritableStream")}),console,timer:Object.freeze({setTimeout(t,e,...r){let n=setTimeout(t,e,...r);return{dispose:o(()=>clearTimeout(n),"dispose")}},setImmediate(t,...e){let r=setTimeout(t,0,...e);return{dispose:o(()=>clearTimeout(r),"dispose")}},setInterval(t,e,...r){let n=setInterval(t,e,...r);return{dispose:o(()=>clearInterval(n),"dispose")}}})});function RG(){return wve}o(RG,"RIL");(function(t){function e(){Ou.RAL.install(wve)}o(e,"install"),t.install=e})(RG||(RG={}));LG.default=RG});var Dm=Jt(Xo=>{"use strict";var Ort=Xo&&Xo.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[r]},"get")}),Object.defineProperty(t,n,i)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Prt=Xo&&Xo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Ort(e,t,r)};Object.defineProperty(Xo,"__esModule",{value:!0});Xo.createMessageConnection=Xo.BrowserMessageWriter=Xo.BrowserMessageReader=void 0;var Brt=kve();Brt.default.install();var sv=gA();Prt(gA(),Xo);var NG=class extends sv.AbstractMessageReader{static{o(this,"BrowserMessageReader")}constructor(e){super(),this._onData=new sv.Emitter,this._messageListener=r=>{this._onData.fire(r.data)},e.addEventListener("error",r=>this.fireError(r)),e.onmessage=this._messageListener}listen(e){return this._onData.event(e)}};Xo.BrowserMessageReader=NG;var MG=class extends sv.AbstractMessageWriter{static{o(this,"BrowserMessageWriter")}constructor(e){super(),this.port=e,this.errorCount=0,e.addEventListener("error",r=>this.fireError(r))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Xo.BrowserMessageWriter=MG;function Frt(t,e,r,n){return r===void 0&&(r=sv.NullLogger),sv.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,sv.createMessageConnection)(t,e,r,n)}o(Frt,"createMessageConnection");Xo.createMessageConnection=Frt});var IG=Jt((J0r,Sve)=>{"use strict";Sve.exports=Dm()});var hi=Jt(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.ProtocolNotificationType=To.ProtocolNotificationType0=To.ProtocolRequestType=To.ProtocolRequestType0=To.RegistrationType=To.MessageDirection=void 0;var ov=Dm(),Eve;(function(t){t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both"})(Eve||(To.MessageDirection=Eve={}));var OG=class{static{o(this,"RegistrationType")}constructor(e){this.method=e}};To.RegistrationType=OG;var PG=class extends ov.RequestType0{static{o(this,"ProtocolRequestType0")}constructor(e){super(e)}};To.ProtocolRequestType0=PG;var BG=class extends ov.RequestType{static{o(this,"ProtocolRequestType")}constructor(e){super(e,ov.ParameterStructures.byName)}};To.ProtocolRequestType=BG;var FG=class extends ov.NotificationType0{static{o(this,"ProtocolNotificationType0")}constructor(e){super(e)}};To.ProtocolNotificationType0=FG;var $G=class extends ov.NotificationType{static{o(this,"ProtocolNotificationType")}constructor(e){super(e,ov.ParameterStructures.byName)}};To.ProtocolNotificationType=$G});var vA=Jt(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.objectLiteral=Ui.typedArray=Ui.stringArray=Ui.array=Ui.func=Ui.error=Ui.number=Ui.string=Ui.boolean=void 0;function $rt(t){return t===!0||t===!1}o($rt,"boolean");Ui.boolean=$rt;function Cve(t){return typeof t=="string"||t instanceof String}o(Cve,"string");Ui.string=Cve;function zrt(t){return typeof t=="number"||t instanceof Number}o(zrt,"number");Ui.number=zrt;function Grt(t){return t instanceof Error}o(Grt,"error");Ui.error=Grt;function Vrt(t){return typeof t=="function"}o(Vrt,"func");Ui.func=Vrt;function Ave(t){return Array.isArray(t)}o(Ave,"array");Ui.array=Ave;function qrt(t){return Ave(t)&&t.every(e=>Cve(e))}o(qrt,"stringArray");Ui.stringArray=qrt;function Urt(t,e){return Array.isArray(t)&&t.every(e)}o(Urt,"typedArray");Ui.typedArray=Urt;function Wrt(t){return t!==null&&typeof t=="object"}o(Wrt,"objectLiteral");Ui.objectLiteral=Wrt});var Rve=Jt(xA=>{"use strict";Object.defineProperty(xA,"__esModule",{value:!0});xA.ImplementationRequest=void 0;var _ve=hi(),Dve;(function(t){t.method="textDocument/implementation",t.messageDirection=_ve.MessageDirection.clientToServer,t.type=new _ve.ProtocolRequestType(t.method)})(Dve||(xA.ImplementationRequest=Dve={}))});var Mve=Jt(bA=>{"use strict";Object.defineProperty(bA,"__esModule",{value:!0});bA.TypeDefinitionRequest=void 0;var Lve=hi(),Nve;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=Lve.MessageDirection.clientToServer,t.type=new Lve.ProtocolRequestType(t.method)})(Nve||(bA.TypeDefinitionRequest=Nve={}))});var Pve=Jt(lv=>{"use strict";Object.defineProperty(lv,"__esModule",{value:!0});lv.DidChangeWorkspaceFoldersNotification=lv.WorkspaceFoldersRequest=void 0;var TA=hi(),Ive;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=TA.MessageDirection.serverToClient,t.type=new TA.ProtocolRequestType0(t.method)})(Ive||(lv.WorkspaceFoldersRequest=Ive={}));var Ove;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=TA.MessageDirection.clientToServer,t.type=new TA.ProtocolNotificationType(t.method)})(Ove||(lv.DidChangeWorkspaceFoldersNotification=Ove={}))});var $ve=Jt(wA=>{"use strict";Object.defineProperty(wA,"__esModule",{value:!0});wA.ConfigurationRequest=void 0;var Bve=hi(),Fve;(function(t){t.method="workspace/configuration",t.messageDirection=Bve.MessageDirection.serverToClient,t.type=new Bve.ProtocolRequestType(t.method)})(Fve||(wA.ConfigurationRequest=Fve={}))});var Vve=Jt(cv=>{"use strict";Object.defineProperty(cv,"__esModule",{value:!0});cv.ColorPresentationRequest=cv.DocumentColorRequest=void 0;var kA=hi(),zve;(function(t){t.method="textDocument/documentColor",t.messageDirection=kA.MessageDirection.clientToServer,t.type=new kA.ProtocolRequestType(t.method)})(zve||(cv.DocumentColorRequest=zve={}));var Gve;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=kA.MessageDirection.clientToServer,t.type=new kA.ProtocolRequestType(t.method)})(Gve||(cv.ColorPresentationRequest=Gve={}))});var Wve=Jt(uv=>{"use strict";Object.defineProperty(uv,"__esModule",{value:!0});uv.FoldingRangeRefreshRequest=uv.FoldingRangeRequest=void 0;var SA=hi(),qve;(function(t){t.method="textDocument/foldingRange",t.messageDirection=SA.MessageDirection.clientToServer,t.type=new SA.ProtocolRequestType(t.method)})(qve||(uv.FoldingRangeRequest=qve={}));var Uve;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=SA.MessageDirection.serverToClient,t.type=new SA.ProtocolRequestType0(t.method)})(Uve||(uv.FoldingRangeRefreshRequest=Uve={}))});var jve=Jt(EA=>{"use strict";Object.defineProperty(EA,"__esModule",{value:!0});EA.DeclarationRequest=void 0;var Hve=hi(),Yve;(function(t){t.method="textDocument/declaration",t.messageDirection=Hve.MessageDirection.clientToServer,t.type=new Hve.ProtocolRequestType(t.method)})(Yve||(EA.DeclarationRequest=Yve={}))});var Qve=Jt(CA=>{"use strict";Object.defineProperty(CA,"__esModule",{value:!0});CA.SelectionRangeRequest=void 0;var Xve=hi(),Kve;(function(t){t.method="textDocument/selectionRange",t.messageDirection=Xve.MessageDirection.clientToServer,t.type=new Xve.ProtocolRequestType(t.method)})(Kve||(CA.SelectionRangeRequest=Kve={}))});var t2e=Jt(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});Kd.WorkDoneProgressCancelNotification=Kd.WorkDoneProgressCreateRequest=Kd.WorkDoneProgress=void 0;var Hrt=Dm(),AA=hi(),Zve;(function(t){t.type=new Hrt.ProgressType;function e(r){return r===t.type}o(e,"is"),t.is=e})(Zve||(Kd.WorkDoneProgress=Zve={}));var Jve;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=AA.MessageDirection.serverToClient,t.type=new AA.ProtocolRequestType(t.method)})(Jve||(Kd.WorkDoneProgressCreateRequest=Jve={}));var e2e;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=AA.MessageDirection.clientToServer,t.type=new AA.ProtocolNotificationType(t.method)})(e2e||(Kd.WorkDoneProgressCancelNotification=e2e={}))});var a2e=Jt(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});Qd.CallHierarchyOutgoingCallsRequest=Qd.CallHierarchyIncomingCallsRequest=Qd.CallHierarchyPrepareRequest=void 0;var hv=hi(),r2e;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=hv.MessageDirection.clientToServer,t.type=new hv.ProtocolRequestType(t.method)})(r2e||(Qd.CallHierarchyPrepareRequest=r2e={}));var n2e;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=hv.MessageDirection.clientToServer,t.type=new hv.ProtocolRequestType(t.method)})(n2e||(Qd.CallHierarchyIncomingCallsRequest=n2e={}));var i2e;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=hv.MessageDirection.clientToServer,t.type=new hv.ProtocolRequestType(t.method)})(i2e||(Qd.CallHierarchyOutgoingCallsRequest=i2e={}))});var h2e=Jt(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.SemanticTokensRefreshRequest=wo.SemanticTokensRangeRequest=wo.SemanticTokensDeltaRequest=wo.SemanticTokensRequest=wo.SemanticTokensRegistrationType=wo.TokenFormat=void 0;var Xh=hi(),s2e;(function(t){t.Relative="relative"})(s2e||(wo.TokenFormat=s2e={}));var DT;(function(t){t.method="textDocument/semanticTokens",t.type=new Xh.RegistrationType(t.method)})(DT||(wo.SemanticTokensRegistrationType=DT={}));var o2e;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=Xh.MessageDirection.clientToServer,t.type=new Xh.ProtocolRequestType(t.method),t.registrationMethod=DT.method})(o2e||(wo.SemanticTokensRequest=o2e={}));var l2e;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=Xh.MessageDirection.clientToServer,t.type=new Xh.ProtocolRequestType(t.method),t.registrationMethod=DT.method})(l2e||(wo.SemanticTokensDeltaRequest=l2e={}));var c2e;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=Xh.MessageDirection.clientToServer,t.type=new Xh.ProtocolRequestType(t.method),t.registrationMethod=DT.method})(c2e||(wo.SemanticTokensRangeRequest=c2e={}));var u2e;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=Xh.MessageDirection.serverToClient,t.type=new Xh.ProtocolRequestType0(t.method)})(u2e||(wo.SemanticTokensRefreshRequest=u2e={}))});var p2e=Jt(_A=>{"use strict";Object.defineProperty(_A,"__esModule",{value:!0});_A.ShowDocumentRequest=void 0;var f2e=hi(),d2e;(function(t){t.method="window/showDocument",t.messageDirection=f2e.MessageDirection.serverToClient,t.type=new f2e.ProtocolRequestType(t.method)})(d2e||(_A.ShowDocumentRequest=d2e={}))});var y2e=Jt(DA=>{"use strict";Object.defineProperty(DA,"__esModule",{value:!0});DA.LinkedEditingRangeRequest=void 0;var m2e=hi(),g2e;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=m2e.MessageDirection.clientToServer,t.type=new m2e.ProtocolRequestType(t.method)})(g2e||(DA.LinkedEditingRangeRequest=g2e={}))});var E2e=Jt(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.WillDeleteFilesRequest=fs.DidDeleteFilesNotification=fs.DidRenameFilesNotification=fs.WillRenameFilesRequest=fs.DidCreateFilesNotification=fs.WillCreateFilesRequest=fs.FileOperationPatternKind=void 0;var Il=hi(),v2e;(function(t){t.file="file",t.folder="folder"})(v2e||(fs.FileOperationPatternKind=v2e={}));var x2e;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=Il.MessageDirection.clientToServer,t.type=new Il.ProtocolRequestType(t.method)})(x2e||(fs.WillCreateFilesRequest=x2e={}));var b2e;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=Il.MessageDirection.clientToServer,t.type=new Il.ProtocolNotificationType(t.method)})(b2e||(fs.DidCreateFilesNotification=b2e={}));var T2e;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=Il.MessageDirection.clientToServer,t.type=new Il.ProtocolRequestType(t.method)})(T2e||(fs.WillRenameFilesRequest=T2e={}));var w2e;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=Il.MessageDirection.clientToServer,t.type=new Il.ProtocolNotificationType(t.method)})(w2e||(fs.DidRenameFilesNotification=w2e={}));var k2e;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=Il.MessageDirection.clientToServer,t.type=new Il.ProtocolNotificationType(t.method)})(k2e||(fs.DidDeleteFilesNotification=k2e={}));var S2e;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=Il.MessageDirection.clientToServer,t.type=new Il.ProtocolRequestType(t.method)})(S2e||(fs.WillDeleteFilesRequest=S2e={}))});var R2e=Jt(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.MonikerRequest=Zd.MonikerKind=Zd.UniquenessLevel=void 0;var C2e=hi(),A2e;(function(t){t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global"})(A2e||(Zd.UniquenessLevel=A2e={}));var _2e;(function(t){t.$import="import",t.$export="export",t.local="local"})(_2e||(Zd.MonikerKind=_2e={}));var D2e;(function(t){t.method="textDocument/moniker",t.messageDirection=C2e.MessageDirection.clientToServer,t.type=new C2e.ProtocolRequestType(t.method)})(D2e||(Zd.MonikerRequest=D2e={}))});var I2e=Jt(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});Jd.TypeHierarchySubtypesRequest=Jd.TypeHierarchySupertypesRequest=Jd.TypeHierarchyPrepareRequest=void 0;var fv=hi(),L2e;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=fv.MessageDirection.clientToServer,t.type=new fv.ProtocolRequestType(t.method)})(L2e||(Jd.TypeHierarchyPrepareRequest=L2e={}));var N2e;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=fv.MessageDirection.clientToServer,t.type=new fv.ProtocolRequestType(t.method)})(N2e||(Jd.TypeHierarchySupertypesRequest=N2e={}));var M2e;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=fv.MessageDirection.clientToServer,t.type=new fv.ProtocolRequestType(t.method)})(M2e||(Jd.TypeHierarchySubtypesRequest=M2e={}))});var B2e=Jt(dv=>{"use strict";Object.defineProperty(dv,"__esModule",{value:!0});dv.InlineValueRefreshRequest=dv.InlineValueRequest=void 0;var RA=hi(),O2e;(function(t){t.method="textDocument/inlineValue",t.messageDirection=RA.MessageDirection.clientToServer,t.type=new RA.ProtocolRequestType(t.method)})(O2e||(dv.InlineValueRequest=O2e={}));var P2e;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=RA.MessageDirection.serverToClient,t.type=new RA.ProtocolRequestType0(t.method)})(P2e||(dv.InlineValueRefreshRequest=P2e={}))});var G2e=Jt(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});ep.InlayHintRefreshRequest=ep.InlayHintResolveRequest=ep.InlayHintRequest=void 0;var pv=hi(),F2e;(function(t){t.method="textDocument/inlayHint",t.messageDirection=pv.MessageDirection.clientToServer,t.type=new pv.ProtocolRequestType(t.method)})(F2e||(ep.InlayHintRequest=F2e={}));var $2e;(function(t){t.method="inlayHint/resolve",t.messageDirection=pv.MessageDirection.clientToServer,t.type=new pv.ProtocolRequestType(t.method)})($2e||(ep.InlayHintResolveRequest=$2e={}));var z2e;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=pv.MessageDirection.serverToClient,t.type=new pv.ProtocolRequestType0(t.method)})(z2e||(ep.InlayHintRefreshRequest=z2e={}))});var j2e=Jt(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});Ol.DiagnosticRefreshRequest=Ol.WorkspaceDiagnosticRequest=Ol.DocumentDiagnosticRequest=Ol.DocumentDiagnosticReportKind=Ol.DiagnosticServerCancellationData=void 0;var Y2e=Dm(),Yrt=vA(),mv=hi(),V2e;(function(t){function e(r){let n=r;return n&&Yrt.boolean(n.retriggerRequest)}o(e,"is"),t.is=e})(V2e||(Ol.DiagnosticServerCancellationData=V2e={}));var q2e;(function(t){t.Full="full",t.Unchanged="unchanged"})(q2e||(Ol.DocumentDiagnosticReportKind=q2e={}));var U2e;(function(t){t.method="textDocument/diagnostic",t.messageDirection=mv.MessageDirection.clientToServer,t.type=new mv.ProtocolRequestType(t.method),t.partialResult=new Y2e.ProgressType})(U2e||(Ol.DocumentDiagnosticRequest=U2e={}));var W2e;(function(t){t.method="workspace/diagnostic",t.messageDirection=mv.MessageDirection.clientToServer,t.type=new mv.ProtocolRequestType(t.method),t.partialResult=new Y2e.ProgressType})(W2e||(Ol.WorkspaceDiagnosticRequest=W2e={}));var H2e;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=mv.MessageDirection.serverToClient,t.type=new mv.ProtocolRequestType0(t.method)})(H2e||(Ol.DiagnosticRefreshRequest=H2e={}))});var txe=Jt(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.DidCloseNotebookDocumentNotification=Di.DidSaveNotebookDocumentNotification=Di.DidChangeNotebookDocumentNotification=Di.NotebookCellArrayChange=Di.DidOpenNotebookDocumentNotification=Di.NotebookDocumentSyncRegistrationType=Di.NotebookDocument=Di.NotebookCell=Di.ExecutionSummary=Di.NotebookCellKind=void 0;var RT=(Uy(),D3(B6)),Cc=vA(),Pu=hi(),zG;(function(t){t.Markup=1,t.Code=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(zG||(Di.NotebookCellKind=zG={}));var GG;(function(t){function e(i,a){let s={executionOrder:i};return(a===!0||a===!1)&&(s.success=a),s}o(e,"create"),t.create=e;function r(i){let a=i;return Cc.objectLiteral(a)&&RT.uinteger.is(a.executionOrder)&&(a.success===void 0||Cc.boolean(a.success))}o(r,"is"),t.is=r;function n(i,a){return i===a?!0:i==null||a===null||a===void 0?!1:i.executionOrder===a.executionOrder&&i.success===a.success}o(n,"equals"),t.equals=n})(GG||(Di.ExecutionSummary=GG={}));var LA;(function(t){function e(a,s){return{kind:a,document:s}}o(e,"create"),t.create=e;function r(a){let s=a;return Cc.objectLiteral(s)&&zG.is(s.kind)&&RT.DocumentUri.is(s.document)&&(s.metadata===void 0||Cc.objectLiteral(s.metadata))}o(r,"is"),t.is=r;function n(a,s){let l=new Set;return a.document!==s.document&&l.add("document"),a.kind!==s.kind&&l.add("kind"),a.executionSummary!==s.executionSummary&&l.add("executionSummary"),(a.metadata!==void 0||s.metadata!==void 0)&&!i(a.metadata,s.metadata)&&l.add("metadata"),(a.executionSummary!==void 0||s.executionSummary!==void 0)&&!GG.equals(a.executionSummary,s.executionSummary)&&l.add("executionSummary"),l}o(n,"diff"),t.diff=n;function i(a,s){if(a===s)return!0;if(a==null||s===null||s===void 0||typeof a!=typeof s||typeof a!="object")return!1;let l=Array.isArray(a),u=Array.isArray(s);if(l!==u)return!1;if(l&&u){if(a.length!==s.length)return!1;for(let h=0;h{"use strict";Object.defineProperty(NA,"__esModule",{value:!0});NA.InlineCompletionRequest=void 0;var rxe=hi(),nxe;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=rxe.MessageDirection.clientToServer,t.type=new rxe.ProtocolRequestType(t.method)})(nxe||(NA.InlineCompletionRequest=nxe={}))});var ybe=Jt(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});ke.WorkspaceSymbolRequest=ke.CodeActionResolveRequest=ke.CodeActionRequest=ke.DocumentSymbolRequest=ke.DocumentHighlightRequest=ke.ReferencesRequest=ke.DefinitionRequest=ke.SignatureHelpRequest=ke.SignatureHelpTriggerKind=ke.HoverRequest=ke.CompletionResolveRequest=ke.CompletionRequest=ke.CompletionTriggerKind=ke.PublishDiagnosticsNotification=ke.WatchKind=ke.RelativePattern=ke.FileChangeType=ke.DidChangeWatchedFilesNotification=ke.WillSaveTextDocumentWaitUntilRequest=ke.WillSaveTextDocumentNotification=ke.TextDocumentSaveReason=ke.DidSaveTextDocumentNotification=ke.DidCloseTextDocumentNotification=ke.DidChangeTextDocumentNotification=ke.TextDocumentContentChangeEvent=ke.DidOpenTextDocumentNotification=ke.TextDocumentSyncKind=ke.TelemetryEventNotification=ke.LogMessageNotification=ke.ShowMessageRequest=ke.ShowMessageNotification=ke.MessageType=ke.DidChangeConfigurationNotification=ke.ExitNotification=ke.ShutdownRequest=ke.InitializedNotification=ke.InitializeErrorCodes=ke.InitializeRequest=ke.WorkDoneProgressOptions=ke.TextDocumentRegistrationOptions=ke.StaticRegistrationOptions=ke.PositionEncodingKind=ke.FailureHandlingKind=ke.ResourceOperationKind=ke.UnregistrationRequest=ke.RegistrationRequest=ke.DocumentSelector=ke.NotebookCellTextDocumentFilter=ke.NotebookDocumentFilter=ke.TextDocumentFilter=void 0;ke.MonikerRequest=ke.MonikerKind=ke.UniquenessLevel=ke.WillDeleteFilesRequest=ke.DidDeleteFilesNotification=ke.WillRenameFilesRequest=ke.DidRenameFilesNotification=ke.WillCreateFilesRequest=ke.DidCreateFilesNotification=ke.FileOperationPatternKind=ke.LinkedEditingRangeRequest=ke.ShowDocumentRequest=ke.SemanticTokensRegistrationType=ke.SemanticTokensRefreshRequest=ke.SemanticTokensRangeRequest=ke.SemanticTokensDeltaRequest=ke.SemanticTokensRequest=ke.TokenFormat=ke.CallHierarchyPrepareRequest=ke.CallHierarchyOutgoingCallsRequest=ke.CallHierarchyIncomingCallsRequest=ke.WorkDoneProgressCancelNotification=ke.WorkDoneProgressCreateRequest=ke.WorkDoneProgress=ke.SelectionRangeRequest=ke.DeclarationRequest=ke.FoldingRangeRefreshRequest=ke.FoldingRangeRequest=ke.ColorPresentationRequest=ke.DocumentColorRequest=ke.ConfigurationRequest=ke.DidChangeWorkspaceFoldersNotification=ke.WorkspaceFoldersRequest=ke.TypeDefinitionRequest=ke.ImplementationRequest=ke.ApplyWorkspaceEditRequest=ke.ExecuteCommandRequest=ke.PrepareRenameRequest=ke.RenameRequest=ke.PrepareSupportDefaultBehavior=ke.DocumentOnTypeFormattingRequest=ke.DocumentRangesFormattingRequest=ke.DocumentRangeFormattingRequest=ke.DocumentFormattingRequest=ke.DocumentLinkResolveRequest=ke.DocumentLinkRequest=ke.CodeLensRefreshRequest=ke.CodeLensResolveRequest=ke.CodeLensRequest=ke.WorkspaceSymbolResolveRequest=void 0;ke.InlineCompletionRequest=ke.DidCloseNotebookDocumentNotification=ke.DidSaveNotebookDocumentNotification=ke.DidChangeNotebookDocumentNotification=ke.NotebookCellArrayChange=ke.DidOpenNotebookDocumentNotification=ke.NotebookDocumentSyncRegistrationType=ke.NotebookDocument=ke.NotebookCell=ke.ExecutionSummary=ke.NotebookCellKind=ke.DiagnosticRefreshRequest=ke.WorkspaceDiagnosticRequest=ke.DocumentDiagnosticRequest=ke.DocumentDiagnosticReportKind=ke.DiagnosticServerCancellationData=ke.InlayHintRefreshRequest=ke.InlayHintResolveRequest=ke.InlayHintRequest=ke.InlineValueRefreshRequest=ke.InlineValueRequest=ke.TypeHierarchySupertypesRequest=ke.TypeHierarchySubtypesRequest=ke.TypeHierarchyPrepareRequest=void 0;var Et=hi(),axe=(Uy(),D3(B6)),Sa=vA(),jrt=Rve();Object.defineProperty(ke,"ImplementationRequest",{enumerable:!0,get:o(function(){return jrt.ImplementationRequest},"get")});var Xrt=Mve();Object.defineProperty(ke,"TypeDefinitionRequest",{enumerable:!0,get:o(function(){return Xrt.TypeDefinitionRequest},"get")});var dbe=Pve();Object.defineProperty(ke,"WorkspaceFoldersRequest",{enumerable:!0,get:o(function(){return dbe.WorkspaceFoldersRequest},"get")});Object.defineProperty(ke,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:o(function(){return dbe.DidChangeWorkspaceFoldersNotification},"get")});var Krt=$ve();Object.defineProperty(ke,"ConfigurationRequest",{enumerable:!0,get:o(function(){return Krt.ConfigurationRequest},"get")});var pbe=Vve();Object.defineProperty(ke,"DocumentColorRequest",{enumerable:!0,get:o(function(){return pbe.DocumentColorRequest},"get")});Object.defineProperty(ke,"ColorPresentationRequest",{enumerable:!0,get:o(function(){return pbe.ColorPresentationRequest},"get")});var mbe=Wve();Object.defineProperty(ke,"FoldingRangeRequest",{enumerable:!0,get:o(function(){return mbe.FoldingRangeRequest},"get")});Object.defineProperty(ke,"FoldingRangeRefreshRequest",{enumerable:!0,get:o(function(){return mbe.FoldingRangeRefreshRequest},"get")});var Qrt=jve();Object.defineProperty(ke,"DeclarationRequest",{enumerable:!0,get:o(function(){return Qrt.DeclarationRequest},"get")});var Zrt=Qve();Object.defineProperty(ke,"SelectionRangeRequest",{enumerable:!0,get:o(function(){return Zrt.SelectionRangeRequest},"get")});var HG=t2e();Object.defineProperty(ke,"WorkDoneProgress",{enumerable:!0,get:o(function(){return HG.WorkDoneProgress},"get")});Object.defineProperty(ke,"WorkDoneProgressCreateRequest",{enumerable:!0,get:o(function(){return HG.WorkDoneProgressCreateRequest},"get")});Object.defineProperty(ke,"WorkDoneProgressCancelNotification",{enumerable:!0,get:o(function(){return HG.WorkDoneProgressCancelNotification},"get")});var YG=a2e();Object.defineProperty(ke,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:o(function(){return YG.CallHierarchyIncomingCallsRequest},"get")});Object.defineProperty(ke,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:o(function(){return YG.CallHierarchyOutgoingCallsRequest},"get")});Object.defineProperty(ke,"CallHierarchyPrepareRequest",{enumerable:!0,get:o(function(){return YG.CallHierarchyPrepareRequest},"get")});var yv=h2e();Object.defineProperty(ke,"TokenFormat",{enumerable:!0,get:o(function(){return yv.TokenFormat},"get")});Object.defineProperty(ke,"SemanticTokensRequest",{enumerable:!0,get:o(function(){return yv.SemanticTokensRequest},"get")});Object.defineProperty(ke,"SemanticTokensDeltaRequest",{enumerable:!0,get:o(function(){return yv.SemanticTokensDeltaRequest},"get")});Object.defineProperty(ke,"SemanticTokensRangeRequest",{enumerable:!0,get:o(function(){return yv.SemanticTokensRangeRequest},"get")});Object.defineProperty(ke,"SemanticTokensRefreshRequest",{enumerable:!0,get:o(function(){return yv.SemanticTokensRefreshRequest},"get")});Object.defineProperty(ke,"SemanticTokensRegistrationType",{enumerable:!0,get:o(function(){return yv.SemanticTokensRegistrationType},"get")});var Jrt=p2e();Object.defineProperty(ke,"ShowDocumentRequest",{enumerable:!0,get:o(function(){return Jrt.ShowDocumentRequest},"get")});var ent=y2e();Object.defineProperty(ke,"LinkedEditingRangeRequest",{enumerable:!0,get:o(function(){return ent.LinkedEditingRangeRequest},"get")});var Rm=E2e();Object.defineProperty(ke,"FileOperationPatternKind",{enumerable:!0,get:o(function(){return Rm.FileOperationPatternKind},"get")});Object.defineProperty(ke,"DidCreateFilesNotification",{enumerable:!0,get:o(function(){return Rm.DidCreateFilesNotification},"get")});Object.defineProperty(ke,"WillCreateFilesRequest",{enumerable:!0,get:o(function(){return Rm.WillCreateFilesRequest},"get")});Object.defineProperty(ke,"DidRenameFilesNotification",{enumerable:!0,get:o(function(){return Rm.DidRenameFilesNotification},"get")});Object.defineProperty(ke,"WillRenameFilesRequest",{enumerable:!0,get:o(function(){return Rm.WillRenameFilesRequest},"get")});Object.defineProperty(ke,"DidDeleteFilesNotification",{enumerable:!0,get:o(function(){return Rm.DidDeleteFilesNotification},"get")});Object.defineProperty(ke,"WillDeleteFilesRequest",{enumerable:!0,get:o(function(){return Rm.WillDeleteFilesRequest},"get")});var jG=R2e();Object.defineProperty(ke,"UniquenessLevel",{enumerable:!0,get:o(function(){return jG.UniquenessLevel},"get")});Object.defineProperty(ke,"MonikerKind",{enumerable:!0,get:o(function(){return jG.MonikerKind},"get")});Object.defineProperty(ke,"MonikerRequest",{enumerable:!0,get:o(function(){return jG.MonikerRequest},"get")});var XG=I2e();Object.defineProperty(ke,"TypeHierarchyPrepareRequest",{enumerable:!0,get:o(function(){return XG.TypeHierarchyPrepareRequest},"get")});Object.defineProperty(ke,"TypeHierarchySubtypesRequest",{enumerable:!0,get:o(function(){return XG.TypeHierarchySubtypesRequest},"get")});Object.defineProperty(ke,"TypeHierarchySupertypesRequest",{enumerable:!0,get:o(function(){return XG.TypeHierarchySupertypesRequest},"get")});var gbe=B2e();Object.defineProperty(ke,"InlineValueRequest",{enumerable:!0,get:o(function(){return gbe.InlineValueRequest},"get")});Object.defineProperty(ke,"InlineValueRefreshRequest",{enumerable:!0,get:o(function(){return gbe.InlineValueRefreshRequest},"get")});var KG=G2e();Object.defineProperty(ke,"InlayHintRequest",{enumerable:!0,get:o(function(){return KG.InlayHintRequest},"get")});Object.defineProperty(ke,"InlayHintResolveRequest",{enumerable:!0,get:o(function(){return KG.InlayHintResolveRequest},"get")});Object.defineProperty(ke,"InlayHintRefreshRequest",{enumerable:!0,get:o(function(){return KG.InlayHintRefreshRequest},"get")});var LT=j2e();Object.defineProperty(ke,"DiagnosticServerCancellationData",{enumerable:!0,get:o(function(){return LT.DiagnosticServerCancellationData},"get")});Object.defineProperty(ke,"DocumentDiagnosticReportKind",{enumerable:!0,get:o(function(){return LT.DocumentDiagnosticReportKind},"get")});Object.defineProperty(ke,"DocumentDiagnosticRequest",{enumerable:!0,get:o(function(){return LT.DocumentDiagnosticRequest},"get")});Object.defineProperty(ke,"WorkspaceDiagnosticRequest",{enumerable:!0,get:o(function(){return LT.WorkspaceDiagnosticRequest},"get")});Object.defineProperty(ke,"DiagnosticRefreshRequest",{enumerable:!0,get:o(function(){return LT.DiagnosticRefreshRequest},"get")});var Bu=txe();Object.defineProperty(ke,"NotebookCellKind",{enumerable:!0,get:o(function(){return Bu.NotebookCellKind},"get")});Object.defineProperty(ke,"ExecutionSummary",{enumerable:!0,get:o(function(){return Bu.ExecutionSummary},"get")});Object.defineProperty(ke,"NotebookCell",{enumerable:!0,get:o(function(){return Bu.NotebookCell},"get")});Object.defineProperty(ke,"NotebookDocument",{enumerable:!0,get:o(function(){return Bu.NotebookDocument},"get")});Object.defineProperty(ke,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:o(function(){return Bu.NotebookDocumentSyncRegistrationType},"get")});Object.defineProperty(ke,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:o(function(){return Bu.DidOpenNotebookDocumentNotification},"get")});Object.defineProperty(ke,"NotebookCellArrayChange",{enumerable:!0,get:o(function(){return Bu.NotebookCellArrayChange},"get")});Object.defineProperty(ke,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:o(function(){return Bu.DidChangeNotebookDocumentNotification},"get")});Object.defineProperty(ke,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:o(function(){return Bu.DidSaveNotebookDocumentNotification},"get")});Object.defineProperty(ke,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:o(function(){return Bu.DidCloseNotebookDocumentNotification},"get")});var tnt=ixe();Object.defineProperty(ke,"InlineCompletionRequest",{enumerable:!0,get:o(function(){return tnt.InlineCompletionRequest},"get")});var VG;(function(t){function e(r){let n=r;return Sa.string(n)||Sa.string(n.language)||Sa.string(n.scheme)||Sa.string(n.pattern)}o(e,"is"),t.is=e})(VG||(ke.TextDocumentFilter=VG={}));var qG;(function(t){function e(r){let n=r;return Sa.objectLiteral(n)&&(Sa.string(n.notebookType)||Sa.string(n.scheme)||Sa.string(n.pattern))}o(e,"is"),t.is=e})(qG||(ke.NotebookDocumentFilter=qG={}));var UG;(function(t){function e(r){let n=r;return Sa.objectLiteral(n)&&(Sa.string(n.notebook)||qG.is(n.notebook))&&(n.language===void 0||Sa.string(n.language))}o(e,"is"),t.is=e})(UG||(ke.NotebookCellTextDocumentFilter=UG={}));var WG;(function(t){function e(r){if(!Array.isArray(r))return!1;for(let n of r)if(!Sa.string(n)&&!VG.is(n)&&!UG.is(n))return!1;return!0}o(e,"is"),t.is=e})(WG||(ke.DocumentSelector=WG={}));var sxe;(function(t){t.method="client/registerCapability",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolRequestType(t.method)})(sxe||(ke.RegistrationRequest=sxe={}));var oxe;(function(t){t.method="client/unregisterCapability",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolRequestType(t.method)})(oxe||(ke.UnregistrationRequest=oxe={}));var lxe;(function(t){t.Create="create",t.Rename="rename",t.Delete="delete"})(lxe||(ke.ResourceOperationKind=lxe={}));var cxe;(function(t){t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo"})(cxe||(ke.FailureHandlingKind=cxe={}));var uxe;(function(t){t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32"})(uxe||(ke.PositionEncodingKind=uxe={}));var hxe;(function(t){function e(r){let n=r;return n&&Sa.string(n.id)&&n.id.length>0}o(e,"hasId"),t.hasId=e})(hxe||(ke.StaticRegistrationOptions=hxe={}));var fxe;(function(t){function e(r){let n=r;return n&&(n.documentSelector===null||WG.is(n.documentSelector))}o(e,"is"),t.is=e})(fxe||(ke.TextDocumentRegistrationOptions=fxe={}));var dxe;(function(t){function e(n){let i=n;return Sa.objectLiteral(i)&&(i.workDoneProgress===void 0||Sa.boolean(i.workDoneProgress))}o(e,"is"),t.is=e;function r(n){let i=n;return i&&Sa.boolean(i.workDoneProgress)}o(r,"hasWorkDoneProgress"),t.hasWorkDoneProgress=r})(dxe||(ke.WorkDoneProgressOptions=dxe={}));var pxe;(function(t){t.method="initialize",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(pxe||(ke.InitializeRequest=pxe={}));var mxe;(function(t){t.unknownProtocolVersion=1})(mxe||(ke.InitializeErrorCodes=mxe={}));var gxe;(function(t){t.method="initialized",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(gxe||(ke.InitializedNotification=gxe={}));var yxe;(function(t){t.method="shutdown",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType0(t.method)})(yxe||(ke.ShutdownRequest=yxe={}));var vxe;(function(t){t.method="exit",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType0(t.method)})(vxe||(ke.ExitNotification=vxe={}));var xxe;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(xxe||(ke.DidChangeConfigurationNotification=xxe={}));var bxe;(function(t){t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5})(bxe||(ke.MessageType=bxe={}));var Txe;(function(t){t.method="window/showMessage",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolNotificationType(t.method)})(Txe||(ke.ShowMessageNotification=Txe={}));var wxe;(function(t){t.method="window/showMessageRequest",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolRequestType(t.method)})(wxe||(ke.ShowMessageRequest=wxe={}));var kxe;(function(t){t.method="window/logMessage",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolNotificationType(t.method)})(kxe||(ke.LogMessageNotification=kxe={}));var Sxe;(function(t){t.method="telemetry/event",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolNotificationType(t.method)})(Sxe||(ke.TelemetryEventNotification=Sxe={}));var Exe;(function(t){t.None=0,t.Full=1,t.Incremental=2})(Exe||(ke.TextDocumentSyncKind=Exe={}));var Cxe;(function(t){t.method="textDocument/didOpen",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Cxe||(ke.DidOpenTextDocumentNotification=Cxe={}));var Axe;(function(t){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}o(e,"isIncremental"),t.isIncremental=e;function r(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}o(r,"isFull"),t.isFull=r})(Axe||(ke.TextDocumentContentChangeEvent=Axe={}));var _xe;(function(t){t.method="textDocument/didChange",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(_xe||(ke.DidChangeTextDocumentNotification=_xe={}));var Dxe;(function(t){t.method="textDocument/didClose",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Dxe||(ke.DidCloseTextDocumentNotification=Dxe={}));var Rxe;(function(t){t.method="textDocument/didSave",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Rxe||(ke.DidSaveTextDocumentNotification=Rxe={}));var Lxe;(function(t){t.Manual=1,t.AfterDelay=2,t.FocusOut=3})(Lxe||(ke.TextDocumentSaveReason=Lxe={}));var Nxe;(function(t){t.method="textDocument/willSave",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Nxe||(ke.WillSaveTextDocumentNotification=Nxe={}));var Mxe;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Mxe||(ke.WillSaveTextDocumentWaitUntilRequest=Mxe={}));var Ixe;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Ixe||(ke.DidChangeWatchedFilesNotification=Ixe={}));var Oxe;(function(t){t.Created=1,t.Changed=2,t.Deleted=3})(Oxe||(ke.FileChangeType=Oxe={}));var Pxe;(function(t){function e(r){let n=r;return Sa.objectLiteral(n)&&(axe.URI.is(n.baseUri)||axe.WorkspaceFolder.is(n.baseUri))&&Sa.string(n.pattern)}o(e,"is"),t.is=e})(Pxe||(ke.RelativePattern=Pxe={}));var Bxe;(function(t){t.Create=1,t.Change=2,t.Delete=4})(Bxe||(ke.WatchKind=Bxe={}));var Fxe;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolNotificationType(t.method)})(Fxe||(ke.PublishDiagnosticsNotification=Fxe={}));var $xe;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3})($xe||(ke.CompletionTriggerKind=$xe={}));var zxe;(function(t){t.method="textDocument/completion",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(zxe||(ke.CompletionRequest=zxe={}));var Gxe;(function(t){t.method="completionItem/resolve",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Gxe||(ke.CompletionResolveRequest=Gxe={}));var Vxe;(function(t){t.method="textDocument/hover",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Vxe||(ke.HoverRequest=Vxe={}));var qxe;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3})(qxe||(ke.SignatureHelpTriggerKind=qxe={}));var Uxe;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Uxe||(ke.SignatureHelpRequest=Uxe={}));var Wxe;(function(t){t.method="textDocument/definition",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Wxe||(ke.DefinitionRequest=Wxe={}));var Hxe;(function(t){t.method="textDocument/references",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Hxe||(ke.ReferencesRequest=Hxe={}));var Yxe;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Yxe||(ke.DocumentHighlightRequest=Yxe={}));var jxe;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(jxe||(ke.DocumentSymbolRequest=jxe={}));var Xxe;(function(t){t.method="textDocument/codeAction",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Xxe||(ke.CodeActionRequest=Xxe={}));var Kxe;(function(t){t.method="codeAction/resolve",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Kxe||(ke.CodeActionResolveRequest=Kxe={}));var Qxe;(function(t){t.method="workspace/symbol",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Qxe||(ke.WorkspaceSymbolRequest=Qxe={}));var Zxe;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Zxe||(ke.WorkspaceSymbolResolveRequest=Zxe={}));var Jxe;(function(t){t.method="textDocument/codeLens",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Jxe||(ke.CodeLensRequest=Jxe={}));var ebe;(function(t){t.method="codeLens/resolve",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(ebe||(ke.CodeLensResolveRequest=ebe={}));var tbe;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolRequestType0(t.method)})(tbe||(ke.CodeLensRefreshRequest=tbe={}));var rbe;(function(t){t.method="textDocument/documentLink",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(rbe||(ke.DocumentLinkRequest=rbe={}));var nbe;(function(t){t.method="documentLink/resolve",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(nbe||(ke.DocumentLinkResolveRequest=nbe={}));var ibe;(function(t){t.method="textDocument/formatting",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(ibe||(ke.DocumentFormattingRequest=ibe={}));var abe;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(abe||(ke.DocumentRangeFormattingRequest=abe={}));var sbe;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(sbe||(ke.DocumentRangesFormattingRequest=sbe={}));var obe;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(obe||(ke.DocumentOnTypeFormattingRequest=obe={}));var lbe;(function(t){t.Identifier=1})(lbe||(ke.PrepareSupportDefaultBehavior=lbe={}));var cbe;(function(t){t.method="textDocument/rename",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(cbe||(ke.RenameRequest=cbe={}));var ube;(function(t){t.method="textDocument/prepareRename",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(ube||(ke.PrepareRenameRequest=ube={}));var hbe;(function(t){t.method="workspace/executeCommand",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(hbe||(ke.ExecuteCommandRequest=hbe={}));var fbe;(function(t){t.method="workspace/applyEdit",t.messageDirection=Et.MessageDirection.serverToClient,t.type=new Et.ProtocolRequestType("workspace/applyEdit")})(fbe||(ke.ApplyWorkspaceEditRequest=fbe={}))});var xbe=Jt(MA=>{"use strict";Object.defineProperty(MA,"__esModule",{value:!0});MA.createProtocolConnection=void 0;var vbe=Dm();function rnt(t,e,r,n){return vbe.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,vbe.createMessageConnection)(t,e,r,n)}o(rnt,"createProtocolConnection");MA.createProtocolConnection=rnt});var Tbe=Jt(ko=>{"use strict";var nnt=ko&&ko.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[r]},"get")}),Object.defineProperty(t,n,i)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),IA=ko&&ko.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&nnt(e,t,r)};Object.defineProperty(ko,"__esModule",{value:!0});ko.LSPErrorCodes=ko.createProtocolConnection=void 0;IA(Dm(),ko);IA((Uy(),D3(B6)),ko);IA(hi(),ko);IA(ybe(),ko);var int=xbe();Object.defineProperty(ko,"createProtocolConnection",{enumerable:!0,get:o(function(){return int.createProtocolConnection},"get")});var bbe;(function(t){t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800})(bbe||(ko.LSPErrorCodes=bbe={}))});var kbe=Jt(Fu=>{"use strict";var ant=Fu&&Fu.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:o(function(){return e[r]},"get")}),Object.defineProperty(t,n,i)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),wbe=Fu&&Fu.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&ant(e,t,r)};Object.defineProperty(Fu,"__esModule",{value:!0});Fu.createProtocolConnection=void 0;var snt=IG();wbe(IG(),Fu);wbe(Tbe(),Fu);function ont(t,e,r,n){return(0,snt.createMessageConnection)(t,e,r,n)}o(ont,"createProtocolConnection");Fu.createProtocolConnection=ont});var tp,QG=I(()=>{"use strict";(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}o(e,"create"),t.create=e})(tp||(tp={}))});var vv,NT,ZG=I(()=>{"use strict";vv=Aa(kbe(),1);Rl();QG();Hd();Nl();Ms();Sc();Jy();NT=class{static{o(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new us,this.documentPhaseListeners=new us,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Nr.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}async build(e,r={},n=Ar.CancellationToken.None){for(let i of e){let a=i.uri.toString();if(i.state===Nr.Validated){if(typeof r.validation=="boolean"&&r.validation)this.resetToState(i,Nr.IndexedReferences);else if(typeof r.validation=="object"){let s=this.findMissingValidationCategories(i,r);s.length>0&&(this.buildState.set(a,{completed:!1,options:{validation:{categories:s}},result:this.buildState.get(a)?.result}),i.state=Nr.IndexedReferences)}}else this.buildState.delete(a)}this.currentState=Nr.Changed,await this.emitUpdate(e.map(i=>i.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=Ar.CancellationToken.None){this.currentState=Nr.Changed;let i=[];for(let u of r){let h=this.langiumDocuments.deleteDocuments(u);for(let f of h)i.push(f.uri),this.cleanUpDeleted(f)}let a=(await Promise.all(e.map(u=>this.findChangedUris(u)))).flat();for(let u of a){let h=this.langiumDocuments.getDocument(u);h===void 0&&(h=this.langiumDocumentFactory.fromModel({$type:"INVALID"},u),h.state=Nr.Changed,this.langiumDocuments.addDocument(h)),this.resetToState(h,Nr.Changed)}let s=Or(a).concat(i).map(u=>u.toString()).toSet();this.langiumDocuments.all.filter(u=>!s.has(u.uri.toString())&&this.shouldRelink(u,s)).forEach(u=>this.resetToState(u,Nr.ComputedScopes)),await this.emitUpdate(a,i),await Ti(n);let l=this.sortDocuments(this.langiumDocuments.all.filter(u=>u.state=1}findMissingValidationCategories(e,r){let n=this.buildState.get(e.uri.toString()),i=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),a=n?.result?.validationChecks?new Set(n?.result?.validationChecks):n?.completed?i:new Set,s=r===void 0||r.validation===!0?i:typeof r.validation=="object"?r.validation.categories??i:[];return Or(s).filter(l=>!a.has(l)).toArray()}async findChangedUris(e){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{let n=await this.fileSystemProvider.stat(e);if(n.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(n))return[e]}catch{}return[]}async emitUpdate(e,r){await Promise.all(this.updateListeners.map(n=>n(e,r)))}sortDocuments(e){let r=0,n=e.length-1;for(;r=0&&!this.hasTextDocument(e[n]);)n--;rn.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),tp.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}resetToState(e,r){switch(r){case Nr.Changed:case Nr.Parsed:this.indexManager.removeContent(e.uri);case Nr.IndexedContent:e.localSymbols=void 0;case Nr.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case Nr.Linked:this.indexManager.removeReferences(e.uri);case Nr.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case Nr.Validated:}e.state>r&&(e.state=r)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=Nr.Changed}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,Nr.Parsed,n,s=>this.langiumDocumentFactory.update(s,n)),await this.runCancelable(e,Nr.IndexedContent,n,s=>this.indexManager.updateContent(s,n)),await this.runCancelable(e,Nr.ComputedScopes,n,async s=>{let l=this.serviceRegistry.getServices(s.uri).references.ScopeComputation;s.localSymbols=await l.collectLocalSymbols(s,n)});let i=e.filter(s=>this.shouldLink(s));await this.runCancelable(i,Nr.Linked,n,s=>this.serviceRegistry.getServices(s.uri).references.Linker.link(s,n)),await this.runCancelable(i,Nr.IndexedReferences,n,s=>this.indexManager.updateReferences(s,n));let a=e.filter(s=>this.shouldValidate(s)?!0:(this.markAsCompleted(s),!1));await this.runCancelable(a,Nr.Validated,n,async s=>{await this.validate(s,n),this.markAsCompleted(s)})}markAsCompleted(e){let r=this.buildState.get(e.uri.toString());r&&(r.completed=!0)}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a?.result})}}async runCancelable(e,r,n,i){for(let s of e)s.states.state===r);await this.notifyBuildPhase(a,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),tp.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),tp.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;return r&&"path"in r?i=r:n=r,n??(n=Ar.CancellationToken.None),i?this.awaitDocumentState(e,i,n):this.awaitBuilderState(e,n)}awaitDocumentState(e,r,n){let i=this.langiumDocuments.getDocument(r);if(i){if(i.state>=e)return Promise.resolve(r);if(n.isCancellationRequested)return Promise.reject(Ll);if(this.currentState>=e&&e>i.state)return Promise.reject(new vv.ResponseError(vv.LSPErrorCodes.RequestFailed,`Document state of ${r.toString()} is ${Nr[i.state]}, requiring ${Nr[e]}, but workspace state is already ${Nr[this.currentState]}. Returning undefined.`))}else return Promise.reject(new vv.ResponseError(vv.LSPErrorCodes.ServerCancelled,`No document found for URI: ${r.toString()}`));return new Promise((a,s)=>{let l=this.onDocumentPhase(e,h=>{Ii.equals(h.uri,r)&&(l.dispose(),u.dispose(),a(h.uri))}),u=n.onCancellationRequested(()=>{l.dispose(),u.dispose(),s(Ll)})})}awaitBuilderState(e,r){return this.currentState>=e?Promise.resolve():r.isCancellationRequested?Promise.reject(Ll):new Promise((n,i)=>{let a=this.onBuildPhase(e,()=>{a.dispose(),s.dispose(),n()}),s=r.onCancellationRequested(()=>{a.dispose(),s.dispose(),i(Ll)})})}async notifyDocumentPhase(e,r,n){let a=this.documentPhaseListeners.get(r).slice();for(let s of a)try{await Ti(n),await s(e,n)}catch(l){if(!Iu(l))throw l}}async notifyBuildPhase(e,r,n){if(e.length===0)return;let a=this.buildPhaseListeners.get(r).slice();for(let s of a)await Ti(n),await s(e,n)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e),a=typeof i.validation=="object"?{...i.validation}:{};a.categories=this.findMissingValidationCategories(e,i);let s=await n.validateDocument(e,a,r);e.diagnostics?e.diagnostics.push(...s):e.diagnostics=s;let l=this.buildState.get(e.uri.toString());l&&(l.result??(l.result={}),l.result.validationChecks?l.result.validationChecks=Or(l.result.validationChecks).concat(a.categories).distinct().toArray():l.result.validationChecks=[...a.categories])}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}}});var MT,JG=I(()=>{"use strict";ls();Z6();Rl();Ms();Sc();MT=class{static{o(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new Cm,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=os(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{Ii.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),Or(i)}allElements(e,r){let n=Or(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){return r?this.symbolByTypeIndex.get(e,r,()=>(this.symbolIndex.get(e)??[]).filter(a=>this.astReflection.isSubtype(a.type,r))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r)}removeReferences(e){let r=e.toString();this.referenceIndex.delete(r)}async updateContent(e,r=Ar.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,r),a=e.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(e,r=Ar.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),i)}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var IT,eV=I(()=>{"use strict";Rl();Nl();Sc();Ms();IT=class{static{o(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new zs,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(r=>this.initializeWorkspace(this.folders??[],r))}async initializeWorkspace(e,r=Ar.CancellationToken.None){let n=await this.performStartup(e);await Ti(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){let r=[],n=o(s=>{r.push(s),this.langiumDocuments.hasDocument(s.uri)||this.langiumDocuments.addDocument(s)},"collector");await this.loadAdditionalDocuments(e,n);let i=[];await Promise.all(e.map(s=>this.getRootFolder(s)).map(async s=>this.traverseFolder(s,i)));let a=Or(i).distinct(s=>s.toString()).filter(s=>!this.langiumDocuments.hasDocument(s));return await this.loadWorkspaceDocuments(a,n),this._ready.resolve(),r}async loadWorkspaceDocuments(e,r){await Promise.all(e.map(async n=>{let i=await this.langiumDocuments.getOrCreateDocument(n);r(i)}))}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return ia.parse(e.uri)}async traverseFolder(e,r){try{let n=await this.fileSystemProvider.readDirectory(e);await Promise.all(n.map(async i=>{this.shouldIncludeEntry(i)&&(i.isDirectory?await this.traverseFolder(i.uri,r):i.isFile&&r.push(i.uri))}))}catch(n){console.error("Failure to read directory content of "+e.toString(!0),n)}}async searchFolder(e){let r=[];return await this.traverseFolder(e,r),r}shouldIncludeEntry(e){let r=Ii.basename(e.uri);return r.startsWith(".")?!1:e.isDirectory?r!=="node_modules"&&r!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}}});function PA(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function rV(t){return t&&"modes"in t&&"defaultMode"in t}function tV(t){return!PA(t)&&!rV(t)}var OT,OA,Lm,BA=I(()=>{"use strict";Vd();OT=class{static{o(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,r,n,i,a){return Sy.buildUnexpectedCharactersMessage(e,r,n,i,a)}buildUnableToPopLexerModeMessage(e){return Sy.buildUnableToPopLexerModeMessage(e)}},OA={mode:"full"},Lm=class{static{o(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=tV(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new li(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=OA){let n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:n.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(tV(e))return e;let r=rV(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};o(PA,"isTokenTypeArray");o(rV,"isIMultiModeLexerDefinition");o(tV,"isTokenTypeDictionary")});function aV(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=nn.create(0,0));let a=Cbe(t),s=oV(n),l=cnt({lines:a,position:i,options:s});return pnt({index:0,tokens:l,position:i})}function sV(t,e){let r=oV(e),n=Cbe(t);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],s=r.start,l=r.end;return!!s?.exec(i)&&!!l?.exec(a)}function Cbe(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(QB)}function cnt(t){let e=[],r=t.position.line,n=t.position.character;for(let i=0;i=l.length){if(e.length>0){let f=nn.create(r,n);e.push({type:"break",content:"",range:Yr.create(f,f)})}}else{Sbe.lastIndex=u;let f=Sbe.exec(l);if(f){let d=f[0],p=f[1],m=nn.create(r,n+u),g=nn.create(r,n+u+d.length);e.push({type:"tag",content:p,range:Yr.create(m,g)}),u+=d.length,u=iV(l,u)}if(u0&&e[e.length-1].type==="break"?e.slice(0,-1):e}function unt(t,e,r,n){let i=[];if(t.length===0){let a=nn.create(r,n),s=nn.create(r,n+e.length);i.push({type:"text",content:e,range:Yr.create(a,s)})}else{let a=0;for(let l of t){let u=l.index,h=e.substring(a,u);h.length>0&&i.push({type:"text",content:e.substring(a,u),range:Yr.create(nn.create(r,a+n),nn.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Yr.create(nn.create(r,a+f+n),nn.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Yr.create(nn.create(r,a+f+n),nn.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Yr.create(nn.create(r,a+f+n),nn.create(r,a+f+n))});a=u+l[0].length}let s=e.substring(a);s.length>0&&i.push({type:"text",content:s,range:Yr.create(nn.create(r,a+n),nn.create(r,a+n+s.length))})}return i}function iV(t,e){let r=t.substring(e).match(hnt);return r?e+r.index:t.length}function dnt(t){let e=t.match(fnt);if(e&&typeof e.index=="number")return e.index}function pnt(t){let e=nn.create(t.position.line,t.position.character);if(t.tokens.length===0)return new FA([],Yr.create(e,e));let r=[];for(;t.index0){let s=iV(e,n);i=e.substring(s),e=e.substring(0,n)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(i=`\`${i}\``),r.renderLink?.(e,i)??xnt(e,i)}}function xnt(t,e){try{return ia.parse(t,!0),`[${e}](${t})`}catch{return t}}function Ebe(t){return t.endsWith(` `)?` `:` -`}var bme,lje,hje,fje,a6,Zb,Jb,s6,_B=M(()=>{"use strict";BP();l1();Qc();o(SB,"parseJSDoc");o(CB,"isJSDoc");o(wme,"getLines");bme=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,lje=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(cje,"tokenize");o(uje,"buildInlineTokens");hje=/\S/,fje=/\s*$/;o(EB,"skipWhitespace");o(dje,"lastCharacter");o(pje,"parseJSDocComment");o(mje,"parseJSDocElement");o(gje,"appendEmptyLine");o(kme,"parseJSDocText");o(yje,"parseJSDocInline");o(Eme,"parseJSDocTag");o(Sme,"parseJSDocLine");o(AB,"normalizeOptions");o(kB,"normalizeOption");a6=class{static{o(this,"JSDocCommentImpl")}constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=Tme(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=Tme(r)+i}return r.trim()}},Zb=class{static{o(this,"JSDocTagImpl")}constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e} -${r}`),this.inline?`{${e}}`:e}toMarkdown(e){var r,n;return(n=(r=e?.renderTag)===null||r===void 0?void 0:r.call(e,this))!==null&&n!==void 0?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let a=vje(this.name,r,e??{});if(typeof a=="string")return a}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} -${r}`),this.inline?`{${i}}`:i}};o(vje,"renderInlineTag");o(xje,"renderLinkDefault");Jb=class{static{o(this,"JSDocTextImpl")}constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;rn.range.start.line&&(e+=` +`}var Sbe,lnt,hnt,fnt,FA,PT,BT,$A,lV=I(()=>{"use strict";Uy();py();Sc();o(aV,"parseJSDoc");o(sV,"isJSDoc");o(Cbe,"getLines");Sbe=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,lnt=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(cnt,"tokenize");o(unt,"buildInlineTokens");hnt=/\S/,fnt=/\s*$/;o(iV,"skipWhitespace");o(dnt,"lastCharacter");o(pnt,"parseJSDocComment");o(mnt,"parseJSDocElement");o(gnt,"appendEmptyLine");o(Abe,"parseJSDocText");o(ynt,"parseJSDocInline");o(_be,"parseJSDocTag");o(Dbe,"parseJSDocLine");o(oV,"normalizeOptions");o(nV,"normalizeOption");FA=class{static{o(this,"JSDocCommentImpl")}constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=Ebe(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=Ebe(r)+i}return r.trim()}},PT=class{static{o(this,"JSDocTagImpl")}constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e} +${r}`),this.inline?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let a=vnt(this.name,r,e??{});if(typeof a=="string")return a}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} +${r}`),this.inline?`{${i}}`:i}};o(vnt,"renderInlineTag");o(xnt,"renderLinkDefault");BT=class{static{o(this,"JSDocTextImpl")}constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;rn.range.start.line&&(e+=` `)}return e}toMarkdown(e){let r="";for(let n=0;ni.range.start.line&&(r+=` -`)}return r}},s6=class{static{o(this,"JSDocLineImpl")}constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(Tme,"fillNewlines")});var e4,DB=M(()=>{"use strict";hs();_B();e4=class{static{o(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&CB(r))return SB(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(e,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(e,i),"renderTag")})}documentationLinkRenderer(e,r,n){var i;let a=(i=this.findNameInPrecomputedScopes(e,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(e,r);if(a&&a.nameSegment){let s=a.nameSegment.range.start.line+1,l=a.nameSegment.range.start.character+1,u=a.documentUri.with({fragment:`L${s},${l}`});return`[${n}](${u.toString()})`}else return}documentationTagRenderer(e,r){}findNameInPrecomputedScopes(e,r){let i=Ua(e).precomputedScopes;if(!i)return;let a=e;do{let l=i.get(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var t4,LB=M(()=>{"use strict";JS();Bl();t4=class{static{o(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return hB(e)?e.$comment:(r=jI(e.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var r4,RB,NB,MB=M(()=>{"use strict";tl();t6();r4=class{static{o(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},RB=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){let n=await this.acquireParserWorker(r),i=new gs,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new gs;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(jc)}),this.queue.push(r),r.promise}},NB=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new ei.Emitter,this.deferred=new gs,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(a=>{let s=a;this.deferred.resolve(s),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(jc),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new gs,this.sendMessage(e),this.deferred.promise}}});var n4,IB=M(()=>{"use strict";el();tl();n4=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new br.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=jS();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=br.CancellationToken.None){let i=new gs,a={action:r,deferred:i,cancellationToken:n};return e.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){Kc(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var i4,OB=M(()=>{"use strict";$S();Hc();Pl();hs();H1();Bl();i4=class{static{o(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new Qp,this.tokenTypeIdMap=new Qp,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>Object.assign(Object.assign({},r),{message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of Jo(e))r.set(i,{});if(e.$cstNode)for(let i of Dp(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)li(l)?s.push(this.dehydrateAstNode(l,r)):wa(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else li(a)?n[i]=this.dehydrateAstNode(a,r):wa(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return Rx(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),Ol(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):If(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let a of Jo(e))r.set(a,{});let i;if(e.$cstNode)for(let a of Dp(e.$cstNode)){let s;"fullText"in a?(s=new B1(a.fullText),i=s):"content"in a?s=new Xp:"tokenType"in a&&(s=this.hydrateCstLeafNode(a)),s&&(n.set(a,s),s.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)li(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):wa(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else li(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):wa(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),Ol(i))for(let a of e.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,a=e.startLine,s=e.startColumn,l=e.endLine,u=e.endColumn,h=e.hidden;return new Yp(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let r of Jo(this.grammar))$x(r)&&this.grammarElementIdMap.set(r,e++)}}});function ka(t){return{documentation:{CommentProvider:o(e=>new t4(e),"CommentProvider"),DocumentationProvider:o(e=>new e4(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new r4(e),"AsyncParser"),GrammarConfig:o(e=>PO(e),"GrammarConfig"),LangiumParser:o(e=>HP(e),"LangiumParser"),CompletionParser:o(e=>VP(e),"CompletionParser"),ValueConverter:o(()=>new Kp,"ValueConverter"),TokenBuilder:o(()=>new th,"TokenBuilder"),Lexer:o(e=>new e0(e),"Lexer"),ParserErrorMessageProvider:o(()=>new F1,"ParserErrorMessageProvider"),LexerErrorMessageProvider:o(()=>new Qb,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new Wb,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new Hb(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new qb(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new Nb(e),"Linker"),NameProvider:o(()=>new Mb,"NameProvider"),ScopeProvider:o(e=>new Fb(e),"ScopeProvider"),ScopeComputation:o(e=>new Ob(e),"ScopeComputation"),References:o(e=>new Ib(e),"References")},serializer:{Hydrator:o(e=>new i4(e),"Hydrator"),JsonSerializer:o(e=>new $b(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new Ub(e),"DocumentValidator"),ValidationRegistry:o(e=>new Gb(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}function Ea(t){return{ServiceRegistry:o(e=>new zb(e),"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new Rb(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new Lb(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new Xb(e),"DocumentBuilder"),IndexManager:o(e=>new jb(e),"IndexManager"),WorkspaceManager:o(e=>new Kb(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new n4,"WorkspaceLock"),ConfigurationProvider:o(e=>new Yb(e),"ConfigurationProvider")}}}var PB=M(()=>{"use strict";BO();UP();qP();HS();WP();aB();sB();oB();lB();uB();JS();fB();dB();Vb();pB();mB();gB();vB();U1();xB();bB();i6();DB();LB();_b();MB();IB();OB();o(ka,"createDefaultCoreModule");o(Ea,"createDefaultSharedCoreModule")});function Hn(t,e,r,n,i,a,s,l,u){let h=[t,e,r,n,i,a,s,l,u].reduce(o6,{});return Lme(h)}function Dme(t){if(t&&t[_me])for(let e of Object.values(t))Dme(e);return t}function Lme(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),set:o(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:o((n,i)=>i===_me?!0:Ame(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(Ame(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Object.getOwnPropertyNames(t)],"ownKeys")});return r}function Ame(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:t[e]});if(t[e]===Cme)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=Cme;try{t[e]=typeof i=="function"?i(n):Lme(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}function o6(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!==void 0){let i=t[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?t[r]=o6(i,n):t[r]=n}}return t}var BB,_me,Cme,FB=M(()=>{"use strict";(function(t){t.merge=(e,r)=>o6(o6({},e),r)})(BB||(BB={}));o(Hn,"inject");_me=Symbol("isProxy");o(Dme,"eagerLoad");o(Lme,"_inject");Cme=Symbol();o(Ame,"_resolve");o(o6,"_merge")});var Rme=M(()=>{"use strict"});var Nme=M(()=>{"use strict";LB();DB();_B()});var Mme=M(()=>{"use strict"});var Ime=M(()=>{"use strict";BO();Mme()});var $B,t0,l6,zB,Ome=M(()=>{"use strict";Ff();HS();i6();$B={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(t){t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation"})(t0||(t0={}));l6=class extends th{static{o(this,"IndentationAwareTokenBuilder")}constructor(e=$B){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options=Object.assign(Object.assign({},$B),e),this.indentTokenType=Pf({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=Pf({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!n6(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:a,whitespaceTokenName:s,ignoreIndentationDelimiters:l}=this.options,u,h,f,d=[];for(let p of n){for(let[m,g]of l)p.name===m?p.PUSH_MODE=t0.IGNORE_INDENTATION:p.name===g&&(p.POP_MODE=!0);p.name===a?u=p:p.name===i?h=p:p.name===s?f=p:d.push(p)}if(!u||!h||!f)throw new Error("Some indentation/whitespace tokens not found!");return l.length>0?{modes:{[t0.REGULAR]:[u,h,...d,f],[t0.IGNORE_INDENTATION]:[...d,f]},defaultMode:t0.REGULAR}:[u,h,f,...d]}flushLexingReport(e){let r=super.flushLexingReport(e);return Object.assign(Object.assign({},r),{remainingDedents:this.flushRemainingDedents(e)})}isStartOfLine(e,r){return r===0||`\r -`.includes(e[r-1])}matchWhitespace(e,r,n,i){var a;this.whitespaceRegExp.lastIndex=r;let s=this.whitespaceRegExp.exec(e);return{currIndentLevel:(a=s?.[0].length)!==null&&a!==void 0?a:0,prevIndentLevel:this.indentationStack.at(-1),match:s}}createIndentationTokenInstance(e,r,n,i){let a=this.getLineNumber(r,i);return Qu(e,n,i,i+n.length,a,a,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:s,match:l}=this.matchWhitespace(e,r,n,i);return a<=s?null:(this.indentationStack.push(a),l)}dedentMatcher(e,r,n,i){var a,s,l,u;if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:h,prevIndentLevel:f,match:d}=this.matchWhitespace(e,r,n,i);if(h>=f)return null;let p=this.indentationStack.lastIndexOf(h);if(p===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${h} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:(s=(a=d?.[0])===null||a===void 0?void 0:a.length)!==null&&s!==void 0?s:0,line:this.getLineNumber(e,r),column:1}),null;let m=this.indentationStack.length-p-1,g=(u=(l=e.substring(0,r).match(/[\r\n]+$/))===null||l===void 0?void 0:l[0].length)!==null&&u!==void 0?u:1;for(let y=0;y1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},zB=class extends e0{static{o(this,"IndentationAwareLexer")}constructor(e){if(super(e),e.parser.TokenBuilder instanceof l6)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=r6){let n=super.tokenize(e),i=n.report;r?.mode==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:a,dedentTokenType:s}=this.indentationTokenBuilder,l=a.tokenTypeIdx,u=s.tokenTypeIdx,h=[],f=n.tokens.length-1;for(let d=0;d=0&&h.push(n.tokens[f]),n.tokens=h,n}}});var Pme=M(()=>{"use strict"});var Bme=M(()=>{"use strict";MB();UP();$S();Ome();qP();_b();i6();US();Pme();HS();WP()});var Fme=M(()=>{"use strict";aB();sB();oB();cB();lB();uB()});var $me=M(()=>{"use strict";OB();JS()});var c6,Sa,GB=M(()=>{"use strict";c6=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},Sa={fileSystemProvider:o(()=>new c6,"fileSystemProvider")}});function wje(){let t=Hn(Ea(Sa),Tje),e=Hn(ka({shared:t}),bje);return t.ServiceRegistry.register(e),e}function Zc(t){var e;let r=wje(),n=r.serializer.JsonSerializer.deserialize(t);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,ys.parse(`memory://${(e=n.name)!==null&&e!==void 0?e:"grammar"}.langium`)),n}var bje,Tje,zme=M(()=>{"use strict";PB();FB();Hc();GB();Qc();bje={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Tje={AstReflection:o(()=>new i1,"AstReflection")};o(wje,"createMinimalGrammarServices");o(Zc,"loadGrammarFromJson")});var Xr={};dr(Xr,{AstUtils:()=>VE,BiMap:()=>Qp,Cancellation:()=>br,ContextCache:()=>Zp,CstUtils:()=>NE,DONE_RESULT:()=>Ga,Deferred:()=>gs,Disposable:()=>Gf,DisposableCache:()=>W1,DocumentCache:()=>QS,EMPTY_STREAM:()=>Nx,ErrorWithLocation:()=>Rp,GrammarUtils:()=>YE,MultiMap:()=>Vl,OperationCancelled:()=>jc,Reduction:()=>vg,RegExpUtils:()=>qE,SimpleCache:()=>Bb,StreamImpl:()=>po,TreeStreamImpl:()=>Gc,URI:()=>ys,UriUtils:()=>vs,WorkspaceCache:()=>Y1,assertUnreachable:()=>Uc,delayNextTick:()=>tB,interruptAndCheck:()=>bi,isOperationCancelled:()=>Kc,loadGrammarFromJson:()=>Zc,setInterruptionPeriod:()=>ume,startCancelableOperation:()=>jS,stream:()=>an});var Gme=M(()=>{"use strict";ZS();t6();Lr(Xr,ei);H1();yB();ME();zme();tl();Ys();Qc();hs();el();Bl();zl();l1()});var Vme=M(()=>{"use strict";dB();Vb()});var Ume=M(()=>{"use strict";pB();mB();gB();vB();U1();GB();xB();IB();bB()});var Ca={};dr(Ca,{AbstractAstReflection:()=>Ap,AbstractCstNode:()=>Eb,AbstractLangiumParser:()=>Sb,AbstractParserErrorMessageProvider:()=>GS,AbstractThreadedAsyncParser:()=>RB,AstUtils:()=>VE,BiMap:()=>Qp,Cancellation:()=>br,CompositeCstNodeImpl:()=>Xp,ContextCache:()=>Zp,CstNodeBuilder:()=>kb,CstUtils:()=>NE,DEFAULT_TOKENIZE_OPTIONS:()=>r6,DONE_RESULT:()=>Ga,DatatypeSymbol:()=>zS,DefaultAstNodeDescriptionProvider:()=>Hb,DefaultAstNodeLocator:()=>Wb,DefaultAsyncParser:()=>r4,DefaultCommentProvider:()=>t4,DefaultConfigurationProvider:()=>Yb,DefaultDocumentBuilder:()=>Xb,DefaultDocumentValidator:()=>Ub,DefaultHydrator:()=>i4,DefaultIndexManager:()=>jb,DefaultJsonSerializer:()=>$b,DefaultLangiumDocumentFactory:()=>Lb,DefaultLangiumDocuments:()=>Rb,DefaultLexer:()=>e0,DefaultLexerErrorMessageProvider:()=>Qb,DefaultLinker:()=>Nb,DefaultNameProvider:()=>Mb,DefaultReferenceDescriptionProvider:()=>qb,DefaultReferences:()=>Ib,DefaultScopeComputation:()=>Ob,DefaultScopeProvider:()=>Fb,DefaultServiceRegistry:()=>zb,DefaultTokenBuilder:()=>th,DefaultValueConverter:()=>Kp,DefaultWorkspaceLock:()=>n4,DefaultWorkspaceManager:()=>Kb,Deferred:()=>gs,Disposable:()=>Gf,DisposableCache:()=>W1,DocumentCache:()=>QS,DocumentState:()=>Ln,DocumentValidator:()=>rl,EMPTY_SCOPE:()=>oje,EMPTY_STREAM:()=>Nx,EmptyFileSystem:()=>Sa,EmptyFileSystemProvider:()=>c6,ErrorWithLocation:()=>Rp,GrammarAST:()=>Gx,GrammarUtils:()=>YE,IndentationAwareLexer:()=>zB,IndentationAwareTokenBuilder:()=>l6,JSDocDocumentationProvider:()=>e4,LangiumCompletionParser:()=>Ab,LangiumParser:()=>Cb,LangiumParserErrorMessageProvider:()=>F1,LeafCstNodeImpl:()=>Yp,LexingMode:()=>t0,MapScope:()=>Pb,Module:()=>BB,MultiMap:()=>Vl,OperationCancelled:()=>jc,ParserWorker:()=>NB,Reduction:()=>vg,RegExpUtils:()=>qE,RootCstNodeImpl:()=>B1,SimpleCache:()=>Bb,StreamImpl:()=>po,StreamScope:()=>q1,TextDocument:()=>G1,TreeStreamImpl:()=>Gc,URI:()=>ys,UriUtils:()=>vs,ValidationCategory:()=>X1,ValidationRegistry:()=>Gb,ValueConverter:()=>Xc,WorkspaceCache:()=>Y1,assertUnreachable:()=>Uc,createCompletionParser:()=>VP,createDefaultCoreModule:()=>ka,createDefaultSharedCoreModule:()=>Ea,createGrammarConfig:()=>PO,createLangiumParser:()=>HP,createParser:()=>Db,delayNextTick:()=>tB,diagnosticData:()=>Jp,eagerLoad:()=>Dme,getDiagnosticRange:()=>vme,indentationBuilderDefaultOptions:()=>$B,inject:()=>Hn,interruptAndCheck:()=>bi,isAstNode:()=>li,isAstNodeDescription:()=>qI,isAstNodeWithComment:()=>hB,isCompositeCstNode:()=>Ol,isIMultiModeLexerDefinition:()=>wB,isJSDoc:()=>CB,isLeafCstNode:()=>If,isLinkingError:()=>_p,isNamed:()=>gme,isOperationCancelled:()=>Kc,isReference:()=>wa,isRootCstNode:()=>Rx,isTokenTypeArray:()=>n6,isTokenTypeDictionary:()=>TB,loadGrammarFromJson:()=>Zc,parseJSDoc:()=>SB,prepareLangiumParser:()=>nme,setInterruptionPeriod:()=>ume,startCancelableOperation:()=>jS,stream:()=>an,toDiagnosticData:()=>xme,toDiagnosticSeverity:()=>e6});var vo=M(()=>{"use strict";PB();FB();fB();Rme();Pl();Nme();Ime();Bme();Fme();$me();Gme();Lr(Ca,Xr);Vme();Ume();Hc()});function Qme(t){return Ul.isInstance(t,a4)}function Zme(t){return Ul.isInstance(t,j1)}function Jme(t){return Ul.isInstance(t,K1)}function ege(t){return Ul.isInstance(t,Q1)}function tge(t){return Ul.isInstance(t,s4)}function rge(t){return Ul.isInstance(t,Z1)}function nge(t){return Ul.isInstance(t,o4)}function ige(t){return Ul.isInstance(t,l4)}function age(t){return Ul.isInstance(t,c4)}function sge(t){return Ul.isInstance(t,u4)}function oge(t){return Ul.isInstance(t,h4)}var kje,Tt,QB,a4,u6,j1,h6,f6,VB,K1,UB,HB,qB,Q1,WB,s4,d6,YB,Z1,XB,o4,l4,c4,u4,y6,jB,h4,KB,p6,m6,g6,lge,Ul,Hme,Eje,qme,Sje,Wme,Cje,Yme,Aje,Xme,_je,jme,Dje,Kme,Lje,Rje,Nje,Mje,Ije,Oje,Pje,Bje,xs,ZB,JB,eF,tF,rF,nF,iF,Fje,$je,zje,Gje,Vf,rh,qa,Vje,Wa=M(()=>{"use strict";vo();vo();vo();vo();kje=Object.defineProperty,Tt=o((t,e)=>kje(t,"name",{value:e,configurable:!0}),"__name"),QB="Statement",a4="Architecture";o(Qme,"isArchitecture");Tt(Qme,"isArchitecture");u6="Axis",j1="Branch";o(Zme,"isBranch");Tt(Zme,"isBranch");h6="Checkout",f6="CherryPicking",VB="ClassDefStatement",K1="Commit";o(Jme,"isCommit");Tt(Jme,"isCommit");UB="Curve",HB="Edge",qB="Entry",Q1="GitGraph";o(ege,"isGitGraph");Tt(ege,"isGitGraph");WB="Group",s4="Info";o(tge,"isInfo");Tt(tge,"isInfo");d6="Item",YB="Junction",Z1="Merge";o(rge,"isMerge");Tt(rge,"isMerge");XB="Option",o4="Packet";o(nge,"isPacket");Tt(nge,"isPacket");l4="PacketBlock";o(ige,"isPacketBlock");Tt(ige,"isPacketBlock");c4="Pie";o(age,"isPie");Tt(age,"isPie");u4="PieSection";o(sge,"isPieSection");Tt(sge,"isPieSection");y6="Radar",jB="Service",h4="Treemap";o(oge,"isTreemap");Tt(oge,"isTreemap");KB="TreemapRow",p6="Direction",m6="Leaf",g6="Section",lge=class extends Ap{static{o(this,"MermaidAstReflection")}static{Tt(this,"MermaidAstReflection")}getAllTypes(){return[a4,u6,j1,h6,f6,VB,K1,UB,p6,HB,qB,Q1,WB,s4,d6,YB,m6,Z1,XB,o4,l4,c4,u4,y6,g6,jB,QB,h4,KB]}computeIsSubtype(t,e){switch(t){case j1:case h6:case f6:case K1:case Z1:return this.isSubtype(QB,e);case p6:return this.isSubtype(Q1,e);case m6:case g6:return this.isSubtype(d6,e);default:return!1}}getReferenceType(t){let e=`${t.container.$type}:${t.property}`;switch(e){case"Entry:axis":return u6;default:throw new Error(`${e} is not a valid reference id.`)}}getTypeMetaData(t){switch(t){case a4:return{name:a4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case u6:return{name:u6,properties:[{name:"label"},{name:"name"}]};case j1:return{name:j1,properties:[{name:"name"},{name:"order"}]};case h6:return{name:h6,properties:[{name:"branch"}]};case f6:return{name:f6,properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case VB:return{name:VB,properties:[{name:"className"},{name:"styleText"}]};case K1:return{name:K1,properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case UB:return{name:UB,properties:[{name:"entries",defaultValue:[]},{name:"label"},{name:"name"}]};case HB:return{name:HB,properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case qB:return{name:qB,properties:[{name:"axis"},{name:"value"}]};case Q1:return{name:Q1,properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case WB:return{name:WB,properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case s4:return{name:s4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case d6:return{name:d6,properties:[{name:"classSelector"},{name:"name"}]};case YB:return{name:YB,properties:[{name:"id"},{name:"in"}]};case Z1:return{name:Z1,properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case XB:return{name:XB,properties:[{name:"name"},{name:"value",defaultValue:!1}]};case o4:return{name:o4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case l4:return{name:l4,properties:[{name:"bits"},{name:"end"},{name:"label"},{name:"start"}]};case c4:return{name:c4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case u4:return{name:u4,properties:[{name:"label"},{name:"value"}]};case y6:return{name:y6,properties:[{name:"accDescr"},{name:"accTitle"},{name:"axes",defaultValue:[]},{name:"curves",defaultValue:[]},{name:"options",defaultValue:[]},{name:"title"}]};case jB:return{name:jB,properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case h4:return{name:h4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"},{name:"TreemapRows",defaultValue:[]}]};case KB:return{name:KB,properties:[{name:"indent"},{name:"item"}]};case p6:return{name:p6,properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};case m6:return{name:m6,properties:[{name:"classSelector"},{name:"name"},{name:"value"}]};case g6:return{name:g6,properties:[{name:"classSelector"},{name:"name"}]};default:return{name:t,properties:[]}}}},Ul=new lge,Eje=Tt(()=>Hme??(Hme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"InfoGrammar"),Sje=Tt(()=>qme??(qme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),Cje=Tt(()=>Wme??(Wme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PieGrammar"),Aje=Tt(()=>Yme??(Yme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"ArchitectureGrammar"),_je=Tt(()=>Xme??(Xme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),Dje=Tt(()=>jme??(jme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"Radar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}}}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"types":[],"usedGrammars":[]}`)),"RadarGrammar"),Lje=Tt(()=>Kme??(Kme=Zc(`{"$type":"Grammar","isDeclared":true,"name":"Treemap","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","}},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammar"),Rje={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Nje={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Mje={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Ije={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Oje={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Pje={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Bje={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},xs={AstReflection:Tt(()=>new lge,"AstReflection")},ZB={Grammar:Tt(()=>Eje(),"Grammar"),LanguageMetaData:Tt(()=>Rje,"LanguageMetaData"),parser:{}},JB={Grammar:Tt(()=>Sje(),"Grammar"),LanguageMetaData:Tt(()=>Nje,"LanguageMetaData"),parser:{}},eF={Grammar:Tt(()=>Cje(),"Grammar"),LanguageMetaData:Tt(()=>Mje,"LanguageMetaData"),parser:{}},tF={Grammar:Tt(()=>Aje(),"Grammar"),LanguageMetaData:Tt(()=>Ije,"LanguageMetaData"),parser:{}},rF={Grammar:Tt(()=>_je(),"Grammar"),LanguageMetaData:Tt(()=>Oje,"LanguageMetaData"),parser:{}},nF={Grammar:Tt(()=>Dje(),"Grammar"),LanguageMetaData:Tt(()=>Pje,"LanguageMetaData"),parser:{}},iF={Grammar:Tt(()=>Lje(),"Grammar"),LanguageMetaData:Tt(()=>Bje,"LanguageMetaData"),parser:{}},Fje=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,$je=/accTitle[\t ]*:([^\n\r]*)/,zje=/title([\t ][^\n\r]*|)/,Gje={ACC_DESCR:Fje,ACC_TITLE:$je,TITLE:zje},Vf=class extends Kp{static{o(this,"AbstractMermaidValueConverter")}static{Tt(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=Gje[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` -`)}}},rh=class extends Vf{static{o(this,"CommonValueConverter")}static{Tt(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},qa=class extends th{static{o(this,"AbstractMermaidTokenBuilder")}static{Tt(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},Vje=class extends qa{static{o(this,"CommonTokenBuilder")}static{Tt(this,"CommonTokenBuilder")}}});function x6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),rF,v6);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}var Uje,v6,aF=M(()=>{"use strict";Wa();vo();Uje=class extends qa{static{o(this,"GitGraphTokenBuilder")}static{Tt(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},v6={parser:{TokenBuilder:Tt(()=>new Uje,"TokenBuilder"),ValueConverter:Tt(()=>new rh,"ValueConverter")}};o(x6,"createGitGraphServices");Tt(x6,"createGitGraphServices")});function T6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),ZB,b6);return e.ServiceRegistry.register(r),{shared:e,Info:r}}var Hje,b6,sF=M(()=>{"use strict";Wa();vo();Hje=class extends qa{static{o(this,"InfoTokenBuilder")}static{Tt(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},b6={parser:{TokenBuilder:Tt(()=>new Hje,"TokenBuilder"),ValueConverter:Tt(()=>new rh,"ValueConverter")}};o(T6,"createInfoServices");Tt(T6,"createInfoServices")});function k6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),JB,w6);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}var qje,w6,oF=M(()=>{"use strict";Wa();vo();qje=class extends qa{static{o(this,"PacketTokenBuilder")}static{Tt(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},w6={parser:{TokenBuilder:Tt(()=>new qje,"TokenBuilder"),ValueConverter:Tt(()=>new rh,"ValueConverter")}};o(k6,"createPacketServices");Tt(k6,"createPacketServices")});function S6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),eF,E6);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}var Wje,Yje,E6,lF=M(()=>{"use strict";Wa();vo();Wje=class extends qa{static{o(this,"PieTokenBuilder")}static{Tt(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},Yje=class extends Vf{static{o(this,"PieValueConverter")}static{Tt(this,"PieValueConverter")}runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},E6={parser:{TokenBuilder:Tt(()=>new Wje,"TokenBuilder"),ValueConverter:Tt(()=>new Yje,"ValueConverter")}};o(S6,"createPieServices");Tt(S6,"createPieServices")});function A6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),tF,C6);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}var Xje,jje,C6,cF=M(()=>{"use strict";Wa();vo();Xje=class extends qa{static{o(this,"ArchitectureTokenBuilder")}static{Tt(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},jje=class extends Vf{static{o(this,"ArchitectureValueConverter")}static{Tt(this,"ArchitectureValueConverter")}runCustomConverter(t,e,r){if(t.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();if(t.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");if(t.name==="ARCH_TITLE")return e.replace(/[[\]]/g,"").trim()}},C6={parser:{TokenBuilder:Tt(()=>new Xje,"TokenBuilder"),ValueConverter:Tt(()=>new jje,"ValueConverter")}};o(A6,"createArchitectureServices");Tt(A6,"createArchitectureServices")});function D6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),nF,_6);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}var Kje,_6,uF=M(()=>{"use strict";Wa();vo();Kje=class extends qa{static{o(this,"RadarTokenBuilder")}static{Tt(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},_6={parser:{TokenBuilder:Tt(()=>new Kje,"TokenBuilder"),ValueConverter:Tt(()=>new rh,"ValueConverter")}};o(D6,"createRadarServices");Tt(D6,"createRadarServices")});function cge(t){let e=t.validation.TreemapValidator,r=t.validation.ValidationRegistry;if(r){let n={Treemap:e.checkSingleRoot.bind(e)};r.register(n,e)}}function R6(t=Sa){let e=Hn(Ea(t),xs),r=Hn(ka({shared:e}),iF,L6);return e.ServiceRegistry.register(r),cge(r),{shared:e,Treemap:r}}var Qje,Zje,Jje,eKe,L6,hF=M(()=>{"use strict";Wa();vo();Qje=class extends qa{static{o(this,"TreemapTokenBuilder")}static{Tt(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},Zje=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,Jje=class extends Vf{static{o(this,"TreemapValueConverter")}static{Tt(this,"TreemapValueConverter")}runCustomConverter(t,e,r){if(t.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));if(t.name==="SEPARATOR")return e.substring(1,e.length-1);if(t.name==="STRING2")return e.substring(1,e.length-1);if(t.name==="INDENTATION")return e.length;if(t.name==="ClassDef"){if(typeof e!="string")return e;let n=Zje.exec(e);if(n)return{$type:"ClassDefStatement",className:n[1],styleText:n[2]||void 0}}}};o(cge,"registerValidationChecks");Tt(cge,"registerValidationChecks");eKe=class{static{o(this,"TreemapValidator")}static{Tt(this,"TreemapValidator")}checkSingleRoot(t,e){let r;for(let n of t.TreemapRows)n.item&&(r===void 0&&n.indent===void 0?r=0:n.indent===void 0?e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}):r!==void 0&&r>=parseInt(n.indent,10)&&e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}))}},L6={parser:{TokenBuilder:Tt(()=>new Qje,"TokenBuilder"),ValueConverter:Tt(()=>new Jje,"ValueConverter")},validation:{TreemapValidator:Tt(()=>new eKe,"TreemapValidator")}};o(R6,"createTreemapServices");Tt(R6,"createTreemapServices")});var uge={};dr(uge,{InfoModule:()=>b6,createInfoServices:()=>T6});var hge=M(()=>{"use strict";sF();Wa()});var fge={};dr(fge,{PacketModule:()=>w6,createPacketServices:()=>k6});var dge=M(()=>{"use strict";oF();Wa()});var pge={};dr(pge,{PieModule:()=>E6,createPieServices:()=>S6});var mge=M(()=>{"use strict";lF();Wa()});var gge={};dr(gge,{ArchitectureModule:()=>C6,createArchitectureServices:()=>A6});var yge=M(()=>{"use strict";cF();Wa()});var vge={};dr(vge,{GitGraphModule:()=>v6,createGitGraphServices:()=>x6});var xge=M(()=>{"use strict";aF();Wa()});var bge={};dr(bge,{RadarModule:()=>_6,createRadarServices:()=>D6});var Tge=M(()=>{"use strict";uF();Wa()});var wge={};dr(wge,{TreemapModule:()=>L6,createTreemapServices:()=>R6});var kge=M(()=>{"use strict";hF();Wa()});async function bs(t,e){let r=tKe[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);nh[t]||await r();let i=nh[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new rKe(i);return i.value}var nh,tKe,rKe,Uf=M(()=>{"use strict";aF();sF();oF();lF();cF();uF();hF();Wa();nh={},tKe={info:Tt(async()=>{let{createInfoServices:t}=await Promise.resolve().then(()=>(hge(),uge)),e=t().Info.parser.LangiumParser;nh.info=e},"info"),packet:Tt(async()=>{let{createPacketServices:t}=await Promise.resolve().then(()=>(dge(),fge)),e=t().Packet.parser.LangiumParser;nh.packet=e},"packet"),pie:Tt(async()=>{let{createPieServices:t}=await Promise.resolve().then(()=>(mge(),pge)),e=t().Pie.parser.LangiumParser;nh.pie=e},"pie"),architecture:Tt(async()=>{let{createArchitectureServices:t}=await Promise.resolve().then(()=>(yge(),gge)),e=t().Architecture.parser.LangiumParser;nh.architecture=e},"architecture"),gitGraph:Tt(async()=>{let{createGitGraphServices:t}=await Promise.resolve().then(()=>(xge(),vge)),e=t().GitGraph.parser.LangiumParser;nh.gitGraph=e},"gitGraph"),radar:Tt(async()=>{let{createRadarServices:t}=await Promise.resolve().then(()=>(Tge(),bge)),e=t().Radar.parser.LangiumParser;nh.radar=e},"radar"),treemap:Tt(async()=>{let{createTreemapServices:t}=await Promise.resolve().then(()=>(kge(),wge)),e=t().Treemap.parser.LangiumParser;nh.treemap=e},"treemap")};o(bs,"parse");Tt(bs,"parse");rKe=class extends Error{static{o(this,"MermaidParseError")}constructor(t){let e=t.lexerErrors.map(n=>n.message).join(` +`)}return r}},$A=class{static{o(this,"JSDocLineImpl")}constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(Ebe,"fillNewlines")});var FT,cV=I(()=>{"use strict";ls();lV();FT=class{static{o(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&sV(r))return aV(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(e,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(e,i),"renderTag")})}documentationLinkRenderer(e,r,n){let i=this.findNameInLocalSymbols(e,r)??this.findNameInGlobalScope(e,r);if(i&&i.nameSegment){let a=i.nameSegment.range.start.line+1,s=i.nameSegment.range.start.character+1,l=i.documentUri.with({fragment:`L${a},${s}`});return`[${n}](${l.toString()})`}else return}documentationTagRenderer(e,r){}findNameInLocalSymbols(e,r){let i=os(e).localSymbols;if(!i)return;let a=e;do{let l=i.getStream(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var $T,uV=I(()=>{"use strict";J6();yc();$T=class{static{o(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return Cz(e)?e.$comment:WB(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}}});var zT,hV,fV,dV=I(()=>{"use strict";Nl();nA();zT=class{static{o(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},hV=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){let n=await this.acquireParserWorker(r),i=new zs,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new zs;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(Ll)}),this.queue.push(r),r.promise}},fV=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new ui.Emitter,this.deferred=new zs,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(a=>{let s=a;this.deferred.resolve(s),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(Ll),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new zs,this.sendMessage(e),this.deferred.promise}}});var GT,pV=I(()=>{"use strict";Rl();Nl();GT=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new Ar.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=X6();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=Ar.CancellationToken.None){let i=new zs,a={action:r,deferred:i,cancellationToken:n};return e.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){Iu(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var VT,mV=I(()=>{"use strict";F6();Uo();mc();ls();Hd();yc();VT=class{static{o(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new Em,this.tokenTypeIdMap=new Em,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>({...r,message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of Is(e))r.set(i,{});if(e.$cstNode)for(let i of nm(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)bi(l)?s.push(this.dehydrateAstNode(l,r)):ra(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else bi(a)?n[i]=this.dehydrateAstNode(a,r):ra(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return e4(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),pc(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):_d(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let a of Is(e))r.set(a,{});let i;if(e.$cstNode)for(let a of nm(e.$cstNode)){let s;"fullText"in a?(s=new Wy(a.fullText),i=s):"content"in a?s=new bm:"tokenType"in a&&(s=this.hydrateCstLeafNode(a)),s&&(n.set(a,s),s.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)bi(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):ra(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else bi(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):ra(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),pc(i))for(let a of e.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,a=e.startLine,s=e.startColumn,l=e.endLine,u=e.endColumn,h=e.hidden;return new xm(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let r of Is(this.grammar))u4(r)&&this.grammarElementIdMap.set(r,e++)}}});function Ua(t){return{documentation:{CommentProvider:o(e=>new $T(e),"CommentProvider"),DocumentationProvider:o(e=>new FT(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new zT(e),"AsyncParser"),GrammarConfig:o(e=>hF(e),"GrammarConfig"),LangiumParser:o(e=>oz(e),"LangiumParser"),CompletionParser:o(e=>az(e),"CompletionParser"),ValueConverter:o(()=>new wm,"ValueConverter"),TokenBuilder:o(()=>new jh,"TokenBuilder"),Lexer:o(e=>new Lm(e),"Lexer"),ParserErrorMessageProvider:o(()=>new Hy,"ParserErrorMessageProvider"),LexerErrorMessageProvider:o(()=>new OT,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new TT,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new xT(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new bT(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new lT(e),"Linker"),NameProvider:o(()=>new cT,"NameProvider"),ScopeProvider:o(e=>new pT(e),"ScopeProvider"),ScopeComputation:o(e=>new hT(e),"ScopeComputation"),References:o(e=>new uT(e),"References")},serializer:{Hydrator:o(e=>new VT(e),"Hydrator"),JsonSerializer:o(e=>new mT(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new vT(e),"DocumentValidator"),ValidationRegistry:o(e=>new yT(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}function Wa(t){return{ServiceRegistry:o(e=>new gT(e),"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new oT(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new sT(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new NT(e),"DocumentBuilder"),IndexManager:o(e=>new MT(e),"IndexManager"),WorkspaceManager:o(e=>new IT(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new GT,"WorkspaceLock"),ConfigurationProvider:o(e=>new wT(e),"ConfigurationProvider")},profilers:{}}}var gV=I(()=>{"use strict";fF();sz();lz();U6();cz();xz();bz();Tz();wz();Ez();J6();Az();_z();tA();Dz();Rz();Lz();ZG();Jy();JG();eV();BA();cV();uV();nT();dV();pV();mV();o(Ua,"createDefaultCoreModule");o(Wa,"createDefaultSharedCoreModule")});function ei(t,e,r,n,i,a,s,l,u){let h=[t,e,r,n,i,a,s,l,u].reduce(qT,{});return Ibe(h)}function Mbe(t){if(t&&t[Nbe])for(let e of Object.values(t))Mbe(e);return t}function Ibe(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),set:o(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:o((n,i)=>i===Nbe?!0:Lbe(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(Lbe(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Object.getOwnPropertyNames(t)],"ownKeys")});return r}function Lbe(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+t[e]);if(t[e]===Rbe)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=Rbe;try{t[e]=typeof i=="function"?i(n):Ibe(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}function qT(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!=null)if(typeof n=="object"){let i=t[r];typeof i=="object"&&i!==null?t[r]=qT(i,n):t[r]=qT({},n)}else t[r]=n}return t}var yV,Nbe,Rbe,vV=I(()=>{"use strict";(function(t){t.merge=(e,r)=>qT(qT({},e),r)})(yV||(yV={}));o(ei,"inject");Nbe=Symbol("isProxy");o(Mbe,"eagerLoad");o(Ibe,"_inject");Rbe=Symbol();o(Lbe,"_resolve");o(qT,"_merge")});var Obe=I(()=>{"use strict"});var Pbe=I(()=>{"use strict";uV();cV();lV()});var Bbe=I(()=>{"use strict"});var Fbe=I(()=>{"use strict";fF();Bbe()});var xV,Nm,zA,bV,$be=I(()=>{"use strict";Vd();U6();BA();xV={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(t){t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation"})(Nm||(Nm={}));zA=class extends jh{static{o(this,"IndentationAwareTokenBuilder")}constructor(e=xV){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...xV,...e},this.indentTokenType=zd({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=zd({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!PA(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:a,whitespaceTokenName:s,ignoreIndentationDelimiters:l}=this.options,u,h,f,d=[];for(let p of n){for(let[m,g]of l)p.name===m?p.PUSH_MODE=Nm.IGNORE_INDENTATION:p.name===g&&(p.POP_MODE=!0);p.name===a?u=p:p.name===i?h=p:p.name===s?f=p:d.push(p)}if(!u||!h||!f)throw new Error("Some indentation/whitespace tokens not found!");return l.length>0?{modes:{[Nm.REGULAR]:[u,h,...d,f],[Nm.IGNORE_INDENTATION]:[...d,f]},defaultMode:Nm.REGULAR}:[u,h,f,...d]}flushLexingReport(e){return{...super.flushLexingReport(e),remainingDedents:this.flushRemainingDedents(e)}}isStartOfLine(e,r){return r===0||`\r +`.includes(e[r-1])}matchWhitespace(e,r,n,i){this.whitespaceRegExp.lastIndex=r;let a=this.whitespaceRegExp.exec(e);return{currIndentLevel:a?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:a}}createIndentationTokenInstance(e,r,n,i){let a=this.getLineNumber(r,i);return Uh(e,n,i,i+n.length,a,a,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:s,match:l}=this.matchWhitespace(e,r,n,i);return a<=s?null:(this.indentationStack.push(a),l)}dedentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:s,match:l}=this.matchWhitespace(e,r,n,i);if(a>=s)return null;let u=this.indentationStack.lastIndexOf(a);if(u===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${a} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:l?.[0]?.length??0,line:this.getLineNumber(e,r),column:1}),null;let h=this.indentationStack.length-u-1,f=e.substring(0,r).match(/[\r\n]+$/)?.[0].length??1;for(let d=0;d1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},bV=class extends Lm{static{o(this,"IndentationAwareLexer")}constructor(e){if(super(e),e.parser.TokenBuilder instanceof zA)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=OA){let n=super.tokenize(e),i=n.report;r?.mode==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:a,dedentTokenType:s}=this.indentationTokenBuilder,l=a.tokenTypeIdx,u=s.tokenTypeIdx,h=[],f=n.tokens.length-1;for(let d=0;d=0&&h.push(n.tokens[f]),n.tokens=h,n}}});var zbe=I(()=>{"use strict"});var Gbe=I(()=>{"use strict";dV();sz();F6();$be();lz();nT();BA();q6();zbe();U6();cz()});var Vbe=I(()=>{"use strict";xz();bz();Tz();Sz();wz();Ez()});var qbe=I(()=>{"use strict";mV();J6()});var GA,Ha,TV=I(()=>{"use strict";GA=class{static{o(this,"EmptyFileSystemProvider")}stat(e){throw new Error("No file system is available.")}statSync(e){throw new Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw new Error("No file system is available.")}readBinarySync(){throw new Error("No file system is available.")}readFile(){throw new Error("No file system is available.")}readFileSync(){throw new Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},Ha={fileSystemProvider:o(()=>new GA,"fileSystemProvider")}});function wnt(){let t=ei(Wa(Ha),Tnt),e=ei(Ua({shared:t}),bnt);return t.ServiceRegistry.register(e),e}function $u(t){let e=wnt(),r=e.serializer.JsonSerializer.deserialize(t);return e.shared.workspace.LangiumDocumentFactory.fromModel(r,ia.parse(`memory:/${r.name??"grammar"}.langium`)),r}var bnt,Tnt,Ube=I(()=>{"use strict";gV();vV();Uo();TV();Sc();bnt={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Tnt={AstReflection:o(()=>new hy,"AstReflection")};o(wnt,"createMinimalGrammarServices");o($u,"loadGrammarFromJson")});var an={};vr(an,{AstUtils:()=>mC,BiMap:()=>Em,Cancellation:()=>Ar,ContextCache:()=>Cm,CstUtils:()=>OC,DONE_RESULT:()=>ss,Deferred:()=>zs,Disposable:()=>tp,DisposableCache:()=>tv,DocumentCache:()=>Q6,EMPTY_STREAM:()=>Dd,ErrorWithLocation:()=>am,GrammarUtils:()=>VC,MultiMap:()=>us,OperationCancelled:()=>Ll,Reduction:()=>ty,RegExpUtils:()=>$C,SimpleCache:()=>dT,StreamImpl:()=>Vo,TreeStreamImpl:()=>Eu,URI:()=>ia,UriTrie:()=>Zy,UriUtils:()=>Ii,WorkspaceCache:()=>rv,assertCondition:()=>kge,assertUnreachable:()=>_u,delayNextTick:()=>gz,interruptAndCheck:()=>Ti,isOperationCancelled:()=>Iu,loadGrammarFromJson:()=>$u,setInterruptionPeriod:()=>Uye,startCancelableOperation:()=>X6,stream:()=>Or});var Wbe=I(()=>{"use strict";Z6();nA();$r(an,ui);Hd();QG();PC();Ube();Nl();Ms();Sc();ls();Rl();yc();wc();py()});var Hbe=I(()=>{"use strict";_z();tA()});var wV,VA,Ybe=I(()=>{"use strict";Hd();wV=class{static{o(this,"DefaultLangiumProfiler")}constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new us}isActive(e){return this.activeCategories.has(e)}start(...e){e?e.forEach(r=>this.activeCategories.add(r)):this.activeCategories=new Set(this.allCategories)}stop(...e){e?e.forEach(r=>this.activeCategories.delete(r)):this.activeCategories.clear()}createTask(e,r){if(!this.isActive(e))throw new Error(`Category "${e}" is not active.`);return console.log(`Creating profiling task for '${e}.${r}'.`),new VA(n=>this.records.add(e,this.dumpRecord(e,n)),r)}dumpRecord(e,r){console.info(`Task ${e}.${r.identifier} executed in ${r.duration.toFixed(2)}ms and ended at ${r.date.toISOString()}`);let n=[];for(let s of r.entries.keys()){let l=r.entries.get(s),u=l.reduce((h,f)=>h+f);n.push({name:`${r.identifier}.${s}`,count:l.length,duration:u})}let i=r.duration-n.map(s=>s.duration).reduce((s,l)=>s+l,0);n.push({name:r.identifier,count:1,duration:i}),n.sort((s,l)=>l.duration-s.duration);function a(s){return Math.round(100*s)/100}return o(a,"Round"),console.table(n.map(s=>({Element:s.name,Count:s.count,"Self %":a(100*s.duration/r.duration),"Time (ms)":a(s.duration)}))),r}getRecords(...e){return e.length===0?this.records.values():this.records.entries().filter(r=>e.some(n=>n===r[0])).flatMap(r=>r[1])}},VA=class{static{o(this,"ProfilingTask")}constructor(e,r){this.stack=[],this.entries=new us,this.addRecord=e,this.identifier=r}start(){if(this.startTime!==void 0)throw new Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(this.startTime===void 0)throw new Error(`Task "${this.identifier}" was not started.`);if(this.stack.length!==0)throw new Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(r=>r.id).join(", ")}.`);let e={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(e),this.startTime=void 0,this.entries.clear()}startSubTask(e){this.stack.push({id:e,start:performance.now(),content:0})}stopSubTask(e){let r=this.stack.pop();if(!r)throw new Error(`Task "${this.identifier}.${e}" was not started.`);if(r.id!==e)throw new Error(`Sub-Task "${r.id}" is not already stopped.`);let n=performance.now()-r.start;this.stack.at(-1)!==void 0&&(this.stack[this.stack.length-1].content+=n);let i=n-r.content;this.entries.add(e,i)}}});var jbe=I(()=>{"use strict";Dz();Rz();Lz();ZG();Jy();TV();JG();pV();eV();Ybe()});var Ea={};vr(Ea,{AbstractAstReflection:()=>U0,AbstractCstNode:()=>J4,AbstractLangiumParser:()=>eT,AbstractParserErrorMessageProvider:()=>z6,AbstractThreadedAsyncParser:()=>hV,AstUtils:()=>mC,BiMap:()=>Em,Cancellation:()=>Ar,CompositeCstNodeImpl:()=>bm,ContextCache:()=>Cm,CstNodeBuilder:()=>Z4,CstUtils:()=>OC,DEFAULT_TOKENIZE_OPTIONS:()=>OA,DONE_RESULT:()=>ss,DatatypeSymbol:()=>$6,DefaultAstNodeDescriptionProvider:()=>xT,DefaultAstNodeLocator:()=>TT,DefaultAsyncParser:()=>zT,DefaultCommentProvider:()=>$T,DefaultConfigurationProvider:()=>wT,DefaultDocumentBuilder:()=>NT,DefaultDocumentValidator:()=>vT,DefaultHydrator:()=>VT,DefaultIndexManager:()=>MT,DefaultJsonSerializer:()=>mT,DefaultLangiumDocumentFactory:()=>sT,DefaultLangiumDocuments:()=>oT,DefaultLangiumProfiler:()=>wV,DefaultLexer:()=>Lm,DefaultLexerErrorMessageProvider:()=>OT,DefaultLinker:()=>lT,DefaultNameProvider:()=>cT,DefaultReferenceDescriptionProvider:()=>bT,DefaultReferences:()=>uT,DefaultScopeComputation:()=>hT,DefaultScopeProvider:()=>pT,DefaultServiceRegistry:()=>gT,DefaultTokenBuilder:()=>jh,DefaultValueConverter:()=>wm,DefaultWorkspaceLock:()=>GT,DefaultWorkspaceManager:()=>IT,Deferred:()=>zs,Disposable:()=>tp,DisposableCache:()=>tv,DocumentCache:()=>Q6,DocumentState:()=>Nr,DocumentValidator:()=>Ml,EMPTY_SCOPE:()=>Trt,EMPTY_STREAM:()=>Dd,EmptyFileSystem:()=>Ha,EmptyFileSystemProvider:()=>GA,ErrorWithLocation:()=>am,GrammarAST:()=>f4,GrammarUtils:()=>VC,IndentationAwareLexer:()=>bV,IndentationAwareTokenBuilder:()=>zA,JSDocDocumentationProvider:()=>FT,LangiumCompletionParser:()=>rT,LangiumParser:()=>tT,LangiumParserErrorMessageProvider:()=>Hy,LeafCstNodeImpl:()=>xm,LexingMode:()=>Nm,MapScope:()=>kz,Module:()=>yV,MultiMap:()=>us,MultiMapScope:()=>fT,OperationCancelled:()=>Ll,ParserWorker:()=>fV,ProfilingTask:()=>VA,Reduction:()=>ty,RefResolving:()=>Sm,RegExpUtils:()=>$C,RootCstNodeImpl:()=>Wy,SimpleCache:()=>dT,StreamImpl:()=>Vo,StreamScope:()=>ev,TextDocument:()=>Ky,TreeStreamImpl:()=>Eu,URI:()=>ia,UriTrie:()=>Zy,UriUtils:()=>Ii,VALIDATE_EACH_NODE:()=>Zye,ValidationCategory:()=>eA,ValidationRegistry:()=>yT,ValueConverter:()=>Mu,WorkspaceCache:()=>rv,assertCondition:()=>kge,assertUnreachable:()=>_u,createCompletionParser:()=>az,createDefaultCoreModule:()=>Ua,createDefaultSharedCoreModule:()=>Wa,createGrammarConfig:()=>hF,createLangiumParser:()=>oz,createParser:()=>iT,delayNextTick:()=>gz,diagnosticData:()=>Am,eagerLoad:()=>Mbe,getDiagnosticRange:()=>Jye,indentationBuilderDefaultOptions:()=>xV,inject:()=>ei,interruptAndCheck:()=>Ti,isAstNode:()=>bi,isAstNodeDescription:()=>bB,isAstNodeWithComment:()=>Cz,isCompositeCstNode:()=>pc,isIMultiModeLexerDefinition:()=>rV,isJSDoc:()=>sV,isLeafCstNode:()=>_d,isLinkingError:()=>W0,isMultiReference:()=>Go,isNamed:()=>Kye,isOperationCancelled:()=>Iu,isReference:()=>ra,isRootCstNode:()=>e4,isTokenTypeArray:()=>PA,isTokenTypeDictionary:()=>tV,loadGrammarFromJson:()=>$u,parseJSDoc:()=>aV,prepareLangiumParser:()=>$ye,setInterruptionPeriod:()=>Uye,startCancelableOperation:()=>X6,stream:()=>Or,toDiagnosticData:()=>eve,toDiagnosticSeverity:()=>rA});var Yo=I(()=>{"use strict";gV();vV();Az();Obe();mc();Pbe();Fbe();Gbe();Vbe();qbe();Wbe();$r(Ea,an);Hbe();jbe();Uo()});function n4e(t){return Ac.isInstance(t,Gu.$type)}function i4e(t){return Ac.isInstance(t,HT.$type)}function a4e(t){return Ac.isInstance(t,Im.$type)}function s4e(t){return Ac.isInstance(t,np.$type)}function o4e(t){return Ac.isInstance(t,Tv.$type)}function l4e(t){return Ac.isInstance(t,Om.$type)}function c4e(t){return Ac.isInstance(t,Pm.$type)}function u4e(t){return Ac.isInstance(t,Bm.$type)}function h4e(t){return Ac.isInstance(t,ip.$type)}function f4e(t){return Ac.isInstance(t,YT.$type)}function d4e(t){return Ac.isInstance(t,Fm.$type)}var knt,kt,DV,RV,LV,NV,MV,IV,OV,qyr,Gu,qA,HT,Xbe,UA,kV,Im,WA,xv,zu,SV,np,UT,Tv,WT,EV,HA,Om,CV,Pm,Bm,ip,YT,rp,AV,bv,Mm,Fm,_V,p4e,Ac,Kbe,Snt,Qbe,Ent,Zbe,Cnt,Jbe,Ant,e4e,_nt,t4e,Dnt,r4e,Rnt,Lnt,Nnt,Mnt,Int,Ont,Pnt,Bnt,Gs,PV,BV,FV,$V,zV,GV,VV,Fnt,$nt,znt,Gnt,ap,Kh,ds,Vnt,ps=I(()=>{"use strict";Yo();Yo();Yo();Yo();knt=Object.defineProperty,kt=o((t,e)=>knt(t,"name",{value:e,configurable:!0}),"__name");(t=>{t.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[[\w ]+\]/}})(DV||(DV={}));(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(RV||(RV={}));(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(LV||(LV={}));(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(NV||(NV={}));(t=>{t.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(MV||(MV={}));(t=>{t.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(IV||(IV={}));(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})(OV||(OV={}));qyr={...DV.Terminals,...RV.Terminals,...LV.Terminals,...NV.Terminals,...MV.Terminals,...IV.Terminals,...OV.Terminals},Gu={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};o(n4e,"isArchitecture");kt(n4e,"isArchitecture");qA={$type:"Axis",label:"label",name:"name"},HT={$type:"Branch",name:"name",order:"order"};o(i4e,"isBranch");kt(i4e,"isBranch");Xbe={$type:"Checkout",branch:"branch"},UA={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},kV={$type:"ClassDefStatement",className:"className",styleText:"styleText"},Im={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};o(a4e,"isCommit");kt(a4e,"isCommit");WA={$type:"Curve",entries:"entries",label:"label",name:"name"},xv={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},zu={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},SV={$type:"Entry",axis:"axis",value:"value"},np={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};o(s4e,"isGitGraph");kt(s4e,"isGitGraph");UT={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},Tv={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};o(o4e,"isInfo");kt(o4e,"isInfo");WT={$type:"Item",classSelector:"classSelector",name:"name"},EV={$type:"Junction",id:"id",in:"in"},HA={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},Om={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};o(l4e,"isMerge");kt(l4e,"isMerge");CV={$type:"Option",name:"name",value:"value"},Pm={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};o(c4e,"isPacket");kt(c4e,"isPacket");Bm={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};o(u4e,"isPacketBlock");kt(u4e,"isPacketBlock");ip={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};o(h4e,"isPie");kt(h4e,"isPie");YT={$type:"PieSection",label:"label",value:"value"};o(f4e,"isPieSection");kt(f4e,"isPieSection");rp={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},AV={$type:"Section",classSelector:"classSelector",name:"name"},bv={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},Mm={$type:"Statement"},Fm={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};o(d4e,"isTreemap");kt(d4e,"isTreemap");_V={$type:"TreemapRow",indent:"indent",item:"item"},p4e=class extends U0{static{o(this,"MermaidAstReflection")}constructor(){super(...arguments),this.types={Architecture:{name:Gu.$type,properties:{accDescr:{name:Gu.accDescr},accTitle:{name:Gu.accTitle},edges:{name:Gu.edges,defaultValue:[]},groups:{name:Gu.groups,defaultValue:[]},junctions:{name:Gu.junctions,defaultValue:[]},services:{name:Gu.services,defaultValue:[]},title:{name:Gu.title}},superTypes:[]},Axis:{name:qA.$type,properties:{label:{name:qA.label},name:{name:qA.name}},superTypes:[]},Branch:{name:HT.$type,properties:{name:{name:HT.name},order:{name:HT.order}},superTypes:[Mm.$type]},Checkout:{name:Xbe.$type,properties:{branch:{name:Xbe.branch}},superTypes:[Mm.$type]},CherryPicking:{name:UA.$type,properties:{id:{name:UA.id},parent:{name:UA.parent},tags:{name:UA.tags,defaultValue:[]}},superTypes:[Mm.$type]},ClassDefStatement:{name:kV.$type,properties:{className:{name:kV.className},styleText:{name:kV.styleText}},superTypes:[]},Commit:{name:Im.$type,properties:{id:{name:Im.id},message:{name:Im.message},tags:{name:Im.tags,defaultValue:[]},type:{name:Im.type}},superTypes:[Mm.$type]},Curve:{name:WA.$type,properties:{entries:{name:WA.entries,defaultValue:[]},label:{name:WA.label},name:{name:WA.name}},superTypes:[]},Direction:{name:xv.$type,properties:{accDescr:{name:xv.accDescr},accTitle:{name:xv.accTitle},dir:{name:xv.dir},statements:{name:xv.statements,defaultValue:[]},title:{name:xv.title}},superTypes:[np.$type]},Edge:{name:zu.$type,properties:{lhsDir:{name:zu.lhsDir},lhsGroup:{name:zu.lhsGroup,defaultValue:!1},lhsId:{name:zu.lhsId},lhsInto:{name:zu.lhsInto,defaultValue:!1},rhsDir:{name:zu.rhsDir},rhsGroup:{name:zu.rhsGroup,defaultValue:!1},rhsId:{name:zu.rhsId},rhsInto:{name:zu.rhsInto,defaultValue:!1},title:{name:zu.title}},superTypes:[]},Entry:{name:SV.$type,properties:{axis:{name:SV.axis,referenceType:qA.$type},value:{name:SV.value}},superTypes:[]},GitGraph:{name:np.$type,properties:{accDescr:{name:np.accDescr},accTitle:{name:np.accTitle},statements:{name:np.statements,defaultValue:[]},title:{name:np.title}},superTypes:[]},Group:{name:UT.$type,properties:{icon:{name:UT.icon},id:{name:UT.id},in:{name:UT.in},title:{name:UT.title}},superTypes:[]},Info:{name:Tv.$type,properties:{accDescr:{name:Tv.accDescr},accTitle:{name:Tv.accTitle},title:{name:Tv.title}},superTypes:[]},Item:{name:WT.$type,properties:{classSelector:{name:WT.classSelector},name:{name:WT.name}},superTypes:[]},Junction:{name:EV.$type,properties:{id:{name:EV.id},in:{name:EV.in}},superTypes:[]},Leaf:{name:HA.$type,properties:{classSelector:{name:HA.classSelector},name:{name:HA.name},value:{name:HA.value}},superTypes:[WT.$type]},Merge:{name:Om.$type,properties:{branch:{name:Om.branch},id:{name:Om.id},tags:{name:Om.tags,defaultValue:[]},type:{name:Om.type}},superTypes:[Mm.$type]},Option:{name:CV.$type,properties:{name:{name:CV.name},value:{name:CV.value,defaultValue:!1}},superTypes:[]},Packet:{name:Pm.$type,properties:{accDescr:{name:Pm.accDescr},accTitle:{name:Pm.accTitle},blocks:{name:Pm.blocks,defaultValue:[]},title:{name:Pm.title}},superTypes:[]},PacketBlock:{name:Bm.$type,properties:{bits:{name:Bm.bits},end:{name:Bm.end},label:{name:Bm.label},start:{name:Bm.start}},superTypes:[]},Pie:{name:ip.$type,properties:{accDescr:{name:ip.accDescr},accTitle:{name:ip.accTitle},sections:{name:ip.sections,defaultValue:[]},showData:{name:ip.showData,defaultValue:!1},title:{name:ip.title}},superTypes:[]},PieSection:{name:YT.$type,properties:{label:{name:YT.label},value:{name:YT.value}},superTypes:[]},Radar:{name:rp.$type,properties:{accDescr:{name:rp.accDescr},accTitle:{name:rp.accTitle},axes:{name:rp.axes,defaultValue:[]},curves:{name:rp.curves,defaultValue:[]},options:{name:rp.options,defaultValue:[]},title:{name:rp.title}},superTypes:[]},Section:{name:AV.$type,properties:{classSelector:{name:AV.classSelector},name:{name:AV.name}},superTypes:[WT.$type]},Service:{name:bv.$type,properties:{icon:{name:bv.icon},iconText:{name:bv.iconText},id:{name:bv.id},in:{name:bv.in},title:{name:bv.title}},superTypes:[]},Statement:{name:Mm.$type,properties:{},superTypes:[]},Treemap:{name:Fm.$type,properties:{accDescr:{name:Fm.accDescr},accTitle:{name:Fm.accTitle},title:{name:Fm.title},TreemapRows:{name:Fm.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:_V.$type,properties:{indent:{name:_V.indent},item:{name:_V.item}},superTypes:[]}}}static{kt(this,"MermaidAstReflection")}},Ac=new p4e,Snt=kt(()=>Kbe??(Kbe=$u(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),Ent=kt(()=>Qbe??(Qbe=$u(`{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"GitGraphGrammarGrammar"),Cnt=kt(()=>Zbe??(Zbe=$u(`{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"InfoGrammarGrammar"),Ant=kt(()=>Jbe??(Jbe=$u(`{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PacketGrammarGrammar"),_nt=kt(()=>e4e??(e4e=$u(`{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PieGrammarGrammar"),Dnt=kt(()=>t4e??(t4e=$u(`{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}`)),"RadarGrammarGrammar"),Rnt=kt(()=>r4e??(r4e=$u(`{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammarGrammar"),Lnt={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Nnt={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Mnt={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Int={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Ont={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Pnt={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Bnt={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},Gs={AstReflection:kt(()=>new p4e,"AstReflection")},PV={Grammar:kt(()=>Snt(),"Grammar"),LanguageMetaData:kt(()=>Lnt,"LanguageMetaData"),parser:{}},BV={Grammar:kt(()=>Ent(),"Grammar"),LanguageMetaData:kt(()=>Nnt,"LanguageMetaData"),parser:{}},FV={Grammar:kt(()=>Cnt(),"Grammar"),LanguageMetaData:kt(()=>Mnt,"LanguageMetaData"),parser:{}},$V={Grammar:kt(()=>Ant(),"Grammar"),LanguageMetaData:kt(()=>Int,"LanguageMetaData"),parser:{}},zV={Grammar:kt(()=>_nt(),"Grammar"),LanguageMetaData:kt(()=>Ont,"LanguageMetaData"),parser:{}},GV={Grammar:kt(()=>Dnt(),"Grammar"),LanguageMetaData:kt(()=>Pnt,"LanguageMetaData"),parser:{}},VV={Grammar:kt(()=>Rnt(),"Grammar"),LanguageMetaData:kt(()=>Bnt,"LanguageMetaData"),parser:{}},Fnt=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,$nt=/accTitle[\t ]*:([^\n\r]*)/,znt=/title([\t ][^\n\r]*|)/,Gnt={ACC_DESCR:Fnt,ACC_TITLE:$nt,TITLE:znt},ap=class extends wm{static{o(this,"AbstractMermaidValueConverter")}static{kt(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=Gnt[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` +`)}}},Kh=class extends ap{static{o(this,"CommonValueConverter")}static{kt(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},ds=class extends jh{static{o(this,"AbstractMermaidTokenBuilder")}static{kt(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},Vnt=class extends ds{static{o(this,"CommonTokenBuilder")}static{kt(this,"CommonTokenBuilder")}}});function jA(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),BV,YA);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}var qnt,YA,qV=I(()=>{"use strict";ps();Yo();qnt=class extends ds{static{o(this,"GitGraphTokenBuilder")}static{kt(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},YA={parser:{TokenBuilder:kt(()=>new qnt,"TokenBuilder"),ValueConverter:kt(()=>new Kh,"ValueConverter")}};o(jA,"createGitGraphServices");kt(jA,"createGitGraphServices")});function KA(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),FV,XA);return e.ServiceRegistry.register(r),{shared:e,Info:r}}var Unt,XA,UV=I(()=>{"use strict";ps();Yo();Unt=class extends ds{static{o(this,"InfoTokenBuilder")}static{kt(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},XA={parser:{TokenBuilder:kt(()=>new Unt,"TokenBuilder"),ValueConverter:kt(()=>new Kh,"ValueConverter")}};o(KA,"createInfoServices");kt(KA,"createInfoServices")});function ZA(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),$V,QA);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}var Wnt,QA,WV=I(()=>{"use strict";ps();Yo();Wnt=class extends ds{static{o(this,"PacketTokenBuilder")}static{kt(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},QA={parser:{TokenBuilder:kt(()=>new Wnt,"TokenBuilder"),ValueConverter:kt(()=>new Kh,"ValueConverter")}};o(ZA,"createPacketServices");kt(ZA,"createPacketServices")});function e7(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),zV,JA);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}var Hnt,Ynt,JA,HV=I(()=>{"use strict";ps();Yo();Hnt=class extends ds{static{o(this,"PieTokenBuilder")}static{kt(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},Ynt=class extends ap{static{o(this,"PieValueConverter")}static{kt(this,"PieValueConverter")}runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},JA={parser:{TokenBuilder:kt(()=>new Hnt,"TokenBuilder"),ValueConverter:kt(()=>new Ynt,"ValueConverter")}};o(e7,"createPieServices");kt(e7,"createPieServices")});function r7(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),PV,t7);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}var jnt,Xnt,t7,YV=I(()=>{"use strict";ps();Yo();jnt=class extends ds{static{o(this,"ArchitectureTokenBuilder")}static{kt(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},Xnt=class extends ap{static{o(this,"ArchitectureValueConverter")}static{kt(this,"ArchitectureValueConverter")}runCustomConverter(t,e,r){if(t.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();if(t.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");if(t.name==="ARCH_TITLE")return e.replace(/[[\]]/g,"").trim()}},t7={parser:{TokenBuilder:kt(()=>new jnt,"TokenBuilder"),ValueConverter:kt(()=>new Xnt,"ValueConverter")}};o(r7,"createArchitectureServices");kt(r7,"createArchitectureServices")});function i7(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),GV,n7);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}var Knt,n7,jV=I(()=>{"use strict";ps();Yo();Knt=class extends ds{static{o(this,"RadarTokenBuilder")}static{kt(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},n7={parser:{TokenBuilder:kt(()=>new Knt,"TokenBuilder"),ValueConverter:kt(()=>new Kh,"ValueConverter")}};o(i7,"createRadarServices");kt(i7,"createRadarServices")});function m4e(t){let e=t.validation.TreemapValidator,r=t.validation.ValidationRegistry;if(r){let n={Treemap:e.checkSingleRoot.bind(e)};r.register(n,e)}}function s7(t=Ha){let e=ei(Wa(t),Gs),r=ei(Ua({shared:e}),VV,a7);return e.ServiceRegistry.register(r),m4e(r),{shared:e,Treemap:r}}var Qnt,Znt,Jnt,eit,a7,XV=I(()=>{"use strict";ps();Yo();Qnt=class extends ds{static{o(this,"TreemapTokenBuilder")}static{kt(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},Znt=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,Jnt=class extends ap{static{o(this,"TreemapValueConverter")}static{kt(this,"TreemapValueConverter")}runCustomConverter(t,e,r){if(t.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));if(t.name==="SEPARATOR")return e.substring(1,e.length-1);if(t.name==="STRING2")return e.substring(1,e.length-1);if(t.name==="INDENTATION")return e.length;if(t.name==="ClassDef"){if(typeof e!="string")return e;let n=Znt.exec(e);if(n)return{$type:"ClassDefStatement",className:n[1],styleText:n[2]||void 0}}}};o(m4e,"registerValidationChecks");kt(m4e,"registerValidationChecks");eit=class{static{o(this,"TreemapValidator")}static{kt(this,"TreemapValidator")}checkSingleRoot(t,e){let r;for(let n of t.TreemapRows)n.item&&(r===void 0&&n.indent===void 0?r=0:n.indent===void 0?e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}):r!==void 0&&r>=parseInt(n.indent,10)&&e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}))}},a7={parser:{TokenBuilder:kt(()=>new Qnt,"TokenBuilder"),ValueConverter:kt(()=>new Jnt,"ValueConverter")},validation:{TreemapValidator:kt(()=>new eit,"TreemapValidator")}};o(s7,"createTreemapServices");kt(s7,"createTreemapServices")});var g4e={};vr(g4e,{InfoModule:()=>XA,createInfoServices:()=>KA});var y4e=I(()=>{"use strict";UV();ps()});var v4e={};vr(v4e,{PacketModule:()=>QA,createPacketServices:()=>ZA});var x4e=I(()=>{"use strict";WV();ps()});var b4e={};vr(b4e,{PieModule:()=>JA,createPieServices:()=>e7});var T4e=I(()=>{"use strict";HV();ps()});var w4e={};vr(w4e,{ArchitectureModule:()=>t7,createArchitectureServices:()=>r7});var k4e=I(()=>{"use strict";YV();ps()});var S4e={};vr(S4e,{GitGraphModule:()=>YA,createGitGraphServices:()=>jA});var E4e=I(()=>{"use strict";qV();ps()});var C4e={};vr(C4e,{RadarModule:()=>n7,createRadarServices:()=>i7});var A4e=I(()=>{"use strict";jV();ps()});var _4e={};vr(_4e,{TreemapModule:()=>a7,createTreemapServices:()=>s7});var D4e=I(()=>{"use strict";XV();ps()});async function Vs(t,e){let r=tit[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);Qh[t]||await r();let i=Qh[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new rit(i);return i.value}var Qh,tit,rit,sp=I(()=>{"use strict";qV();UV();WV();HV();YV();jV();XV();ps();Qh={},tit={info:kt(async()=>{let{createInfoServices:t}=await Promise.resolve().then(()=>(y4e(),g4e)),e=t().Info.parser.LangiumParser;Qh.info=e},"info"),packet:kt(async()=>{let{createPacketServices:t}=await Promise.resolve().then(()=>(x4e(),v4e)),e=t().Packet.parser.LangiumParser;Qh.packet=e},"packet"),pie:kt(async()=>{let{createPieServices:t}=await Promise.resolve().then(()=>(T4e(),b4e)),e=t().Pie.parser.LangiumParser;Qh.pie=e},"pie"),architecture:kt(async()=>{let{createArchitectureServices:t}=await Promise.resolve().then(()=>(k4e(),w4e)),e=t().Architecture.parser.LangiumParser;Qh.architecture=e},"architecture"),gitGraph:kt(async()=>{let{createGitGraphServices:t}=await Promise.resolve().then(()=>(E4e(),S4e)),e=t().GitGraph.parser.LangiumParser;Qh.gitGraph=e},"gitGraph"),radar:kt(async()=>{let{createRadarServices:t}=await Promise.resolve().then(()=>(A4e(),C4e)),e=t().Radar.parser.LangiumParser;Qh.radar=e},"radar"),treemap:kt(async()=>{let{createTreemapServices:t}=await Promise.resolve().then(()=>(D4e(),_4e)),e=t().Treemap.parser.LangiumParser;Qh.treemap=e},"treemap")};o(Vs,"parse");kt(Vs,"parse");rit=class extends Error{static{o(this,"MermaidParseError")}constructor(t){let e=t.lexerErrors.map(n=>n.message).join(` `),r=t.parserErrors.map(n=>n.message).join(` -`);super(`Parsing failed: ${e} ${r}`),this.result=t}static{Tt(this,"MermaidParseError")}}});function nl(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}var r0=M(()=>{"use strict";o(nl,"populateCommonDb")});var rn,N6=M(()=>{"use strict";rn={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var J1,fF=M(()=>{"use strict";J1=class{constructor(e){this.init=e;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function dF(){return VL({length:7})}function iKe(t,e){let r=Object.create(null);return t.reduce((n,i)=>{let a=e(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function Ege(t,e,r){let n=t.indexOf(e);n===-1?t.push(r):t.splice(n,1,r)}function Cge(t){let e=t.reduce((i,a)=>i.seq>a.seq?i:a,t[0]),r="";t.forEach(function(i){i===e?r+=" *":r+=" |"});let n=[r,e.id,e.seq];for(let i in Dt.records.branches)Dt.records.branches.get(i)===e.id&&n.push(i);if(X.debug(n.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=Dt.records.commits.get(e.parents[0]);Ege(t,e,i),e.parents[1]&&t.push(Dt.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let i=Dt.records.commits.get(e.parents[0]);Ege(t,e,i)}}t=iKe(t,i=>i.id),Cge(t)}var nKe,n0,Dt,aKe,sKe,oKe,lKe,cKe,uKe,hKe,Sge,fKe,dKe,pKe,mKe,gKe,Age,yKe,vKe,xKe,M6,pF=M(()=>{"use strict";pt();tr();qn();gr();ci();N6();fF();Ra();nKe=ur.gitGraph,n0=o(()=>Vn({...nKe,...Qt().gitGraph}),"getConfig"),Dt=new J1(()=>{let t=n0(),e=t.mainBranchName,r=t.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:r}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});o(dF,"getID");o(iKe,"uniqBy");aKe=o(function(t){Dt.records.direction=t},"setDirection"),sKe=o(function(t){X.debug("options str",t),t=t?.trim(),t=t||"{}";try{Dt.records.options=JSON.parse(t)}catch(e){X.error("error while parsing gitGraph options",e.message)}},"setOptions"),oKe=o(function(){return Dt.records.options},"getOptions"),lKe=o(function(t){let e=t.msg,r=t.id,n=t.type,i=t.tags;X.info("commit",e,r,n,i),X.debug("Entering commit:",e,r,n,i);let a=n0();r=tt.sanitizeText(r,a),e=tt.sanitizeText(e,a),i=i?.map(l=>tt.sanitizeText(l,a));let s={id:r||Dt.records.seq+"-"+dF(),message:e,seq:Dt.records.seq++,type:n??rn.NORMAL,tags:i??[],parents:Dt.records.head==null?[]:[Dt.records.head.id],branch:Dt.records.currBranch};Dt.records.head=s,X.info("main branch",a.mainBranchName),Dt.records.commits.has(s.id)&&X.warn(`Commit ID ${s.id} already exists`),Dt.records.commits.set(s.id,s),Dt.records.branches.set(Dt.records.currBranch,s.id),X.debug("in pushCommit "+s.id)},"commit"),cKe=o(function(t){let e=t.name,r=t.order;if(e=tt.sanitizeText(e,n0()),Dt.records.branches.has(e))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);Dt.records.branches.set(e,Dt.records.head!=null?Dt.records.head.id:null),Dt.records.branchConfig.set(e,{name:e,order:r}),Sge(e),X.debug("in createBranch")},"branch"),uKe=o(t=>{let e=t.branch,r=t.id,n=t.type,i=t.tags,a=n0();e=tt.sanitizeText(e,a),r&&(r=tt.sanitizeText(r,a));let s=Dt.records.branches.get(Dt.records.currBranch),l=Dt.records.branches.get(e),u=s?Dt.records.commits.get(s):void 0,h=l?Dt.records.commits.get(l):void 0;if(u&&h&&u.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(Dt.records.currBranch===e){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${Dt.records.currBranch})has no commits`);throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},p}if(!Dt.records.branches.has(e)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(r&&Dt.records.commits.has(r)){let p=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom id");throw p.hash={text:`merge ${e} ${r} ${n} ${i?.join(" ")}`,token:`merge ${e} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${e} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${Dt.records.seq}-${dF()}`,message:`merged branch ${e} into ${Dt.records.currBranch}`,seq:Dt.records.seq++,parents:Dt.records.head==null?[]:[Dt.records.head.id,f],branch:Dt.records.currBranch,type:rn.MERGE,customType:n,customId:!!r,tags:i??[]};Dt.records.head=d,Dt.records.commits.set(d.id,d),Dt.records.branches.set(Dt.records.currBranch,d.id),X.debug(Dt.records.branches),X.debug("in mergeBranch")},"merge"),hKe=o(function(t){let e=t.id,r=t.targetId,n=t.tags,i=t.parent;X.debug("Entering cherryPick:",e,r,n);let a=n0();if(e=tt.sanitizeText(e,a),r=tt.sanitizeText(r,a),n=n?.map(u=>tt.sanitizeText(u,a)),i=tt.sanitizeText(i,a),!e||!Dt.records.commits.has(e)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},u}let s=Dt.records.commits.get(e);if(s===void 0||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(s.parents)&&s.parents.includes(i)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let l=s.branch;if(s.type===rn.MERGE&&!i)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!Dt.records.commits.has(r)){if(l===Dt.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let u=Dt.records.branches.get(Dt.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Dt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let h=Dt.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Dt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let f={id:Dt.records.seq+"-"+dF(),message:`cherry-picked ${s?.message} into ${Dt.records.currBranch}`,seq:Dt.records.seq++,parents:Dt.records.head==null?[]:[Dt.records.head.id,s.id],branch:Dt.records.currBranch,type:rn.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===rn.MERGE?`|parent:${i}`:""}`]};Dt.records.head=f,Dt.records.commits.set(f.id,f),Dt.records.branches.set(Dt.records.currBranch,f.id),X.debug(Dt.records.branches),X.debug("in cherryPick")}},"cherryPick"),Sge=o(function(t){if(t=tt.sanitizeText(t,n0()),Dt.records.branches.has(t)){Dt.records.currBranch=t;let e=Dt.records.branches.get(Dt.records.currBranch);e===void 0||!e?Dt.records.head=null:Dt.records.head=Dt.records.commits.get(e)??null}else{let e=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw e.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},e}},"checkout");o(Ege,"upsert");o(Cge,"prettyPrintCommitHistory");fKe=o(function(){X.debug(Dt.records.commits);let t=Age()[0];Cge([t])},"prettyPrint"),dKe=o(function(){Dt.reset(),Sr()},"clear"),pKe=o(function(){return[...Dt.records.branchConfig.values()].map((e,r)=>e.order!==null&&e.order!==void 0?e:{...e,order:parseFloat(`0.${r}`)}).sort((e,r)=>(e.order??0)-(r.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),mKe=o(function(){return Dt.records.branches},"getBranches"),gKe=o(function(){return Dt.records.commits},"getCommits"),Age=o(function(){let t=[...Dt.records.commits.values()];return t.forEach(function(e){X.debug(e.id)}),t.sort((e,r)=>e.seq-r.seq),t},"getCommitsArray"),yKe=o(function(){return Dt.records.currBranch},"getCurrentBranch"),vKe=o(function(){return Dt.records.direction},"getDirection"),xKe=o(function(){return Dt.records.head},"getHead"),M6={commitType:rn,getConfig:n0,setDirection:aKe,setOptions:sKe,getOptions:oKe,commit:lKe,branch:cKe,merge:uKe,cherryPick:hKe,checkout:Sge,prettyPrint:fKe,clear:dKe,getBranchesAsObjArray:pKe,getBranches:mKe,getCommits:gKe,getCommitsArray:Age,getCurrentBranch:yKe,getDirection:vKe,getHead:xKe,setAccTitle:Rr,getAccTitle:Mr,getAccDescription:Or,setAccDescription:Ir,setDiagramTitle:$r,getDiagramTitle:Pr}});var bKe,TKe,wKe,kKe,EKe,SKe,CKe,_ge,Dge=M(()=>{"use strict";Uf();pt();r0();pF();N6();bKe=o((t,e)=>{nl(t,e),t.dir&&e.setDirection(t.dir);for(let r of t.statements)TKe(r,e)},"populate"),TKe=o((t,e)=>{let n={Commit:o(i=>e.commit(wKe(i)),"Commit"),Branch:o(i=>e.branch(kKe(i)),"Branch"),Merge:o(i=>e.merge(EKe(i)),"Merge"),Checkout:o(i=>e.checkout(SKe(i)),"Checkout"),CherryPicking:o(i=>e.cherryPick(CKe(i)),"CherryPicking")}[t.$type];n?n(t):X.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),wKe=o(t=>({id:t.id,msg:t.message??"",type:t.type!==void 0?rn[t.type]:rn.NORMAL,tags:t.tags??void 0}),"parseCommit"),kKe=o(t=>({name:t.name,order:t.order??0}),"parseBranch"),EKe=o(t=>({branch:t.branch,id:t.id??"",type:t.type!==void 0?rn[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),SKe=o(t=>t.branch,"parseCheckout"),CKe=o(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),_ge={parse:o(async t=>{let e=await bs("gitGraph",t);X.debug(e),bKe(e,M6)},"parse")}});var AKe,il,qf,Wf,Jc,ih,i0,Ks,Qs,I6,f4,O6,Hf,Vr,_Ke,Rge,Nge,DKe,LKe,RKe,NKe,MKe,IKe,OKe,PKe,BKe,FKe,$Ke,zKe,Lge,GKe,d4,VKe,UKe,HKe,qKe,WKe,Mge,Ige=M(()=>{"use strict";yr();Xt();pt();tr();N6();AKe=ge(),il=AKe?.gitGraph,qf=10,Wf=40,Jc=4,ih=2,i0=8,Ks=new Map,Qs=new Map,I6=30,f4=new Map,O6=[],Hf=0,Vr="LR",_Ke=o(()=>{Ks.clear(),Qs.clear(),f4.clear(),Hf=0,O6=[],Vr="LR"},"clear"),Rge=o(t=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof t=="string"?t.split(/\\n|\n|/gi):t).forEach(n=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=n.trim(),e.appendChild(i)}),e},"drawText"),Nge=o(t=>{let e,r,n;return Vr==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),t.forEach(i=>{let a=Vr==="TB"||Vr=="BT"?Qs.get(i)?.y:Qs.get(i)?.x;a!==void 0&&r(a,n)&&(e=i,n=a)}),e},"findClosestParent"),DKe=o(t=>{let e="",r=1/0;return t.forEach(n=>{let i=Qs.get(n).y;i<=r&&(e=n,r=i)}),e||void 0},"findClosestParentBT"),LKe=o((t,e,r)=>{let n=r,i=r,a=[];t.forEach(s=>{let l=e.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=NKe(l),i=Math.max(n,i)):a.push(l),MKe(l,n)}),n=i,a.forEach(s=>{IKe(s,n,r)}),t.forEach(s=>{let l=e.get(s);if(l?.parents.length){let u=DKe(l.parents);n=Qs.get(u).y-Wf,n<=i&&(i=n);let h=Ks.get(l.branch).pos,f=n-qf;Qs.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),RKe=o(t=>{let e=Nge(t.parents.filter(n=>n!==null));if(!e)throw new Error(`Closest parent not found for commit ${t.id}`);let r=Qs.get(e)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),NKe=o(t=>RKe(t)+Wf,"calculateCommitPosition"),MKe=o((t,e)=>{let r=Ks.get(t.branch);if(!r)throw new Error(`Branch not found for commit ${t.id}`);let n=r.pos,i=e+qf;return Qs.set(t.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),IKe=o((t,e,r)=>{let n=Ks.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);let i=e+r,a=n.pos;Qs.set(t.id,{x:a,y:i})},"setRootPosition"),OKe=o((t,e,r,n,i,a)=>{if(a===rn.HIGHLIGHT)t.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${e.id} commit-highlight${i%i0} ${n}-outer`),t.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${e.id} commit${i%i0} ${n}-inner`);else if(a===rn.CHERRY_PICK)t.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`);else{let s=t.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",e.type===rn.MERGE?9:10),s.attr("class",`commit ${e.id} commit${i%i0}`),a===rn.MERGE){let l=t.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${e.id} commit${i%i0}`)}a===rn.REVERSE&&t.append("path").attr("d",`M ${r.x-5},${r.y-5}L${r.x+5},${r.y+5}M${r.x-5},${r.y+5}L${r.x+5},${r.y-5}`).attr("class",`commit ${n} ${e.id} commit${i%i0}`)}},"drawCommitBullet"),PKe=o((t,e,r,n)=>{if(e.type!==rn.CHERRY_PICK&&(e.customId&&e.type===rn.MERGE||e.type!==rn.MERGE)&&il?.showCommitLabel){let i=t.append("g"),a=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",n).attr("y",r.y+25).attr("class","commit-label").text(e.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-ih).attr("y",r.y+13.5).attr("width",l.width+2*ih).attr("height",l.height+2*ih),Vr==="TB"||Vr==="BT"?(a.attr("x",r.x-(l.width+4*Jc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Jc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),il.rotateCommitLabel))if(Vr==="TB"||Vr==="BT")s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),a.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let u=-7.5-(l.width+10)/25*9.5,h=10+l.width/25*8.5;i.attr("transform","translate("+u+", "+h+") rotate(-45, "+n+", "+r.y+")")}}},"drawCommitLabel"),BKe=o((t,e,r,n)=>{if(e.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of e.tags.reverse()){let h=t.insert("polygon"),f=t.append("circle"),d=t.append("text").attr("y",r.y-16-i).attr("class","tag-label").text(u),p=d.node()?.getBBox();if(!p)throw new Error("Tag bbox not found");a=Math.max(a,p.width),s=Math.max(s,p.height),d.attr("x",r.posWithOffset-p.width/2),l.push({tag:d,hole:f,rect:h,yOffset:i}),i+=20}for(let{tag:u,hole:h,rect:f,yOffset:d}of l){let p=s/2,m=r.y-19.2-d;if(f.attr("class","tag-label-bkg").attr("points",` - ${n-a/2-Jc/2},${m+ih} - ${n-a/2-Jc/2},${m-ih} - ${r.posWithOffset-a/2-Jc},${m-p-ih} - ${r.posWithOffset+a/2+Jc},${m-p-ih} - ${r.posWithOffset+a/2+Jc},${m+p+ih} - ${r.posWithOffset-a/2-Jc},${m+p+ih}`),h.attr("cy",m).attr("cx",n-a/2+Jc/2).attr("r",1.5).attr("class","tag-hole"),Vr==="TB"||Vr==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",` +`);super(`Parsing failed: ${e} ${r}`),this.result=t}static{kt(this,"MermaidParseError")}}});function Pl(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}var $m=I(()=>{"use strict";o(Pl,"populateCommonDb")});var fn,o7=I(()=>{"use strict";fn={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var wv,KV=I(()=>{"use strict";wv=class{constructor(e){this.init=e;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function QV(){return yN({length:7})}function iit(t,e){let r=Object.create(null);return t.reduce((n,i)=>{let a=e(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function R4e(t,e,r){let n=t.indexOf(e);n===-1?t.push(r):t.splice(n,1,r)}function N4e(t){let e=t.reduce((i,a)=>i.seq>a.seq?i:a,t[0]),r="";t.forEach(function(i){i===e?r+=" *":r+=" |"});let n=[r,e.id,e.seq];for(let i in Nt.records.branches)Nt.records.branches.get(i)===e.id&&n.push(i);if(X.debug(n.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=Nt.records.commits.get(e.parents[0]);R4e(t,e,i),e.parents[1]&&t.push(Nt.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let i=Nt.records.commits.get(e.parents[0]);R4e(t,e,i)}}t=iit(t,i=>i.id),N4e(t)}var nit,zm,Nt,ait,sit,oit,lit,cit,uit,hit,L4e,fit,dit,pit,mit,git,M4e,yit,vit,xit,l7,ZV=I(()=>{"use strict";gt();sr();ti();wr();ki();o7();KV();Ka();nit=gr.gitGraph,zm=o(()=>Qn({...nit,...tr().gitGraph}),"getConfig"),Nt=new wv(()=>{let t=zm(),e=t.mainBranchName,r=t.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:r}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});o(QV,"getID");o(iit,"uniqBy");ait=o(function(t){Nt.records.direction=t},"setDirection"),sit=o(function(t){X.debug("options str",t),t=t?.trim(),t=t||"{}";try{Nt.records.options=JSON.parse(t)}catch(e){X.error("error while parsing gitGraph options",e.message)}},"setOptions"),oit=o(function(){return Nt.records.options},"getOptions"),lit=o(function(t){let e=t.msg,r=t.id,n=t.type,i=t.tags;X.info("commit",e,r,n,i),X.debug("Entering commit:",e,r,n,i);let a=zm();r=nt.sanitizeText(r,a),e=nt.sanitizeText(e,a),i=i?.map(l=>nt.sanitizeText(l,a));let s={id:r||Nt.records.seq+"-"+QV(),message:e,seq:Nt.records.seq++,type:n??fn.NORMAL,tags:i??[],parents:Nt.records.head==null?[]:[Nt.records.head.id],branch:Nt.records.currBranch};Nt.records.head=s,X.info("main branch",a.mainBranchName),Nt.records.commits.has(s.id)&&X.warn(`Commit ID ${s.id} already exists`),Nt.records.commits.set(s.id,s),Nt.records.branches.set(Nt.records.currBranch,s.id),X.debug("in pushCommit "+s.id)},"commit"),cit=o(function(t){let e=t.name,r=t.order;if(e=nt.sanitizeText(e,zm()),Nt.records.branches.has(e))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);Nt.records.branches.set(e,Nt.records.head!=null?Nt.records.head.id:null),Nt.records.branchConfig.set(e,{name:e,order:r}),L4e(e),X.debug("in createBranch")},"branch"),uit=o(t=>{let e=t.branch,r=t.id,n=t.type,i=t.tags,a=zm();e=nt.sanitizeText(e,a),r&&(r=nt.sanitizeText(r,a));let s=Nt.records.branches.get(Nt.records.currBranch),l=Nt.records.branches.get(e),u=s?Nt.records.commits.get(s):void 0,h=l?Nt.records.commits.get(l):void 0;if(u&&h&&u.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(Nt.records.currBranch===e){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${Nt.records.currBranch})has no commits`);throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},p}if(!Nt.records.branches.has(e)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(r&&Nt.records.commits.has(r)){let p=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom id");throw p.hash={text:`merge ${e} ${r} ${n} ${i?.join(" ")}`,token:`merge ${e} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${e} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${Nt.records.seq}-${QV()}`,message:`merged branch ${e} into ${Nt.records.currBranch}`,seq:Nt.records.seq++,parents:Nt.records.head==null?[]:[Nt.records.head.id,f],branch:Nt.records.currBranch,type:fn.MERGE,customType:n,customId:!!r,tags:i??[]};Nt.records.head=d,Nt.records.commits.set(d.id,d),Nt.records.branches.set(Nt.records.currBranch,d.id),X.debug(Nt.records.branches),X.debug("in mergeBranch")},"merge"),hit=o(function(t){let e=t.id,r=t.targetId,n=t.tags,i=t.parent;X.debug("Entering cherryPick:",e,r,n);let a=zm();if(e=nt.sanitizeText(e,a),r=nt.sanitizeText(r,a),n=n?.map(u=>nt.sanitizeText(u,a)),i=nt.sanitizeText(i,a),!e||!Nt.records.commits.has(e)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},u}let s=Nt.records.commits.get(e);if(s===void 0||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(s.parents)&&s.parents.includes(i)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let l=s.branch;if(s.type===fn.MERGE&&!i)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!Nt.records.commits.has(r)){if(l===Nt.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let u=Nt.records.branches.get(Nt.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Nt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let h=Nt.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Nt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let f={id:Nt.records.seq+"-"+QV(),message:`cherry-picked ${s?.message} into ${Nt.records.currBranch}`,seq:Nt.records.seq++,parents:Nt.records.head==null?[]:[Nt.records.head.id,s.id],branch:Nt.records.currBranch,type:fn.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===fn.MERGE?`|parent:${i}`:""}`]};Nt.records.head=f,Nt.records.commits.set(f.id,f),Nt.records.branches.set(Nt.records.currBranch,f.id),X.debug(Nt.records.branches),X.debug("in cherryPick")}},"cherryPick"),L4e=o(function(t){if(t=nt.sanitizeText(t,zm()),Nt.records.branches.has(t)){Nt.records.currBranch=t;let e=Nt.records.branches.get(Nt.records.currBranch);e===void 0||!e?Nt.records.head=null:Nt.records.head=Nt.records.commits.get(e)??null}else{let e=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw e.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},e}},"checkout");o(R4e,"upsert");o(N4e,"prettyPrintCommitHistory");fit=o(function(){X.debug(Nt.records.commits);let t=M4e()[0];N4e([t])},"prettyPrint"),dit=o(function(){Nt.reset(),Mr()},"clear"),pit=o(function(){return[...Nt.records.branchConfig.values()].map((e,r)=>e.order!==null&&e.order!==void 0?e:{...e,order:parseFloat(`0.${r}`)}).sort((e,r)=>(e.order??0)-(r.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),mit=o(function(){return Nt.records.branches},"getBranches"),git=o(function(){return Nt.records.commits},"getCommits"),M4e=o(function(){let t=[...Nt.records.commits.values()];return t.forEach(function(e){X.debug(e.id)}),t.sort((e,r)=>e.seq-r.seq),t},"getCommitsArray"),yit=o(function(){return Nt.records.currBranch},"getCurrentBranch"),vit=o(function(){return Nt.records.direction},"getDirection"),xit=o(function(){return Nt.records.head},"getHead"),l7={commitType:fn,getConfig:zm,setDirection:ait,setOptions:sit,getOptions:oit,commit:lit,branch:cit,merge:uit,cherryPick:hit,checkout:L4e,prettyPrint:fit,clear:dit,getBranchesAsObjArray:pit,getBranches:mit,getCommits:git,getCommitsArray:M4e,getCurrentBranch:yit,getDirection:vit,getHead:xit,setAccTitle:zr,getAccTitle:Vr,getAccDescription:Ur,setAccDescription:qr,setDiagramTitle:Xr,getDiagramTitle:Wr}});var bit,Tit,wit,kit,Sit,Eit,Cit,I4e,O4e=I(()=>{"use strict";sp();gt();$m();ZV();o7();bit=o((t,e)=>{Pl(t,e),t.dir&&e.setDirection(t.dir);for(let r of t.statements)Tit(r,e)},"populate"),Tit=o((t,e)=>{let n={Commit:o(i=>e.commit(wit(i)),"Commit"),Branch:o(i=>e.branch(kit(i)),"Branch"),Merge:o(i=>e.merge(Sit(i)),"Merge"),Checkout:o(i=>e.checkout(Eit(i)),"Checkout"),CherryPicking:o(i=>e.cherryPick(Cit(i)),"CherryPicking")}[t.$type];n?n(t):X.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),wit=o(t=>({id:t.id,msg:t.message??"",type:t.type!==void 0?fn[t.type]:fn.NORMAL,tags:t.tags??void 0}),"parseCommit"),kit=o(t=>({name:t.name,order:t.order??0}),"parseBranch"),Sit=o(t=>({branch:t.branch,id:t.id??"",type:t.type!==void 0?fn[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),Eit=o(t=>t.branch,"parseCheckout"),Cit=o(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),I4e={parse:o(async t=>{let e=await Vs("gitGraph",t);X.debug(e),bit(e,l7)},"parse")}});var Ait,Bl,lp,cp,Vu,Zh,Gm,So,Eo,c7,jT,u7,op,Qr,_it,B4e,F4e,Dit,Rit,Lit,Nit,Mit,Iit,Oit,Pit,Bit,Fit,$it,zit,P4e,Git,XT,Vit,qit,Uit,Wit,Hit,$4e,z4e=I(()=>{"use strict";kr();Qt();gt();sr();o7();Ait=xe(),Bl=Ait?.gitGraph,lp=10,cp=40,Vu=4,Zh=2,Gm=8,So=new Map,Eo=new Map,c7=30,jT=new Map,u7=[],op=0,Qr="LR",_it=o(()=>{So.clear(),Eo.clear(),jT.clear(),op=0,u7=[],Qr="LR"},"clear"),B4e=o(t=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof t=="string"?t.split(/\\n|\n|/gi):t).forEach(n=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=n.trim(),e.appendChild(i)}),e},"drawText"),F4e=o(t=>{let e,r,n;return Qr==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),t.forEach(i=>{let a=Qr==="TB"||Qr=="BT"?Eo.get(i)?.y:Eo.get(i)?.x;a!==void 0&&r(a,n)&&(e=i,n=a)}),e},"findClosestParent"),Dit=o(t=>{let e="",r=1/0;return t.forEach(n=>{let i=Eo.get(n).y;i<=r&&(e=n,r=i)}),e||void 0},"findClosestParentBT"),Rit=o((t,e,r)=>{let n=r,i=r,a=[];t.forEach(s=>{let l=e.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=Nit(l),i=Math.max(n,i)):a.push(l),Mit(l,n)}),n=i,a.forEach(s=>{Iit(s,n,r)}),t.forEach(s=>{let l=e.get(s);if(l?.parents.length){let u=Dit(l.parents);n=Eo.get(u).y-cp,n<=i&&(i=n);let h=So.get(l.branch).pos,f=n-lp;Eo.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),Lit=o(t=>{let e=F4e(t.parents.filter(n=>n!==null));if(!e)throw new Error(`Closest parent not found for commit ${t.id}`);let r=Eo.get(e)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),Nit=o(t=>Lit(t)+cp,"calculateCommitPosition"),Mit=o((t,e)=>{let r=So.get(t.branch);if(!r)throw new Error(`Branch not found for commit ${t.id}`);let n=r.pos,i=e+lp;return Eo.set(t.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),Iit=o((t,e,r)=>{let n=So.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);let i=e+r,a=n.pos;Eo.set(t.id,{x:a,y:i})},"setRootPosition"),Oit=o((t,e,r,n,i,a)=>{if(a===fn.HIGHLIGHT)t.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${e.id} commit-highlight${i%Gm} ${n}-outer`),t.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${e.id} commit${i%Gm} ${n}-inner`);else if(a===fn.CHERRY_PICK)t.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`);else{let s=t.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",e.type===fn.MERGE?9:10),s.attr("class",`commit ${e.id} commit${i%Gm}`),a===fn.MERGE){let l=t.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${e.id} commit${i%Gm}`)}a===fn.REVERSE&&t.append("path").attr("d",`M ${r.x-5},${r.y-5}L${r.x+5},${r.y+5}M${r.x-5},${r.y+5}L${r.x+5},${r.y-5}`).attr("class",`commit ${n} ${e.id} commit${i%Gm}`)}},"drawCommitBullet"),Pit=o((t,e,r,n)=>{if(e.type!==fn.CHERRY_PICK&&(e.customId&&e.type===fn.MERGE||e.type!==fn.MERGE)&&Bl?.showCommitLabel){let i=t.append("g"),a=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",n).attr("y",r.y+25).attr("class","commit-label").text(e.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-Zh).attr("y",r.y+13.5).attr("width",l.width+2*Zh).attr("height",l.height+2*Zh),Qr==="TB"||Qr==="BT"?(a.attr("x",r.x-(l.width+4*Vu+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Vu)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),Bl.rotateCommitLabel))if(Qr==="TB"||Qr==="BT")s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),a.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let u=-7.5-(l.width+10)/25*9.5,h=10+l.width/25*8.5;i.attr("transform","translate("+u+", "+h+") rotate(-45, "+n+", "+r.y+")")}}},"drawCommitLabel"),Bit=o((t,e,r,n)=>{if(e.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of e.tags.reverse()){let h=t.insert("polygon"),f=t.append("circle"),d=t.append("text").attr("y",r.y-16-i).attr("class","tag-label").text(u),p=d.node()?.getBBox();if(!p)throw new Error("Tag bbox not found");a=Math.max(a,p.width),s=Math.max(s,p.height),d.attr("x",r.posWithOffset-p.width/2),l.push({tag:d,hole:f,rect:h,yOffset:i}),i+=20}for(let{tag:u,hole:h,rect:f,yOffset:d}of l){let p=s/2,m=r.y-19.2-d;if(f.attr("class","tag-label-bkg").attr("points",` + ${n-a/2-Vu/2},${m+Zh} + ${n-a/2-Vu/2},${m-Zh} + ${r.posWithOffset-a/2-Vu},${m-p-Zh} + ${r.posWithOffset+a/2+Vu},${m-p-Zh} + ${r.posWithOffset+a/2+Vu},${m+p+Zh} + ${r.posWithOffset-a/2-Vu},${m+p+Zh}`),h.attr("cy",m).attr("cx",n-a/2+Vu/2).attr("r",1.5).attr("class","tag-hole"),Qr==="TB"||Qr==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",` ${r.x},${g+2} ${r.x},${g-2} - ${r.x+qf},${g-p-2} - ${r.x+qf+a+4},${g-p-2} - ${r.x+qf+a+4},${g+p+2} - ${r.x+qf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Jc/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),u.attr("x",r.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+n+")")}}}},"drawCommitTags"),FKe=o(t=>{switch(t.customType??t.type){case rn.NORMAL:return"commit-normal";case rn.REVERSE:return"commit-reverse";case rn.HIGHLIGHT:return"commit-highlight";case rn.MERGE:return"commit-merge";case rn.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),$Ke=o((t,e,r,n)=>{let i={x:0,y:0};if(t.parents.length>0){let a=Nge(t.parents);if(a){let s=n.get(a)??i;return e==="TB"?s.y+Wf:e==="BT"?(n.get(t.id)??i).y-Wf:s.x+Wf}}else return e==="TB"?I6:e==="BT"?(n.get(t.id)??i).y-Wf:0;return 0},"calculatePosition"),zKe=o((t,e,r)=>{let n=Vr==="BT"&&r?e:e+qf,i=Vr==="TB"||Vr==="BT"?n:Ks.get(t.branch)?.pos,a=Vr==="TB"||Vr==="BT"?Ks.get(t.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),Lge=o((t,e,r)=>{if(!il)throw new Error("GitGraph config not found");let n=t.append("g").attr("class","commit-bullets"),i=t.append("g").attr("class","commit-labels"),a=Vr==="TB"||Vr==="BT"?I6:0,s=[...e.keys()],l=il?.parallelCommits??!1,u=o((f,d)=>{let p=e.get(f)?.seq,m=e.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Vr==="BT"&&(l&&LKe(h,e,a),h=h.reverse()),h.forEach(f=>{let d=e.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=$Ke(d,Vr,a,Qs));let p=zKe(d,a,l);if(r){let m=FKe(d),g=d.customType??d.type,y=Ks.get(d.branch)?.index??0;OKe(n,d,p,m,y,g),PKe(i,d,p,a),BKe(i,d,p,a)}Vr==="TB"||Vr==="BT"?Qs.set(d.id,{x:p.x,y:p.posWithOffset}):Qs.set(d.id,{x:p.posWithOffset,y:p.y}),a=Vr==="BT"&&l?a+Wf:a+Wf+qf,a>Hf&&(Hf=a)})},"drawCommits"),GKe=o((t,e,r,n,i)=>{let s=(Vr==="TB"||Vr==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>t.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),d4=o((t,e,r=0)=>{let n=t+Math.abs(t-e)/2;if(r>5)return n;if(O6.every(s=>Math.abs(s-n)>=10))return O6.push(n),n;let a=Math.abs(t-e);return d4(t,e-a/5,r+1)},"findLane"),VKe=o((t,e,r,n)=>{let i=Qs.get(e.id),a=Qs.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${e.id} and ${r.id}`);let s=GKe(e,r,i,a,n),l="",u="",h=0,f=0,d=Ks.get(r.branch)?.index;r.type===rn.MERGE&&e.id!==r.parents[0]&&(d=Ks.get(e.branch)?.index);let p;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,f=10;let m=i.ya.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===rn.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${u} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x+h} ${i.y} ${l} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):Vr==="BT"?(i.xa.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===rn.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${l} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):(i.ya.y&&(r.type===rn.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y===a.y&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`));if(p===void 0)throw new Error("Line definition not found");t.append("path").attr("d",p).attr("class","arrow arrow"+d%i0)},"drawArrow"),UKe=o((t,e)=>{let r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach(n=>{let i=e.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{VKe(r,e.get(a),i,e)})})},"drawArrows"),HKe=o((t,e)=>{let r=t.append("g");e.forEach((n,i)=>{let a=i%i0,s=Ks.get(n.name)?.pos;if(s===void 0)throw new Error(`Position not found for branch ${n.name}`);let l=r.append("line");l.attr("x1",0),l.attr("y1",s),l.attr("x2",Hf),l.attr("y2",s),l.attr("class","branch branch"+a),Vr==="TB"?(l.attr("y1",I6),l.attr("x1",s),l.attr("y2",Hf),l.attr("x2",s)):Vr==="BT"&&(l.attr("y1",Hf),l.attr("x1",s),l.attr("y2",I6),l.attr("x2",s)),O6.push(s);let u=n.name,h=Rge(u),f=r.insert("rect"),p=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);p.node().appendChild(h);let m=h.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(il?.rotateCommitLabel===!0?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),p.attr("transform","translate("+(-m.width-14-(il?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Vr==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Vr==="BT"?(f.attr("x",s-m.width/2-10).attr("y",Hf),p.attr("transform","translate("+(s-m.width/2-5)+", "+Hf+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),qKe=o(function(t,e,r,n,i){return Ks.set(t,{pos:e,index:r}),e+=50+(i?40:0)+(Vr==="TB"||Vr==="BT"?n.width/2:0),e},"setBranchPosition"),WKe=o(function(t,e,r,n){if(_Ke(),X.debug("in gitgraph renderer",t+` -`,"id:",e,r),!il)throw new Error("GitGraph config not found");let i=il.rotateCommitLabel??!1,a=n.db;f4=a.getCommits();let s=a.getBranchesAsObjArray();Vr=a.getDirection();let l=qe(`[id="${e}"]`),u=0;s.forEach((h,f)=>{let d=Rge(h.name),p=l.append("g"),m=p.insert("g").attr("class","branchLabel"),g=m.insert("g").attr("class","label branch-label");g.node()?.appendChild(d);let y=d.getBBox();u=qKe(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),Lge(l,f4,!1),il.showBranches&&HKe(l,s),UKe(l,f4),Lge(l,f4,!0),qt.insertTitle(l,"gitTitleText",il.titleTopMargin??0,a.getDiagramTitle()),FA(void 0,l,il.diagramPadding,il.useMaxWidth)},"draw"),Mge={draw:WKe}});var YKe,Oge,Pge=M(()=>{"use strict";YKe=o(t=>` + ${r.x+lp},${g-p-2} + ${r.x+lp+a+4},${g-p-2} + ${r.x+lp+a+4},${g+p+2} + ${r.x+lp},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Vu/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),u.attr("x",r.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+n+")")}}}},"drawCommitTags"),Fit=o(t=>{switch(t.customType??t.type){case fn.NORMAL:return"commit-normal";case fn.REVERSE:return"commit-reverse";case fn.HIGHLIGHT:return"commit-highlight";case fn.MERGE:return"commit-merge";case fn.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),$it=o((t,e,r,n)=>{let i={x:0,y:0};if(t.parents.length>0){let a=F4e(t.parents);if(a){let s=n.get(a)??i;return e==="TB"?s.y+cp:e==="BT"?(n.get(t.id)??i).y-cp:s.x+cp}}else return e==="TB"?c7:e==="BT"?(n.get(t.id)??i).y-cp:0;return 0},"calculatePosition"),zit=o((t,e,r)=>{let n=Qr==="BT"&&r?e:e+lp,i=Qr==="TB"||Qr==="BT"?n:So.get(t.branch)?.pos,a=Qr==="TB"||Qr==="BT"?So.get(t.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),P4e=o((t,e,r)=>{if(!Bl)throw new Error("GitGraph config not found");let n=t.append("g").attr("class","commit-bullets"),i=t.append("g").attr("class","commit-labels"),a=Qr==="TB"||Qr==="BT"?c7:0,s=[...e.keys()],l=Bl?.parallelCommits??!1,u=o((f,d)=>{let p=e.get(f)?.seq,m=e.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Qr==="BT"&&(l&&Rit(h,e,a),h=h.reverse()),h.forEach(f=>{let d=e.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=$it(d,Qr,a,Eo));let p=zit(d,a,l);if(r){let m=Fit(d),g=d.customType??d.type,y=So.get(d.branch)?.index??0;Oit(n,d,p,m,y,g),Pit(i,d,p,a),Bit(i,d,p,a)}Qr==="TB"||Qr==="BT"?Eo.set(d.id,{x:p.x,y:p.posWithOffset}):Eo.set(d.id,{x:p.posWithOffset,y:p.y}),a=Qr==="BT"&&l?a+cp:a+cp+lp,a>op&&(op=a)})},"drawCommits"),Git=o((t,e,r,n,i)=>{let s=(Qr==="TB"||Qr==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>t.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),XT=o((t,e,r=0)=>{let n=t+Math.abs(t-e)/2;if(r>5)return n;if(u7.every(s=>Math.abs(s-n)>=10))return u7.push(n),n;let a=Math.abs(t-e);return XT(t,e-a/5,r+1)},"findLane"),Vit=o((t,e,r,n)=>{let i=Eo.get(e.id),a=Eo.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${e.id} and ${r.id}`);let s=Git(e,r,i,a,n),l="",u="",h=0,f=0,d=So.get(r.branch)?.index;r.type===fn.MERGE&&e.id!==r.parents[0]&&(d=So.get(e.branch)?.index);let p;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,f=10;let m=i.ya.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===fn.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${u} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x+h} ${i.y} ${l} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):Qr==="BT"?(i.xa.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===fn.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${l} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):(i.ya.y&&(r.type===fn.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y===a.y&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`));if(p===void 0)throw new Error("Line definition not found");t.append("path").attr("d",p).attr("class","arrow arrow"+d%Gm)},"drawArrow"),qit=o((t,e)=>{let r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach(n=>{let i=e.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{Vit(r,e.get(a),i,e)})})},"drawArrows"),Uit=o((t,e)=>{let r=t.append("g");e.forEach((n,i)=>{let a=i%Gm,s=So.get(n.name)?.pos;if(s===void 0)throw new Error(`Position not found for branch ${n.name}`);let l=r.append("line");l.attr("x1",0),l.attr("y1",s),l.attr("x2",op),l.attr("y2",s),l.attr("class","branch branch"+a),Qr==="TB"?(l.attr("y1",c7),l.attr("x1",s),l.attr("y2",op),l.attr("x2",s)):Qr==="BT"&&(l.attr("y1",op),l.attr("x1",s),l.attr("y2",c7),l.attr("x2",s)),u7.push(s);let u=n.name,h=B4e(u),f=r.insert("rect"),p=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);p.node().appendChild(h);let m=h.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(Bl?.rotateCommitLabel===!0?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),p.attr("transform","translate("+(-m.width-14-(Bl?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Qr==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Qr==="BT"?(f.attr("x",s-m.width/2-10).attr("y",op),p.attr("transform","translate("+(s-m.width/2-5)+", "+op+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),Wit=o(function(t,e,r,n,i){return So.set(t,{pos:e,index:r}),e+=50+(i?40:0)+(Qr==="TB"||Qr==="BT"?n.width/2:0),e},"setBranchPosition"),Hit=o(function(t,e,r,n){if(_it(),X.debug("in gitgraph renderer",t+` +`,"id:",e,r),!Bl)throw new Error("GitGraph config not found");let i=Bl.rotateCommitLabel??!1,a=n.db;jT=a.getCommits();let s=a.getBranchesAsObjArray();Qr=a.getDirection();let l=He(`[id="${e}"]`),u=0;s.forEach((h,f)=>{let d=B4e(h.name),p=l.append("g"),m=p.insert("g").attr("class","branchLabel"),g=m.insert("g").attr("class","label branch-label");g.node()?.appendChild(d);let y=d.getBBox();u=Wit(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),P4e(l,jT,!1),Bl.showBranches&&Uit(l,s),qit(l,jT),P4e(l,jT,!0),jt.insertTitle(l,"gitTitleText",Bl.titleTopMargin??0,a.getDiagramTitle()),dD(void 0,l,Bl.diagramPadding,Bl.useMaxWidth)},"draw"),$4e={draw:Hit}});var Yit,G4e,V4e=I(()=>{"use strict";Yit=o(t=>` .commit-id, .commit-msg, .branch-label { @@ -1255,12 +1287,12 @@ ${r}`),this.inline?`{${i}}`:i}};o(vje,"renderInlineTag");o(xje,"renderLinkDefaul font-size: 18px; fill: ${t.textColor}; } -`,"getStyles"),Oge=YKe});var Bge={};dr(Bge,{diagram:()=>XKe});var XKe,Fge=M(()=>{"use strict";Dge();pF();Ige();Pge();XKe={parser:_ge,db:M6,renderer:Mge,styles:Oge}});var mF,Gge,Vge=M(()=>{"use strict";mF=(function(){var t=o(function(_,D,O,N){for(O=O||{},N=_.length;N--;O[_[N]]=D);return O},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],r=[1,26],n=[1,27],i=[1,28],a=[1,29],s=[1,30],l=[1,31],u=[1,32],h=[1,33],f=[1,34],d=[1,9],p=[1,10],m=[1,11],g=[1,12],y=[1,13],v=[1,14],x=[1,15],b=[1,16],T=[1,19],S=[1,20],w=[1,21],k=[1,22],C=[1,23],A=[1,25],L=[1,35],I={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:o(function(D,O,N,P,B,F,V){var $=F.length-1;switch(B){case 1:return F[$-1];case 2:this.$=[];break;case 3:F[$-1].push(F[$]),this.$=F[$-1];break;case 4:case 5:this.$=F[$];break;case 6:case 7:this.$=[];break;case 8:P.setWeekday("monday");break;case 9:P.setWeekday("tuesday");break;case 10:P.setWeekday("wednesday");break;case 11:P.setWeekday("thursday");break;case 12:P.setWeekday("friday");break;case 13:P.setWeekday("saturday");break;case 14:P.setWeekday("sunday");break;case 15:P.setWeekend("friday");break;case 16:P.setWeekend("saturday");break;case 17:P.setDateFormat(F[$].substr(11)),this.$=F[$].substr(11);break;case 18:P.enableInclusiveEndDates(),this.$=F[$].substr(18);break;case 19:P.TopAxis(),this.$=F[$].substr(8);break;case 20:P.setAxisFormat(F[$].substr(11)),this.$=F[$].substr(11);break;case 21:P.setTickInterval(F[$].substr(13)),this.$=F[$].substr(13);break;case 22:P.setExcludes(F[$].substr(9)),this.$=F[$].substr(9);break;case 23:P.setIncludes(F[$].substr(9)),this.$=F[$].substr(9);break;case 24:P.setTodayMarker(F[$].substr(12)),this.$=F[$].substr(12);break;case 27:P.setDiagramTitle(F[$].substr(6)),this.$=F[$].substr(6);break;case 28:this.$=F[$].trim(),P.setAccTitle(this.$);break;case 29:case 30:this.$=F[$].trim(),P.setAccDescription(this.$);break;case 31:P.addSection(F[$].substr(8)),this.$=F[$].substr(8);break;case 33:P.addTask(F[$-1],F[$]),this.$="task";break;case 34:this.$=F[$-1],P.setClickEvent(F[$-1],F[$],null);break;case 35:this.$=F[$-2],P.setClickEvent(F[$-2],F[$-1],F[$]);break;case 36:this.$=F[$-2],P.setClickEvent(F[$-2],F[$-1],null),P.setLink(F[$-2],F[$]);break;case 37:this.$=F[$-3],P.setClickEvent(F[$-3],F[$-2],F[$-1]),P.setLink(F[$-3],F[$]);break;case 38:this.$=F[$-2],P.setClickEvent(F[$-2],F[$],null),P.setLink(F[$-2],F[$-1]);break;case 39:this.$=F[$-3],P.setClickEvent(F[$-3],F[$-1],F[$]),P.setLink(F[$-3],F[$-2]);break;case 40:this.$=F[$-1],P.setLink(F[$-1],F[$]);break;case 41:case 47:this.$=F[$-1]+" "+F[$];break;case 42:case 43:case 45:this.$=F[$-2]+" "+F[$-1]+" "+F[$];break;case 44:case 46:this.$=F[$-3]+" "+F[$-2]+" "+F[$-1]+" "+F[$];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:T,31:S,33:w,35:k,36:C,37:24,38:A,40:L},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:T,31:S,33:w,35:k,36:C,37:24,38:A,40:L},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:o(function(D,O){if(O.recoverable)this.trace(D);else{var N=new Error(D);throw N.hash=O,N}},"parseError"),parse:o(function(D){var O=this,N=[0],P=[],B=[null],F=[],V=this.table,$="",U=0,j=0,ee=0,q=2,oe=1,Q=F.slice.call(arguments,1),ue=Object.create(this.lexer),te={yy:{}};for(var re in this.yy)Object.prototype.hasOwnProperty.call(this.yy,re)&&(te.yy[re]=this.yy[re]);ue.setInput(D,te.yy),te.yy.lexer=ue,te.yy.parser=this,typeof ue.yylloc>"u"&&(ue.yylloc={});var J=ue.yylloc;F.push(J);var K=ue.options&&ue.options.ranges;typeof te.yy.parseError=="function"?this.parseError=te.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ae(Ce){N.length=N.length-2*Ce,B.length=B.length-Ce,F.length=F.length-Ce}o(ae,"popStack");function Z(){var Ce;return Ce=P.pop()||ue.lex()||oe,typeof Ce!="number"&&(Ce instanceof Array&&(P=Ce,Ce=P.pop()),Ce=O.symbols_[Ce]||Ce),Ce}o(Z,"lex");for(var de,ne,Te,W,Ve,pe,Be={},Ye,He,Le,Ie;;){if(Te=N[N.length-1],this.defaultActions[Te]?W=this.defaultActions[Te]:((de===null||typeof de>"u")&&(de=Z()),W=V[Te]&&V[Te][de]),typeof W>"u"||!W.length||!W[0]){var Ne="";Ie=[];for(Ye in V[Te])this.terminals_[Ye]&&Ye>q&&Ie.push("'"+this.terminals_[Ye]+"'");ue.showPosition?Ne="Parse error on line "+(U+1)+`: -`+ue.showPosition()+` -Expecting `+Ie.join(", ")+", got '"+(this.terminals_[de]||de)+"'":Ne="Parse error on line "+(U+1)+": Unexpected "+(de==oe?"end of input":"'"+(this.terminals_[de]||de)+"'"),this.parseError(Ne,{text:ue.match,token:this.terminals_[de]||de,line:ue.yylineno,loc:J,expected:Ie})}if(W[0]instanceof Array&&W.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Te+", token: "+de);switch(W[0]){case 1:N.push(de),B.push(ue.yytext),F.push(ue.yylloc),N.push(W[1]),de=null,ne?(de=ne,ne=null):(j=ue.yyleng,$=ue.yytext,U=ue.yylineno,J=ue.yylloc,ee>0&&ee--);break;case 2:if(He=this.productions_[W[1]][1],Be.$=B[B.length-He],Be._$={first_line:F[F.length-(He||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(He||1)].first_column,last_column:F[F.length-1].last_column},K&&(Be._$.range=[F[F.length-(He||1)].range[0],F[F.length-1].range[1]]),pe=this.performAction.apply(Be,[$,j,U,te.yy,W[1],B,F].concat(Q)),typeof pe<"u")return pe;He&&(N=N.slice(0,-1*He*2),B=B.slice(0,-1*He),F=F.slice(0,-1*He)),N.push(this.productions_[W[1]][0]),B.push(Be.$),F.push(Be._$),Le=V[N[N.length-2]][N[N.length-1]],N.push(Le);break;case 3:return!0}}return!0},"parse")},R=(function(){var _={EOF:1,parseError:o(function(O,N){if(this.yy.parser)this.yy.parser.parseError(O,N);else throw new Error(O)},"parseError"),setInput:o(function(D,O){return this.yy=O||this.yy||{},this._input=D,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var D=this._input[0];this.yytext+=D,this.yyleng++,this.offset++,this.match+=D,this.matched+=D;var O=D.match(/(?:\r\n?|\n).*/g);return O?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),D},"input"),unput:o(function(D){var O=D.length,N=D.split(/(?:\r\n?|\n)/g);this._input=D+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-O),this.offset-=O;var P=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),N.length-1&&(this.yylineno-=N.length-1);var B=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:N?(N.length===P.length?this.yylloc.first_column:0)+P[P.length-N.length].length-N[0].length:this.yylloc.first_column-O},this.options.ranges&&(this.yylloc.range=[B[0],B[0]+this.yyleng-O]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(D){this.unput(this.match.slice(D))},"less"),pastInput:o(function(){var D=this.matched.substr(0,this.matched.length-this.match.length);return(D.length>20?"...":"")+D.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var D=this.match;return D.length<20&&(D+=this._input.substr(0,20-D.length)),(D.substr(0,20)+(D.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var D=this.pastInput(),O=new Array(D.length+1).join("-");return D+this.upcomingInput()+` -`+O+"^"},"showPosition"),test_match:o(function(D,O){var N,P,B;if(this.options.backtrack_lexer&&(B={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(B.yylloc.range=this.yylloc.range.slice(0))),P=D[0].match(/(?:\r\n?|\n).*/g),P&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+D[0].length},this.yytext+=D[0],this.match+=D[0],this.matches=D,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(D[0].length),this.matched+=D[0],N=this.performAction.call(this,this.yy,this,O,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),N)return N;if(this._backtrack){for(var F in B)this[F]=B[F];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var D,O,N,P;this._more||(this.yytext="",this.match="");for(var B=this._currentRules(),F=0;FO[0].length)){if(O=N,P=F,this.options.backtrack_lexer){if(D=this.test_match(N,B[F]),D!==!1)return D;if(this._backtrack){O=!1;continue}else return!1}else if(!this.options.flex)break}return O?(D=this.test_match(O,B[P]),D!==!1?D:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var O=this.next();return O||this.lex()},"lex"),begin:o(function(O){this.conditionStack.push(O)},"begin"),popState:o(function(){var O=this.conditionStack.length-1;return O>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(O){return O=this.conditionStack.length-1-Math.abs(O||0),O>=0?this.conditionStack[O]:"INITIAL"},"topState"),pushState:o(function(O){this.begin(O)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(O,N,P,B){var F=B;switch(P){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return _})();I.lexer=R;function E(){this.yy={}}return o(E,"Parser"),E.prototype=I,I.Parser=E,new E})();mF.parser=mF;Gge=mF});var Uge=sa((gF,yF)=>{"use strict";(function(t,e){typeof gF=="object"&&typeof yF<"u"?yF.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=e()})(gF,(function(){"use strict";var t="day";return function(e,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),t)},"a"),a=r.prototype;a.isoWeekYear=function(){return i(this).year()},a.isoWeek=function(l){if(!this.$utils().u(l))return this.add(7*(l-this.isoWeek()),t);var u,h,f,d,p=i(this),m=(u=this.isoWeekYear(),h=this.$u,f=(h?n.utc:n)().year(u).startOf("year"),d=4-f.isoWeekday(),f.isoWeekday()>4&&(d+=7),f.add(d,t));return p.diff(m,"week")+1},a.isoWeekday=function(l){return this.$utils().u(l)?this.day()||7:this.day(this.day()%7?l:l-7)};var s=a.startOf;a.startOf=function(l,u){var h=this.$utils(),f=!!h.u(u)||u;return h.p(l)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):s.bind(this)(l,u)}}}))});var Hge=sa((vF,xF)=>{"use strict";(function(t,e){typeof vF=="object"&&typeof xF<"u"?xF.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=e()})(vF,(function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,n=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,s={},l=o(function(g){return(g=+g)+(g>68?1900:2e3)},"a"),u=o(function(g){return function(y){this[g]=+y}},"f"),h=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=(function(y){if(!y||y==="Z")return 0;var v=y.match(/([+-]|\d\d)/g),x=60*v[1]+(+v[2]||0);return x===0?0:v[0]==="+"?-x:x})(g)}],f=o(function(g){var y=s[g];return y&&(y.indexOf?y:y.s.concat(y.f))},"u"),d=o(function(g,y){var v,x=s.meridiem;if(x){for(var b=1;b<=24;b+=1)if(g.indexOf(x(b,0,y))>-1){v=b>12;break}}else v=g===(y?"pm":"PM");return v},"d"),p={A:[a,function(g){this.afternoon=d(g,!1)}],a:[a,function(g){this.afternoon=d(g,!0)}],Q:[r,function(g){this.month=3*(g-1)+1}],S:[r,function(g){this.milliseconds=100*+g}],SS:[n,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[i,u("seconds")],ss:[i,u("seconds")],m:[i,u("minutes")],mm:[i,u("minutes")],H:[i,u("hours")],h:[i,u("hours")],HH:[i,u("hours")],hh:[i,u("hours")],D:[i,u("day")],DD:[n,u("day")],Do:[a,function(g){var y=s.ordinal,v=g.match(/\d+/);if(this.day=v[0],y)for(var x=1;x<=31;x+=1)y(x).replace(/\[|\]/g,"")===g&&(this.day=x)}],w:[i,u("week")],ww:[n,u("week")],M:[i,u("month")],MM:[n,u("month")],MMM:[a,function(g){var y=f("months"),v=(f("monthsShort")||y.map((function(x){return x.slice(0,3)}))).indexOf(g)+1;if(v<1)throw new Error;this.month=v%12||v}],MMMM:[a,function(g){var y=f("months").indexOf(g)+1;if(y<1)throw new Error;this.month=y%12||y}],Y:[/[+-]?\d+/,u("year")],YY:[n,function(g){this.year=l(g)}],YYYY:[/\d{4}/,u("year")],Z:h,ZZ:h};function m(g){var y,v;y=g,v=s&&s.formats;for(var x=(g=y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(A,L,I){var R=I&&I.toUpperCase();return L||v[I]||t[I]||v[R].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(E,_,D){return _||D.slice(1)}))}))).match(e),b=x.length,T=0;T-1)return new Date((N==="X"?1e3:1)*O);var F=m(N)(O),V=F.year,$=F.month,U=F.day,j=F.hours,ee=F.minutes,q=F.seconds,oe=F.milliseconds,Q=F.zone,ue=F.week,te=new Date,re=U||(V||$?1:te.getDate()),J=V||te.getFullYear(),K=0;V&&!$||(K=$>0?$-1:te.getMonth());var ae,Z=j||0,de=ee||0,ne=q||0,Te=oe||0;return Q?new Date(Date.UTC(J,K,re,Z,de,ne,Te+60*Q.offset*1e3)):P?new Date(Date.UTC(J,K,re,Z,de,ne,Te)):(ae=new Date(J,K,re,Z,de,ne,Te),ue&&(ae=B(ae).week(ue).toDate()),ae)}catch{return new Date("")}})(S,C,w,v),this.init(),R&&R!==!0&&(this.$L=this.locale(R).$L),I&&S!=this.format(C)&&(this.$d=new Date("")),s={}}else if(C instanceof Array)for(var E=C.length,_=1;_<=E;_+=1){k[1]=C[_-1];var D=v.apply(this,k);if(D.isValid()){this.$d=D.$d,this.$L=D.$L,this.init();break}_===E&&(this.$d=new Date(""))}else b.call(this,T)}}}))});var qge=sa((bF,TF)=>{"use strict";(function(t,e){typeof bF=="object"&&typeof TF<"u"?TF.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=e()})(bF,(function(){"use strict";return function(t,e){var r=e.prototype,n=r.format;r.format=function(i){var a=this,s=this.$locale();if(!this.isValid())return n.bind(this)(i);var l=this.$utils(),u=(i||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(h){switch(h){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return s.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return s.ordinal(a.week(),"W");case"w":case"ww":return l.s(a.week(),h==="w"?1:2,"0");case"W":case"WW":return l.s(a.isoWeek(),h==="W"?1:2,"0");case"k":case"kk":return l.s(String(a.$H===0?24:a.$H),h==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return h}}));return n.bind(this)(u)}}}))});function o1e(t,e,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);t[0].match(s)&&(e[i]=!0,t.shift(1),n=!0)})}var Xge,xo,jge,Kge,Qge,Wge,eu,SF,CF,AF,p4,m4,_F,DF,F6,ty,LF,Zge,RF,g4,NF,MF,$6,wF,ZKe,JKe,eQe,tQe,rQe,nQe,iQe,aQe,sQe,oQe,lQe,cQe,uQe,hQe,fQe,dQe,pQe,mQe,gQe,yQe,vQe,xQe,bQe,Jge,TQe,wQe,kQe,e1e,EQe,kF,t1e,r1e,P6,ey,SQe,CQe,EF,B6,Vi,n1e,AQe,a0,_Qe,Yge,DQe,i1e,LQe,a1e,RQe,NQe,s1e,l1e=M(()=>{"use strict";Xge=La(tm(),1),xo=La(j4(),1),jge=La(Uge(),1),Kge=La(Hge(),1),Qge=La(qge(),1);pt();Xt();tr();ci();xo.default.extend(jge.default);xo.default.extend(Kge.default);xo.default.extend(Qge.default);Wge={friday:5,saturday:6},eu="",SF="",AF="",p4=[],m4=[],_F=new Map,DF=[],F6=[],ty="",LF="",Zge=["active","done","crit","milestone","vert"],RF=[],g4=!1,NF=!1,MF="sunday",$6="saturday",wF=0,ZKe=o(function(){DF=[],F6=[],ty="",RF=[],P6=0,EF=void 0,B6=void 0,Vi=[],eu="",SF="",LF="",CF=void 0,AF="",p4=[],m4=[],g4=!1,NF=!1,wF=0,_F=new Map,Sr(),MF="sunday",$6="saturday"},"clear"),JKe=o(function(t){SF=t},"setAxisFormat"),eQe=o(function(){return SF},"getAxisFormat"),tQe=o(function(t){CF=t},"setTickInterval"),rQe=o(function(){return CF},"getTickInterval"),nQe=o(function(t){AF=t},"setTodayMarker"),iQe=o(function(){return AF},"getTodayMarker"),aQe=o(function(t){eu=t},"setDateFormat"),sQe=o(function(){g4=!0},"enableInclusiveEndDates"),oQe=o(function(){return g4},"endDatesAreInclusive"),lQe=o(function(){NF=!0},"enableTopAxis"),cQe=o(function(){return NF},"topAxisEnabled"),uQe=o(function(t){LF=t},"setDisplayMode"),hQe=o(function(){return LF},"getDisplayMode"),fQe=o(function(){return eu},"getDateFormat"),dQe=o(function(t){p4=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),pQe=o(function(){return p4},"getIncludes"),mQe=o(function(t){m4=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),gQe=o(function(){return m4},"getExcludes"),yQe=o(function(){return _F},"getLinks"),vQe=o(function(t){ty=t,DF.push(t)},"addSection"),xQe=o(function(){return DF},"getSections"),bQe=o(function(){let t=Yge(),e=10,r=0;for(;!t&&r{let u=l.trim();return u==="x"||u==="X"},"isTimestampFormat")(e)&&/^\d+$/.test(r))return new Date(Number(r));let a=/^after\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let l=null;for(let h of a.groups.ids.split(" ")){let f=a0(h);f!==void 0&&(!l||f.endTime>l.endTime)&&(l=f)}if(l)return l.endTime;let u=new Date;return u.setHours(0,0,0,0),u}let s=(0,xo.default)(r,e.trim(),!0);if(s.isValid())return s.toDate();{X.debug("Invalid date:"+r),X.debug("With date format:"+e.trim());let l=new Date(r);if(l===void 0||isNaN(l.getTime())||l.getFullYear()<-1e4||l.getFullYear()>1e4)throw new Error("Invalid date:"+r);return l}},"getStartDate"),t1e=o(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),r1e=o(function(t,e,r,n=!1){r=r.trim();let a=/^until\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let f=null;for(let p of a.groups.ids.split(" ")){let m=a0(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),_F.set(n,r))}),i1e(t,"clickable")},"setLink"),i1e=o(function(t,e){t.split(",").forEach(function(r){let n=a0(r);n!==void 0&&n.classes.push(e)})},"setClass"),LQe=o(function(t,e,r){if(ge().securityLevel!=="loose"||e===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a{qt.runFunc(e,...n)})},"setClickFun"),a1e=o(function(t,e){RF.push(function(){let r=document.querySelector(`[id="${t}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){let r=document.querySelector(`[id="${t}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),RQe=o(function(t,e,r){t.split(",").forEach(function(n){LQe(n,e,r)}),i1e(t,"clickable")},"setClickEvent"),NQe=o(function(t){RF.forEach(function(e){e(t)})},"bindFunctions"),s1e={getConfig:o(()=>ge().gantt,"getConfig"),clear:ZKe,setDateFormat:aQe,getDateFormat:fQe,enableInclusiveEndDates:sQe,endDatesAreInclusive:oQe,enableTopAxis:lQe,topAxisEnabled:cQe,setAxisFormat:JKe,getAxisFormat:eQe,setTickInterval:tQe,getTickInterval:rQe,setTodayMarker:nQe,getTodayMarker:iQe,setAccTitle:Rr,getAccTitle:Mr,setDiagramTitle:$r,getDiagramTitle:Pr,setDisplayMode:uQe,getDisplayMode:hQe,setAccDescription:Ir,getAccDescription:Or,addSection:vQe,getSections:xQe,getTasks:bQe,addTask:AQe,findTaskById:a0,addTaskOrg:_Qe,setIncludes:dQe,getIncludes:pQe,setExcludes:mQe,getExcludes:gQe,setClickEvent:RQe,setLink:DQe,getLinks:yQe,bindFunctions:NQe,parseDuration:t1e,isInvalidDate:Jge,setWeekday:TQe,getWeekday:wQe,setWeekend:kQe};o(o1e,"getTaskTags")});var c1e=sa((IF,OF)=>{"use strict";(function(t,e){typeof IF=="object"&&typeof OF<"u"?OF.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_duration=e()})(IF,(function(){"use strict";var t,e,r=1e3,n=6e4,i=36e5,a=864e5,s=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,l=31536e6,u=2628e6,h=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,f={years:l,months:u,days:a,hours:i,minutes:n,seconds:r,milliseconds:1,weeks:6048e5},d=o(function(S){return S instanceof b},"c"),p=o(function(S,w,k){return new b(S,k,w.$l)},"f"),m=o(function(S){return e.p(S)+"s"},"m"),g=o(function(S){return S<0},"l"),y=o(function(S){return g(S)?Math.ceil(S):Math.floor(S)},"$"),v=o(function(S){return Math.abs(S)},"y"),x=o(function(S,w){return S?g(S)?{negative:!0,format:""+v(S)+w}:{negative:!1,format:""+S+w}:{negative:!1,format:""}},"v"),b=(function(){function S(k,C,A){var L=this;if(this.$d={},this.$l=A,k===void 0&&(this.$ms=0,this.parseFromMilliseconds()),C)return p(k*f[m(C)],this);if(typeof k=="number")return this.$ms=k,this.parseFromMilliseconds(),this;if(typeof k=="object")return Object.keys(k).forEach((function(E){L.$d[m(E)]=k[E]})),this.calMilliseconds(),this;if(typeof k=="string"){var I=k.match(h);if(I){var R=I.slice(2).map((function(E){return E!=null?Number(E):0}));return this.$d.years=R[0],this.$d.months=R[1],this.$d.weeks=R[2],this.$d.days=R[3],this.$d.hours=R[4],this.$d.minutes=R[5],this.$d.seconds=R[6],this.calMilliseconds(),this}}return this}o(S,"l");var w=S.prototype;return w.calMilliseconds=function(){var k=this;this.$ms=Object.keys(this.$d).reduce((function(C,A){return C+(k.$d[A]||0)*f[A]}),0)},w.parseFromMilliseconds=function(){var k=this.$ms;this.$d.years=y(k/l),k%=l,this.$d.months=y(k/u),k%=u,this.$d.days=y(k/a),k%=a,this.$d.hours=y(k/i),k%=i,this.$d.minutes=y(k/n),k%=n,this.$d.seconds=y(k/r),k%=r,this.$d.milliseconds=k},w.toISOString=function(){var k=x(this.$d.years,"Y"),C=x(this.$d.months,"M"),A=+this.$d.days||0;this.$d.weeks&&(A+=7*this.$d.weeks);var L=x(A,"D"),I=x(this.$d.hours,"H"),R=x(this.$d.minutes,"M"),E=this.$d.seconds||0;this.$d.milliseconds&&(E+=this.$d.milliseconds/1e3,E=Math.round(1e3*E)/1e3);var _=x(E,"S"),D=k.negative||C.negative||L.negative||I.negative||R.negative||_.negative,O=I.format||R.format||_.format?"T":"",N=(D?"-":"")+"P"+k.format+C.format+L.format+O+I.format+R.format+_.format;return N==="P"||N==="-P"?"P0D":N},w.toJSON=function(){return this.toISOString()},w.format=function(k){var C=k||"YYYY-MM-DDTHH:mm:ss",A={Y:this.$d.years,YY:e.s(this.$d.years,2,"0"),YYYY:e.s(this.$d.years,4,"0"),M:this.$d.months,MM:e.s(this.$d.months,2,"0"),D:this.$d.days,DD:e.s(this.$d.days,2,"0"),H:this.$d.hours,HH:e.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:e.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:e.s(this.$d.seconds,2,"0"),SSS:e.s(this.$d.milliseconds,3,"0")};return C.replace(s,(function(L,I){return I||String(A[L])}))},w.as=function(k){return this.$ms/f[m(k)]},w.get=function(k){var C=this.$ms,A=m(k);return A==="milliseconds"?C%=1e3:C=A==="weeks"?y(C/f[A]):this.$d[A],C||0},w.add=function(k,C,A){var L;return L=C?k*f[m(C)]:d(k)?k.$ms:p(k,this).$ms,p(this.$ms+L*(A?-1:1),this)},w.subtract=function(k,C){return this.add(k,C,!0)},w.locale=function(k){var C=this.clone();return C.$l=k,C},w.clone=function(){return p(this.$ms,this)},w.humanize=function(k){return t().add(this.$ms,"ms").locale(this.$l).fromNow(!k)},w.valueOf=function(){return this.asMilliseconds()},w.milliseconds=function(){return this.get("milliseconds")},w.asMilliseconds=function(){return this.as("milliseconds")},w.seconds=function(){return this.get("seconds")},w.asSeconds=function(){return this.as("seconds")},w.minutes=function(){return this.get("minutes")},w.asMinutes=function(){return this.as("minutes")},w.hours=function(){return this.get("hours")},w.asHours=function(){return this.as("hours")},w.days=function(){return this.get("days")},w.asDays=function(){return this.as("days")},w.weeks=function(){return this.get("weeks")},w.asWeeks=function(){return this.as("weeks")},w.months=function(){return this.get("months")},w.asMonths=function(){return this.as("months")},w.years=function(){return this.get("years")},w.asYears=function(){return this.as("years")},S})(),T=o(function(S,w,k){return S.add(w.years()*k,"y").add(w.months()*k,"M").add(w.days()*k,"d").add(w.hours()*k,"h").add(w.minutes()*k,"m").add(w.seconds()*k,"s").add(w.milliseconds()*k,"ms")},"p");return function(S,w,k){t=k,e=k().$utils(),k.duration=function(L,I){var R=k.locale();return p(L,{$l:R},I)},k.isDuration=d;var C=w.prototype.add,A=w.prototype.subtract;w.prototype.add=function(L,I){return d(L)?T(this,L,1):C.bind(this)(L,I)},w.prototype.subtract=function(L,I){return d(L)?T(this,L,-1):A.bind(this)(L,I)}}}))});var ry,h1e,MQe,u1e,IQe,ah,PF,OQe,f1e,d1e=M(()=>{"use strict";ry=La(j4(),1),h1e=La(c1e(),1);pt();yr();gr();Xt();Ei();ry.default.extend(h1e.default);MQe=o(function(){X.debug("Something is calling, setConf, remove the call")},"setConf"),u1e={monday:Ih,tuesday:B5,wednesday:F5,thursday:fc,friday:$5,saturday:z5,sunday:wl},IQe=o((t,e)=>{let r=[...t].map(()=>-1/0),n=[...t].sort((a,s)=>a.startTime-s.startTime||a.order-s.order),i=0;for(let a of n)for(let s=0;s=r[s]){r[s]=a.endTime,a.order=s+e,s>i&&(i=s);break}return i},"getMaxIntersections"),PF=1e4,OQe=o(function(t,e,r,n){let i=ge().gantt,a=ge().securityLevel,s;a==="sandbox"&&(s=qe("#i"+e));let l=a==="sandbox"?qe(s.nodes()[0].contentDocument.body):qe("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(e);ah=h.parentElement.offsetWidth,ah===void 0&&(ah=1200),i.useWidth!==void 0&&(ah=i.useWidth);let f=n.db.getTasks(),d=[];for(let L of f)d.push(L.type);d=A(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let L={};for(let R of f)L[R.section]===void 0?L[R.section]=[R]:L[R.section].push(R);let I=0;for(let R of Object.keys(L)){let E=IQe(L[R],I)+1;I+=E,m+=E*(i.barHeight+i.barGap),p[R]=E}}else{m+=f.length*(i.barHeight+i.barGap);for(let L of d)p[L]=f.filter(I=>I.type===L).length}h.setAttribute("viewBox","0 0 "+ah+" "+m);let g=l.select(`[id="${e}"]`),y=U5().domain([X3(f,function(L){return L.startTime}),Y3(f,function(L){return L.endTime})]).rangeRound([0,ah-i.leftPadding-i.rightPadding]);function v(L,I){let R=L.startTime,E=I.startTime,_=0;return R>E?_=1:R$.vert===U.vert?0:$.vert?1:-1);let P=[...new Set(L.map($=>$.order))].map($=>L.find(U=>U.order===$));g.append("g").selectAll("rect").data(P).enter().append("rect").attr("x",0).attr("y",function($,U){return U=$.order,U*I+R-2}).attr("width",function(){return O-i.rightPadding/2}).attr("height",I).attr("class",function($){for(let[U,j]of d.entries())if($.type===j)return"section section"+U%i.numberSectionStyles;return"section section0"}).enter();let B=g.append("g").selectAll("rect").data(L).enter(),F=n.db.getLinks();if(B.append("rect").attr("id",function($){return $.id}).attr("rx",3).attr("ry",3).attr("x",function($){return $.milestone?y($.startTime)+E+.5*(y($.endTime)-y($.startTime))-.5*_:y($.startTime)+E}).attr("y",function($,U){return U=$.order,$.vert?i.gridLineStartPadding:U*I+R}).attr("width",function($){return $.milestone?_:$.vert?.08*_:y($.renderEndTime||$.endTime)-y($.startTime)}).attr("height",function($){return $.vert?f.length*(i.barHeight+i.barGap)+i.barHeight*2:_}).attr("transform-origin",function($,U){return U=$.order,(y($.startTime)+E+.5*(y($.endTime)-y($.startTime))).toString()+"px "+(U*I+R+.5*_).toString()+"px"}).attr("class",function($){let U="task",j="";$.classes.length>0&&(j=$.classes.join(" "));let ee=0;for(let[oe,Q]of d.entries())$.type===Q&&(ee=oe%i.numberSectionStyles);let q="";return $.active?$.crit?q+=" activeCrit":q=" active":$.done?$.crit?q=" doneCrit":q=" done":$.crit&&(q+=" crit"),q.length===0&&(q=" task"),$.milestone&&(q=" milestone "+q),$.vert&&(q=" vert "+q),q+=ee,q+=" "+j,U+q}),B.append("text").attr("id",function($){return $.id+"-text"}).text(function($){return $.task}).attr("font-size",i.fontSize).attr("x",function($){let U=y($.startTime),j=y($.renderEndTime||$.endTime);if($.milestone&&(U+=.5*(y($.endTime)-y($.startTime))-.5*_,j=U+_),$.vert)return y($.startTime)+E;let ee=this.getBBox().width;return ee>j-U?j+ee+1.5*i.leftPadding>O?U+E-5:j+E+5:(j-U)/2+U+E}).attr("y",function($,U){return $.vert?i.gridLineStartPadding+f.length*(i.barHeight+i.barGap)+60:(U=$.order,U*I+i.barHeight/2+(i.fontSize/2-2)+R)}).attr("text-height",_).attr("class",function($){let U=y($.startTime),j=y($.endTime);$.milestone&&(j=U+_);let ee=this.getBBox().width,q="";$.classes.length>0&&(q=$.classes.join(" "));let oe=0;for(let[ue,te]of d.entries())$.type===te&&(oe=ue%i.numberSectionStyles);let Q="";return $.active&&($.crit?Q="activeCritText"+oe:Q="activeText"+oe),$.done?$.crit?Q=Q+" doneCritText"+oe:Q=Q+" doneText"+oe:$.crit&&(Q=Q+" critText"+oe),$.milestone&&(Q+=" milestoneText"),$.vert&&(Q+=" vertText"),ee>j-U?j+ee+1.5*i.leftPadding>O?q+" taskTextOutsideLeft taskTextOutside"+oe+" "+Q:q+" taskTextOutsideRight taskTextOutside"+oe+" "+Q+" width-"+ee:q+" taskText taskText"+oe+" "+Q+" width-"+ee}),ge().securityLevel==="sandbox"){let $;$=qe("#i"+e);let U=$.nodes()[0].contentDocument;B.filter(function(j){return F.has(j.id)}).each(function(j){var ee=U.querySelector("#"+j.id),q=U.querySelector("#"+j.id+"-text");let oe=ee.parentNode;var Q=U.createElement("a");Q.setAttribute("xlink:href",F.get(j.id)),Q.setAttribute("target","_top"),oe.appendChild(Q),Q.appendChild(ee),Q.appendChild(q)})}}o(b,"drawRects");function T(L,I,R,E,_,D,O,N){if(O.length===0&&N.length===0)return;let P,B;for(let{startTime:ee,endTime:q}of D)(P===void 0||eeB)&&(B=q);if(!P||!B)return;if((0,ry.default)(B).diff((0,ry.default)(P),"year")>5){X.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let F=n.db.getDateFormat(),V=[],$=null,U=(0,ry.default)(P);for(;U.valueOf()<=B;)n.db.isInvalidDate(U,F,O,N)?$?$.end=U:$={start:U,end:U}:$&&(V.push($),$=null),U=U.add(1,"d");g.append("g").selectAll("rect").data(V).enter().append("rect").attr("id",ee=>"exclude-"+ee.start.format("YYYY-MM-DD")).attr("x",ee=>y(ee.start.startOf("day"))+R).attr("y",i.gridLineStartPadding).attr("width",ee=>y(ee.end.endOf("day"))-y(ee.start.startOf("day"))).attr("height",_-I-i.gridLineStartPadding).attr("transform-origin",function(ee,q){return(y(ee.start)+R+.5*(y(ee.end)-y(ee.start))).toString()+"px "+(q*L+.5*_).toString()+"px"}).attr("class","exclude-range")}o(T,"drawExcludeDays");function S(L,I,R,E){if(R<=0||L>I)return 1/0;let _=I-L,D=ry.default.duration({[E??"day"]:R}).asMilliseconds();return D<=0?1/0:Math.ceil(_/D)}o(S,"getEstimatedTickCount");function w(L,I,R,E){let _=n.db.getDateFormat(),D=n.db.getAxisFormat(),O;D?O=D:_==="D"?O="%d":O=i.axisFormat??"%Y-%m-%d";let N=QA(y).tickSize(-E+I+i.gridLineStartPadding).tickFormat(Pd(O)),B=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(B!==null){let F=parseInt(B[1],10);if(isNaN(F)||F<=0)X.warn(`Invalid tick interval value: "${B[1]}". Skipping custom tick interval.`);else{let V=B[2],$=n.db.getWeekday()||i.weekday,U=y.domain(),j=U[0],ee=U[1],q=S(j,ee,F,V);if(q>PF)X.warn(`The tick interval "${F}${V}" would generate ${q} ticks, which exceeds the maximum allowed (${PF}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(V){case"millisecond":N.ticks(uc.every(F));break;case"second":N.ticks(io.every(F));break;case"minute":N.ticks(ku.every(F));break;case"hour":N.ticks(Eu.every(F));break;case"day":N.ticks(Ro.every(F));break;case"week":N.ticks(u1e[$].every(F));break;case"month":N.ticks(Su.every(F));break}}}if(g.append("g").attr("class","grid").attr("transform","translate("+L+", "+(E-50)+")").call(N).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||i.topAxis){let F=KA(y).tickSize(-E+I+i.gridLineStartPadding).tickFormat(Pd(O));if(B!==null){let V=parseInt(B[1],10);if(isNaN(V)||V<=0)X.warn(`Invalid tick interval value: "${B[1]}". Skipping custom tick interval.`);else{let $=B[2],U=n.db.getWeekday()||i.weekday,j=y.domain(),ee=j[0],q=j[1];if(S(ee,q,V,$)<=PF)switch($){case"millisecond":F.ticks(uc.every(V));break;case"second":F.ticks(io.every(V));break;case"minute":F.ticks(ku.every(V));break;case"hour":F.ticks(Eu.every(V));break;case"day":F.ticks(Ro.every(V));break;case"week":F.ticks(u1e[U].every(V));break;case"month":F.ticks(Su.every(V));break}}}g.append("g").attr("class","grid").attr("transform","translate("+L+", "+I+")").call(F).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(w,"makeGrid");function k(L,I){let R=0,E=Object.keys(p).map(_=>[_,p[_]]);g.append("g").selectAll("text").data(E).enter().append(function(_){let D=_[0].split(tt.lineBreakRegex),O=-(D.length-1)/2,N=u.createElementNS("http://www.w3.org/2000/svg","text");N.setAttribute("dy",O+"em");for(let[P,B]of D.entries()){let F=u.createElementNS("http://www.w3.org/2000/svg","tspan");F.setAttribute("alignment-baseline","central"),F.setAttribute("x","10"),P>0&&F.setAttribute("dy","1em"),F.textContent=B,N.appendChild(F)}return N}).attr("x",10).attr("y",function(_,D){if(D>0)for(let O=0;O{"use strict";PQe=o(t=>` +`,"getStyles"),G4e=Yit});var q4e={};vr(q4e,{diagram:()=>jit});var jit,U4e=I(()=>{"use strict";O4e();ZV();z4e();V4e();jit={parser:I4e,db:l7,renderer:$4e,styles:G4e}});var JV,Y4e,j4e=I(()=>{"use strict";JV=(function(){var t=o(function(A,_,N,M){for(N=N||{},M=A.length;M--;N[A[M]]=_);return N},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],r=[1,26],n=[1,27],i=[1,28],a=[1,29],s=[1,30],l=[1,31],u=[1,32],h=[1,33],f=[1,34],d=[1,9],p=[1,10],m=[1,11],g=[1,12],y=[1,13],v=[1,14],x=[1,15],b=[1,16],T=[1,19],E=[1,20],w=[1,21],k=[1,22],C=[1,23],D=[1,25],R=[1,35],O={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:o(function(_,N,M,P,B,F,G){var $=F.length-1;switch(B){case 1:return F[$-1];case 2:this.$=[];break;case 3:F[$-1].push(F[$]),this.$=F[$-1];break;case 4:case 5:this.$=F[$];break;case 6:case 7:this.$=[];break;case 8:P.setWeekday("monday");break;case 9:P.setWeekday("tuesday");break;case 10:P.setWeekday("wednesday");break;case 11:P.setWeekday("thursday");break;case 12:P.setWeekday("friday");break;case 13:P.setWeekday("saturday");break;case 14:P.setWeekday("sunday");break;case 15:P.setWeekend("friday");break;case 16:P.setWeekend("saturday");break;case 17:P.setDateFormat(F[$].substr(11)),this.$=F[$].substr(11);break;case 18:P.enableInclusiveEndDates(),this.$=F[$].substr(18);break;case 19:P.TopAxis(),this.$=F[$].substr(8);break;case 20:P.setAxisFormat(F[$].substr(11)),this.$=F[$].substr(11);break;case 21:P.setTickInterval(F[$].substr(13)),this.$=F[$].substr(13);break;case 22:P.setExcludes(F[$].substr(9)),this.$=F[$].substr(9);break;case 23:P.setIncludes(F[$].substr(9)),this.$=F[$].substr(9);break;case 24:P.setTodayMarker(F[$].substr(12)),this.$=F[$].substr(12);break;case 27:P.setDiagramTitle(F[$].substr(6)),this.$=F[$].substr(6);break;case 28:this.$=F[$].trim(),P.setAccTitle(this.$);break;case 29:case 30:this.$=F[$].trim(),P.setAccDescription(this.$);break;case 31:P.addSection(F[$].substr(8)),this.$=F[$].substr(8);break;case 33:P.addTask(F[$-1],F[$]),this.$="task";break;case 34:this.$=F[$-1],P.setClickEvent(F[$-1],F[$],null);break;case 35:this.$=F[$-2],P.setClickEvent(F[$-2],F[$-1],F[$]);break;case 36:this.$=F[$-2],P.setClickEvent(F[$-2],F[$-1],null),P.setLink(F[$-2],F[$]);break;case 37:this.$=F[$-3],P.setClickEvent(F[$-3],F[$-2],F[$-1]),P.setLink(F[$-3],F[$]);break;case 38:this.$=F[$-2],P.setClickEvent(F[$-2],F[$],null),P.setLink(F[$-2],F[$-1]);break;case 39:this.$=F[$-3],P.setClickEvent(F[$-3],F[$-1],F[$]),P.setLink(F[$-3],F[$-2]);break;case 40:this.$=F[$-1],P.setLink(F[$-1],F[$]);break;case 41:case 47:this.$=F[$-1]+" "+F[$];break;case 42:case 43:case 45:this.$=F[$-2]+" "+F[$-1]+" "+F[$];break;case 44:case 46:this.$=F[$-3]+" "+F[$-2]+" "+F[$-1]+" "+F[$];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:T,31:E,33:w,35:k,36:C,37:24,38:D,40:R},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:T,31:E,33:w,35:k,36:C,37:24,38:D,40:R},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:o(function(_,N){if(N.recoverable)this.trace(_);else{var M=new Error(_);throw M.hash=N,M}},"parseError"),parse:o(function(_){var N=this,M=[0],P=[],B=[null],F=[],G=this.table,$="",V=0,K=0,ee=0,H=2,he=1,Z=F.slice.call(arguments,1),de=Object.create(this.lexer),re={yy:{}};for(var ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ne)&&(re.yy[ne]=this.yy[ne]);de.setInput(_,re.yy),re.yy.lexer=de,re.yy.parser=this,typeof de.yylloc>"u"&&(de.yylloc={});var te=de.yylloc;F.push(te);var Q=de.options&&de.options.ranges;typeof re.yy.parseError=="function"?this.parseError=re.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function le(Ae){M.length=M.length-2*Ae,B.length=B.length-Ae,F.length=F.length-Ae}o(le,"popStack");function J(){var Ae;return Ae=P.pop()||de.lex()||he,typeof Ae!="number"&&(Ae instanceof Array&&(P=Ae,Ae=P.pop()),Ae=N.symbols_[Ae]||Ae),Ae}o(J,"lex");for(var ge,ie,Te,j,Ge,ye,$e={},Xe,Ue,Le,Ie;;){if(Te=M[M.length-1],this.defaultActions[Te]?j=this.defaultActions[Te]:((ge===null||typeof ge>"u")&&(ge=J()),j=G[Te]&&G[Te][ge]),typeof j>"u"||!j.length||!j[0]){var Me="";Ie=[];for(Xe in G[Te])this.terminals_[Xe]&&Xe>H&&Ie.push("'"+this.terminals_[Xe]+"'");de.showPosition?Me="Parse error on line "+(V+1)+`: +`+de.showPosition()+` +Expecting `+Ie.join(", ")+", got '"+(this.terminals_[ge]||ge)+"'":Me="Parse error on line "+(V+1)+": Unexpected "+(ge==he?"end of input":"'"+(this.terminals_[ge]||ge)+"'"),this.parseError(Me,{text:de.match,token:this.terminals_[ge]||ge,line:de.yylineno,loc:te,expected:Ie})}if(j[0]instanceof Array&&j.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Te+", token: "+ge);switch(j[0]){case 1:M.push(ge),B.push(de.yytext),F.push(de.yylloc),M.push(j[1]),ge=null,ie?(ge=ie,ie=null):(K=de.yyleng,$=de.yytext,V=de.yylineno,te=de.yylloc,ee>0&&ee--);break;case 2:if(Ue=this.productions_[j[1]][1],$e.$=B[B.length-Ue],$e._$={first_line:F[F.length-(Ue||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(Ue||1)].first_column,last_column:F[F.length-1].last_column},Q&&($e._$.range=[F[F.length-(Ue||1)].range[0],F[F.length-1].range[1]]),ye=this.performAction.apply($e,[$,K,V,re.yy,j[1],B,F].concat(Z)),typeof ye<"u")return ye;Ue&&(M=M.slice(0,-1*Ue*2),B=B.slice(0,-1*Ue),F=F.slice(0,-1*Ue)),M.push(this.productions_[j[1]][0]),B.push($e.$),F.push($e._$),Le=G[M[M.length-2]][M[M.length-1]],M.push(Le);break;case 3:return!0}}return!0},"parse")},L=(function(){var A={EOF:1,parseError:o(function(N,M){if(this.yy.parser)this.yy.parser.parseError(N,M);else throw new Error(N)},"parseError"),setInput:o(function(_,N){return this.yy=N||this.yy||{},this._input=_,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var _=this._input[0];this.yytext+=_,this.yyleng++,this.offset++,this.match+=_,this.matched+=_;var N=_.match(/(?:\r\n?|\n).*/g);return N?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_},"input"),unput:o(function(_){var N=_.length,M=_.split(/(?:\r\n?|\n)/g);this._input=_+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-N),this.offset-=N;var P=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),M.length-1&&(this.yylineno-=M.length-1);var B=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:M?(M.length===P.length?this.yylloc.first_column:0)+P[P.length-M.length].length-M[0].length:this.yylloc.first_column-N},this.options.ranges&&(this.yylloc.range=[B[0],B[0]+this.yyleng-N]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(_){this.unput(this.match.slice(_))},"less"),pastInput:o(function(){var _=this.matched.substr(0,this.matched.length-this.match.length);return(_.length>20?"...":"")+_.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var _=this.match;return _.length<20&&(_+=this._input.substr(0,20-_.length)),(_.substr(0,20)+(_.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var _=this.pastInput(),N=new Array(_.length+1).join("-");return _+this.upcomingInput()+` +`+N+"^"},"showPosition"),test_match:o(function(_,N){var M,P,B;if(this.options.backtrack_lexer&&(B={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(B.yylloc.range=this.yylloc.range.slice(0))),P=_[0].match(/(?:\r\n?|\n).*/g),P&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_[0].length},this.yytext+=_[0],this.match+=_[0],this.matches=_,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(_[0].length),this.matched+=_[0],M=this.performAction.call(this,this.yy,this,N,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),M)return M;if(this._backtrack){for(var F in B)this[F]=B[F];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _,N,M,P;this._more||(this.yytext="",this.match="");for(var B=this._currentRules(),F=0;FN[0].length)){if(N=M,P=F,this.options.backtrack_lexer){if(_=this.test_match(M,B[F]),_!==!1)return _;if(this._backtrack){N=!1;continue}else return!1}else if(!this.options.flex)break}return N?(_=this.test_match(N,B[P]),_!==!1?_:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var N=this.next();return N||this.lex()},"lex"),begin:o(function(N){this.conditionStack.push(N)},"begin"),popState:o(function(){var N=this.conditionStack.length-1;return N>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(N){return N=this.conditionStack.length-1-Math.abs(N||0),N>=0?this.conditionStack[N]:"INITIAL"},"topState"),pushState:o(function(N){this.begin(N)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(N,M,P,B){var F=B;switch(P){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return A})();O.lexer=L;function S(){this.yy={}}return o(S,"Parser"),S.prototype=O,O.Parser=S,new S})();JV.parser=JV;Y4e=JV});var X4e=Jt((eq,tq)=>{"use strict";(function(t,e){typeof eq=="object"&&typeof tq<"u"?tq.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=e()})(eq,(function(){"use strict";var t="day";return function(e,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),t)},"a"),a=r.prototype;a.isoWeekYear=function(){return i(this).year()},a.isoWeek=function(l){if(!this.$utils().u(l))return this.add(7*(l-this.isoWeek()),t);var u,h,f,d,p=i(this),m=(u=this.isoWeekYear(),h=this.$u,f=(h?n.utc:n)().year(u).startOf("year"),d=4-f.isoWeekday(),f.isoWeekday()>4&&(d+=7),f.add(d,t));return p.diff(m,"week")+1},a.isoWeekday=function(l){return this.$utils().u(l)?this.day()||7:this.day(this.day()%7?l:l-7)};var s=a.startOf;a.startOf=function(l,u){var h=this.$utils(),f=!!h.u(u)||u;return h.p(l)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):s.bind(this)(l,u)}}}))});var K4e=Jt((rq,nq)=>{"use strict";(function(t,e){typeof rq=="object"&&typeof nq<"u"?nq.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=e()})(rq,(function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,n=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,s={},l=o(function(g){return(g=+g)+(g>68?1900:2e3)},"a"),u=o(function(g){return function(y){this[g]=+y}},"f"),h=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=(function(y){if(!y||y==="Z")return 0;var v=y.match(/([+-]|\d\d)/g),x=60*v[1]+(+v[2]||0);return x===0?0:v[0]==="+"?-x:x})(g)}],f=o(function(g){var y=s[g];return y&&(y.indexOf?y:y.s.concat(y.f))},"u"),d=o(function(g,y){var v,x=s.meridiem;if(x){for(var b=1;b<=24;b+=1)if(g.indexOf(x(b,0,y))>-1){v=b>12;break}}else v=g===(y?"pm":"PM");return v},"d"),p={A:[a,function(g){this.afternoon=d(g,!1)}],a:[a,function(g){this.afternoon=d(g,!0)}],Q:[r,function(g){this.month=3*(g-1)+1}],S:[r,function(g){this.milliseconds=100*+g}],SS:[n,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[i,u("seconds")],ss:[i,u("seconds")],m:[i,u("minutes")],mm:[i,u("minutes")],H:[i,u("hours")],h:[i,u("hours")],HH:[i,u("hours")],hh:[i,u("hours")],D:[i,u("day")],DD:[n,u("day")],Do:[a,function(g){var y=s.ordinal,v=g.match(/\d+/);if(this.day=v[0],y)for(var x=1;x<=31;x+=1)y(x).replace(/\[|\]/g,"")===g&&(this.day=x)}],w:[i,u("week")],ww:[n,u("week")],M:[i,u("month")],MM:[n,u("month")],MMM:[a,function(g){var y=f("months"),v=(f("monthsShort")||y.map((function(x){return x.slice(0,3)}))).indexOf(g)+1;if(v<1)throw new Error;this.month=v%12||v}],MMMM:[a,function(g){var y=f("months").indexOf(g)+1;if(y<1)throw new Error;this.month=y%12||y}],Y:[/[+-]?\d+/,u("year")],YY:[n,function(g){this.year=l(g)}],YYYY:[/\d{4}/,u("year")],Z:h,ZZ:h};function m(g){var y,v;y=g,v=s&&s.formats;for(var x=(g=y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(D,R,O){var L=O&&O.toUpperCase();return R||v[O]||t[O]||v[L].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(S,A,_){return A||_.slice(1)}))}))).match(e),b=x.length,T=0;T-1)return new Date((M==="X"?1e3:1)*N);var F=m(M)(N),G=F.year,$=F.month,V=F.day,K=F.hours,ee=F.minutes,H=F.seconds,he=F.milliseconds,Z=F.zone,de=F.week,re=new Date,ne=V||(G||$?1:re.getDate()),te=G||re.getFullYear(),Q=0;G&&!$||(Q=$>0?$-1:re.getMonth());var le,J=K||0,ge=ee||0,ie=H||0,Te=he||0;return Z?new Date(Date.UTC(te,Q,ne,J,ge,ie,Te+60*Z.offset*1e3)):P?new Date(Date.UTC(te,Q,ne,J,ge,ie,Te)):(le=new Date(te,Q,ne,J,ge,ie,Te),de&&(le=B(le).week(de).toDate()),le)}catch{return new Date("")}})(E,C,w,v),this.init(),L&&L!==!0&&(this.$L=this.locale(L).$L),O&&E!=this.format(C)&&(this.$d=new Date("")),s={}}else if(C instanceof Array)for(var S=C.length,A=1;A<=S;A+=1){k[1]=C[A-1];var _=v.apply(this,k);if(_.isValid()){this.$d=_.$d,this.$L=_.$L,this.init();break}A===S&&(this.$d=new Date(""))}else b.call(this,T)}}}))});var Q4e=Jt((iq,aq)=>{"use strict";(function(t,e){typeof iq=="object"&&typeof aq<"u"?aq.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=e()})(iq,(function(){"use strict";return function(t,e){var r=e.prototype,n=r.format;r.format=function(i){var a=this,s=this.$locale();if(!this.isValid())return n.bind(this)(i);var l=this.$utils(),u=(i||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(h){switch(h){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return s.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return s.ordinal(a.week(),"W");case"w":case"ww":return l.s(a.week(),h==="w"?1:2,"0");case"W":case"WW":return l.s(a.isoWeek(),h==="W"?1:2,"0");case"k":case"kk":return l.s(String(a.$H===0?24:a.$H),h==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return h}}));return n.bind(this)(u)}}}))});function dTe(t,e,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);t[0].match(s)&&(e[i]=!0,t.shift(1),n=!0)})}var eTe,Ko,tTe,rTe,nTe,Z4e,qu,cq,uq,hq,KT,QT,fq,dq,d7,Sv,pq,iTe,mq,ZT,gq,yq,p7,sq,Zit,Jit,eat,tat,rat,nat,iat,aat,sat,oat,lat,cat,uat,hat,fat,dat,pat,mat,gat,yat,vat,xat,bat,aTe,Tat,wat,kat,sTe,Sat,oq,oTe,lTe,h7,kv,Eat,Cat,lq,f7,aa,cTe,Aat,Vm,_at,J4e,Dat,uTe,Rat,hTe,Lat,Nat,fTe,pTe=I(()=>{"use strict";eTe=Aa(Fg(),1),Ko=Aa(N3(),1),tTe=Aa(X4e(),1),rTe=Aa(K4e(),1),nTe=Aa(Q4e(),1);gt();Qt();sr();ki();Ko.default.extend(tTe.default);Ko.default.extend(rTe.default);Ko.default.extend(nTe.default);Z4e={friday:5,saturday:6},qu="",cq="",hq="",KT=[],QT=[],fq=new Map,dq=[],d7=[],Sv="",pq="",iTe=["active","done","crit","milestone","vert"],mq=[],ZT=!1,gq=!1,yq="sunday",p7="saturday",sq=0,Zit=o(function(){dq=[],d7=[],Sv="",mq=[],h7=0,lq=void 0,f7=void 0,aa=[],qu="",cq="",pq="",uq=void 0,hq="",KT=[],QT=[],ZT=!1,gq=!1,sq=0,fq=new Map,Mr(),yq="sunday",p7="saturday"},"clear"),Jit=o(function(t){cq=t},"setAxisFormat"),eat=o(function(){return cq},"getAxisFormat"),tat=o(function(t){uq=t},"setTickInterval"),rat=o(function(){return uq},"getTickInterval"),nat=o(function(t){hq=t},"setTodayMarker"),iat=o(function(){return hq},"getTodayMarker"),aat=o(function(t){qu=t},"setDateFormat"),sat=o(function(){ZT=!0},"enableInclusiveEndDates"),oat=o(function(){return ZT},"endDatesAreInclusive"),lat=o(function(){gq=!0},"enableTopAxis"),cat=o(function(){return gq},"topAxisEnabled"),uat=o(function(t){pq=t},"setDisplayMode"),hat=o(function(){return pq},"getDisplayMode"),fat=o(function(){return qu},"getDateFormat"),dat=o(function(t){KT=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),pat=o(function(){return KT},"getIncludes"),mat=o(function(t){QT=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),gat=o(function(){return QT},"getExcludes"),yat=o(function(){return fq},"getLinks"),vat=o(function(t){Sv=t,dq.push(t)},"addSection"),xat=o(function(){return dq},"getSections"),bat=o(function(){let t=J4e(),e=10,r=0;for(;!t&&r{let u=l.trim();return u==="x"||u==="X"},"isTimestampFormat")(e)&&/^\d+$/.test(r))return new Date(Number(r));let a=/^after\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let l=null;for(let h of a.groups.ids.split(" ")){let f=Vm(h);f!==void 0&&(!l||f.endTime>l.endTime)&&(l=f)}if(l)return l.endTime;let u=new Date;return u.setHours(0,0,0,0),u}let s=(0,Ko.default)(r,e.trim(),!0);if(s.isValid())return s.toDate();{X.debug("Invalid date:"+r),X.debug("With date format:"+e.trim());let l=new Date(r);if(l===void 0||isNaN(l.getTime())||l.getFullYear()<-1e4||l.getFullYear()>1e4)throw new Error("Invalid date:"+r);return l}},"getStartDate"),oTe=o(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),lTe=o(function(t,e,r,n=!1){r=r.trim();let a=/^until\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let f=null;for(let p of a.groups.ids.split(" ")){let m=Vm(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),fq.set(n,r))}),uTe(t,"clickable")},"setLink"),uTe=o(function(t,e){t.split(",").forEach(function(r){let n=Vm(r);n!==void 0&&n.classes.push(e)})},"setClass"),Rat=o(function(t,e,r){if(xe().securityLevel!=="loose"||e===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a{jt.runFunc(e,...n)})},"setClickFun"),hTe=o(function(t,e){mq.push(function(){let r=document.querySelector(`[id="${t}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){let r=document.querySelector(`[id="${t}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),Lat=o(function(t,e,r){t.split(",").forEach(function(n){Rat(n,e,r)}),uTe(t,"clickable")},"setClickEvent"),Nat=o(function(t){mq.forEach(function(e){e(t)})},"bindFunctions"),fTe={getConfig:o(()=>xe().gantt,"getConfig"),clear:Zit,setDateFormat:aat,getDateFormat:fat,enableInclusiveEndDates:sat,endDatesAreInclusive:oat,enableTopAxis:lat,topAxisEnabled:cat,setAxisFormat:Jit,getAxisFormat:eat,setTickInterval:tat,getTickInterval:rat,setTodayMarker:nat,getTodayMarker:iat,setAccTitle:zr,getAccTitle:Vr,setDiagramTitle:Xr,getDiagramTitle:Wr,setDisplayMode:uat,getDisplayMode:hat,setAccDescription:qr,getAccDescription:Ur,addSection:vat,getSections:xat,getTasks:bat,addTask:Aat,findTaskById:Vm,addTaskOrg:_at,setIncludes:dat,getIncludes:pat,setExcludes:mat,getExcludes:gat,setClickEvent:Lat,setLink:Dat,getLinks:yat,bindFunctions:Nat,parseDuration:oTe,isInvalidDate:aTe,setWeekday:Tat,getWeekday:wat,setWeekend:kat};o(dTe,"getTaskTags")});var mTe=Jt((vq,xq)=>{"use strict";(function(t,e){typeof vq=="object"&&typeof xq<"u"?xq.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_duration=e()})(vq,(function(){"use strict";var t,e,r=1e3,n=6e4,i=36e5,a=864e5,s=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,l=31536e6,u=2628e6,h=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,f={years:l,months:u,days:a,hours:i,minutes:n,seconds:r,milliseconds:1,weeks:6048e5},d=o(function(E){return E instanceof b},"c"),p=o(function(E,w,k){return new b(E,k,w.$l)},"f"),m=o(function(E){return e.p(E)+"s"},"m"),g=o(function(E){return E<0},"l"),y=o(function(E){return g(E)?Math.ceil(E):Math.floor(E)},"$"),v=o(function(E){return Math.abs(E)},"y"),x=o(function(E,w){return E?g(E)?{negative:!0,format:""+v(E)+w}:{negative:!1,format:""+E+w}:{negative:!1,format:""}},"v"),b=(function(){function E(k,C,D){var R=this;if(this.$d={},this.$l=D,k===void 0&&(this.$ms=0,this.parseFromMilliseconds()),C)return p(k*f[m(C)],this);if(typeof k=="number")return this.$ms=k,this.parseFromMilliseconds(),this;if(typeof k=="object")return Object.keys(k).forEach((function(S){R.$d[m(S)]=k[S]})),this.calMilliseconds(),this;if(typeof k=="string"){var O=k.match(h);if(O){var L=O.slice(2).map((function(S){return S!=null?Number(S):0}));return this.$d.years=L[0],this.$d.months=L[1],this.$d.weeks=L[2],this.$d.days=L[3],this.$d.hours=L[4],this.$d.minutes=L[5],this.$d.seconds=L[6],this.calMilliseconds(),this}}return this}o(E,"l");var w=E.prototype;return w.calMilliseconds=function(){var k=this;this.$ms=Object.keys(this.$d).reduce((function(C,D){return C+(k.$d[D]||0)*f[D]}),0)},w.parseFromMilliseconds=function(){var k=this.$ms;this.$d.years=y(k/l),k%=l,this.$d.months=y(k/u),k%=u,this.$d.days=y(k/a),k%=a,this.$d.hours=y(k/i),k%=i,this.$d.minutes=y(k/n),k%=n,this.$d.seconds=y(k/r),k%=r,this.$d.milliseconds=k},w.toISOString=function(){var k=x(this.$d.years,"Y"),C=x(this.$d.months,"M"),D=+this.$d.days||0;this.$d.weeks&&(D+=7*this.$d.weeks);var R=x(D,"D"),O=x(this.$d.hours,"H"),L=x(this.$d.minutes,"M"),S=this.$d.seconds||0;this.$d.milliseconds&&(S+=this.$d.milliseconds/1e3,S=Math.round(1e3*S)/1e3);var A=x(S,"S"),_=k.negative||C.negative||R.negative||O.negative||L.negative||A.negative,N=O.format||L.format||A.format?"T":"",M=(_?"-":"")+"P"+k.format+C.format+R.format+N+O.format+L.format+A.format;return M==="P"||M==="-P"?"P0D":M},w.toJSON=function(){return this.toISOString()},w.format=function(k){var C=k||"YYYY-MM-DDTHH:mm:ss",D={Y:this.$d.years,YY:e.s(this.$d.years,2,"0"),YYYY:e.s(this.$d.years,4,"0"),M:this.$d.months,MM:e.s(this.$d.months,2,"0"),D:this.$d.days,DD:e.s(this.$d.days,2,"0"),H:this.$d.hours,HH:e.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:e.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:e.s(this.$d.seconds,2,"0"),SSS:e.s(this.$d.milliseconds,3,"0")};return C.replace(s,(function(R,O){return O||String(D[R])}))},w.as=function(k){return this.$ms/f[m(k)]},w.get=function(k){var C=this.$ms,D=m(k);return D==="milliseconds"?C%=1e3:C=D==="weeks"?y(C/f[D]):this.$d[D],C||0},w.add=function(k,C,D){var R;return R=C?k*f[m(C)]:d(k)?k.$ms:p(k,this).$ms,p(this.$ms+R*(D?-1:1),this)},w.subtract=function(k,C){return this.add(k,C,!0)},w.locale=function(k){var C=this.clone();return C.$l=k,C},w.clone=function(){return p(this.$ms,this)},w.humanize=function(k){return t().add(this.$ms,"ms").locale(this.$l).fromNow(!k)},w.valueOf=function(){return this.asMilliseconds()},w.milliseconds=function(){return this.get("milliseconds")},w.asMilliseconds=function(){return this.as("milliseconds")},w.seconds=function(){return this.get("seconds")},w.asSeconds=function(){return this.as("seconds")},w.minutes=function(){return this.get("minutes")},w.asMinutes=function(){return this.as("minutes")},w.hours=function(){return this.get("hours")},w.asHours=function(){return this.as("hours")},w.days=function(){return this.get("days")},w.asDays=function(){return this.as("days")},w.weeks=function(){return this.get("weeks")},w.asWeeks=function(){return this.as("weeks")},w.months=function(){return this.get("months")},w.asMonths=function(){return this.as("months")},w.years=function(){return this.get("years")},w.asYears=function(){return this.as("years")},E})(),T=o(function(E,w,k){return E.add(w.years()*k,"y").add(w.months()*k,"M").add(w.days()*k,"d").add(w.hours()*k,"h").add(w.minutes()*k,"m").add(w.seconds()*k,"s").add(w.milliseconds()*k,"ms")},"p");return function(E,w,k){t=k,e=k().$utils(),k.duration=function(R,O){var L=k.locale();return p(R,{$l:L},O)},k.isDuration=d;var C=w.prototype.add,D=w.prototype.subtract;w.prototype.add=function(R,O){return d(R)?T(this,R,1):C.bind(this)(R,O)},w.prototype.subtract=function(R,O){return d(R)?T(this,R,-1):D.bind(this)(R,O)}}}))});var Ev,yTe,Mat,gTe,Iat,Jh,bq,Oat,vTe,xTe=I(()=>{"use strict";Ev=Aa(N3(),1),yTe=Aa(mTe(),1);gt();kr();wr();Qt();Fi();Ev.default.extend(yTe.default);Mat=o(function(){X.debug("Something is calling, setConf, remove the call")},"setConf"),gTe={monday:Df,tuesday:b5,wednesday:T5,thursday:Kc,friday:w5,saturday:k5,sunday:tc},Iat=o((t,e)=>{let r=[...t].map(()=>-1/0),n=[...t].sort((a,s)=>a.startTime-s.startTime||a.order-s.order),i=0;for(let a of n)for(let s=0;s=r[s]){r[s]=a.endTime,a.order=s+e,s>i&&(i=s);break}return i},"getMaxIntersections"),bq=1e4,Oat=o(function(t,e,r,n){let i=xe().gantt,a=xe().securityLevel,s;a==="sandbox"&&(s=He("#i"+e));let l=a==="sandbox"?He(s.nodes()[0].contentDocument.body):He("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(e);Jh=h.parentElement.offsetWidth,Jh===void 0&&(Jh=1200),i.useWidth!==void 0&&(Jh=i.useWidth);let f=n.db.getTasks(),d=[];for(let R of f)d.push(R.type);d=D(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let R={};for(let L of f)R[L.section]===void 0?R[L.section]=[L]:R[L.section].push(L);let O=0;for(let L of Object.keys(R)){let S=Iat(R[L],O)+1;O+=S,m+=S*(i.barHeight+i.barGap),p[L]=S}}else{m+=f.length*(i.barHeight+i.barGap);for(let R of d)p[R]=f.filter(O=>O.type===R).length}h.setAttribute("viewBox","0 0 "+Jh+" "+m);let g=l.select(`[id="${e}"]`),y=C5().domain([Lw(f,function(R){return R.startTime}),Rw(f,function(R){return R.endTime})]).rangeRound([0,Jh-i.leftPadding-i.rightPadding]);function v(R,O){let L=R.startTime,S=O.startTime,A=0;return L>S?A=1:L$.vert===V.vert?0:$.vert?1:-1);let P=[...new Set(R.map($=>$.order))].map($=>R.find(V=>V.order===$));g.append("g").selectAll("rect").data(P).enter().append("rect").attr("x",0).attr("y",function($,V){return V=$.order,V*O+L-2}).attr("width",function(){return N-i.rightPadding/2}).attr("height",O).attr("class",function($){for(let[V,K]of d.entries())if($.type===K)return"section section"+V%i.numberSectionStyles;return"section section0"}).enter();let B=g.append("g").selectAll("rect").data(R).enter(),F=n.db.getLinks();if(B.append("rect").attr("id",function($){return $.id}).attr("rx",3).attr("ry",3).attr("x",function($){return $.milestone?y($.startTime)+S+.5*(y($.endTime)-y($.startTime))-.5*A:y($.startTime)+S}).attr("y",function($,V){return V=$.order,$.vert?i.gridLineStartPadding:V*O+L}).attr("width",function($){return $.milestone?A:$.vert?.08*A:y($.renderEndTime||$.endTime)-y($.startTime)}).attr("height",function($){return $.vert?f.length*(i.barHeight+i.barGap)+i.barHeight*2:A}).attr("transform-origin",function($,V){return V=$.order,(y($.startTime)+S+.5*(y($.endTime)-y($.startTime))).toString()+"px "+(V*O+L+.5*A).toString()+"px"}).attr("class",function($){let V="task",K="";$.classes.length>0&&(K=$.classes.join(" "));let ee=0;for(let[he,Z]of d.entries())$.type===Z&&(ee=he%i.numberSectionStyles);let H="";return $.active?$.crit?H+=" activeCrit":H=" active":$.done?$.crit?H=" doneCrit":H=" done":$.crit&&(H+=" crit"),H.length===0&&(H=" task"),$.milestone&&(H=" milestone "+H),$.vert&&(H=" vert "+H),H+=ee,H+=" "+K,V+H}),B.append("text").attr("id",function($){return $.id+"-text"}).text(function($){return $.task}).attr("font-size",i.fontSize).attr("x",function($){let V=y($.startTime),K=y($.renderEndTime||$.endTime);if($.milestone&&(V+=.5*(y($.endTime)-y($.startTime))-.5*A,K=V+A),$.vert)return y($.startTime)+S;let ee=this.getBBox().width;return ee>K-V?K+ee+1.5*i.leftPadding>N?V+S-5:K+S+5:(K-V)/2+V+S}).attr("y",function($,V){return $.vert?i.gridLineStartPadding+f.length*(i.barHeight+i.barGap)+60:(V=$.order,V*O+i.barHeight/2+(i.fontSize/2-2)+L)}).attr("text-height",A).attr("class",function($){let V=y($.startTime),K=y($.endTime);$.milestone&&(K=V+A);let ee=this.getBBox().width,H="";$.classes.length>0&&(H=$.classes.join(" "));let he=0;for(let[de,re]of d.entries())$.type===re&&(he=de%i.numberSectionStyles);let Z="";return $.active&&($.crit?Z="activeCritText"+he:Z="activeText"+he),$.done?$.crit?Z=Z+" doneCritText"+he:Z=Z+" doneText"+he:$.crit&&(Z=Z+" critText"+he),$.milestone&&(Z+=" milestoneText"),$.vert&&(Z+=" vertText"),ee>K-V?K+ee+1.5*i.leftPadding>N?H+" taskTextOutsideLeft taskTextOutside"+he+" "+Z:H+" taskTextOutsideRight taskTextOutside"+he+" "+Z+" width-"+ee:H+" taskText taskText"+he+" "+Z+" width-"+ee}),xe().securityLevel==="sandbox"){let $;$=He("#i"+e);let V=$.nodes()[0].contentDocument;B.filter(function(K){return F.has(K.id)}).each(function(K){var ee=V.querySelector("#"+K.id),H=V.querySelector("#"+K.id+"-text");let he=ee.parentNode;var Z=V.createElement("a");Z.setAttribute("xlink:href",F.get(K.id)),Z.setAttribute("target","_top"),he.appendChild(Z),Z.appendChild(ee),Z.appendChild(H)})}}o(b,"drawRects");function T(R,O,L,S,A,_,N,M){if(N.length===0&&M.length===0)return;let P,B;for(let{startTime:ee,endTime:H}of _)(P===void 0||eeB)&&(B=H);if(!P||!B)return;if((0,Ev.default)(B).diff((0,Ev.default)(P),"year")>5){X.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let F=n.db.getDateFormat(),G=[],$=null,V=(0,Ev.default)(P);for(;V.valueOf()<=B;)n.db.isInvalidDate(V,F,N,M)?$?$.end=V:$={start:V,end:V}:$&&(G.push($),$=null),V=V.add(1,"d");g.append("g").selectAll("rect").data(G).enter().append("rect").attr("id",ee=>"exclude-"+ee.start.format("YYYY-MM-DD")).attr("x",ee=>y(ee.start.startOf("day"))+L).attr("y",i.gridLineStartPadding).attr("width",ee=>y(ee.end.endOf("day"))-y(ee.start.startOf("day"))).attr("height",A-O-i.gridLineStartPadding).attr("transform-origin",function(ee,H){return(y(ee.start)+L+.5*(y(ee.end)-y(ee.start))).toString()+"px "+(H*R+.5*A).toString()+"px"}).attr("class","exclude-range")}o(T,"drawExcludeDays");function E(R,O,L,S){if(L<=0||R>O)return 1/0;let A=O-R,_=Ev.default.duration({[S??"day"]:L}).asMilliseconds();return _<=0?1/0:Math.ceil(A/_)}o(E,"getEstimatedTickCount");function w(R,O,L,S){let A=n.db.getDateFormat(),_=n.db.getAxisFormat(),N;_?N=_:A==="D"?N="%d":N=i.axisFormat??"%Y-%m-%d";let M=CD(y).tickSize(-S+O+i.gridLineStartPadding).tickFormat(Jp(N)),B=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(B!==null){let F=parseInt(B[1],10);if(isNaN(F)||F<=0)X.warn(`Invalid tick interval value: "${B[1]}". Skipping custom tick interval.`);else{let G=B[2],$=n.db.getWeekday()||i.weekday,V=y.domain(),K=V[0],ee=V[1],H=E(K,ee,F,G);if(H>bq)X.warn(`The tick interval "${F}${G}" would generate ${H} ticks, which exceeds the maximum allowed (${bq}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(G){case"millisecond":M.ticks(jc.every(F));break;case"second":M.ticks(No.every(F));break;case"minute":M.ticks(fh.every(F));break;case"hour":M.ticks(dh.every(F));break;case"day":M.ticks(ll.every(F));break;case"week":M.ticks(gTe[$].every(F));break;case"month":M.ticks(ph.every(F));break}}}if(g.append("g").attr("class","grid").attr("transform","translate("+R+", "+(S-50)+")").call(M).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||i.topAxis){let F=ED(y).tickSize(-S+O+i.gridLineStartPadding).tickFormat(Jp(N));if(B!==null){let G=parseInt(B[1],10);if(isNaN(G)||G<=0)X.warn(`Invalid tick interval value: "${B[1]}". Skipping custom tick interval.`);else{let $=B[2],V=n.db.getWeekday()||i.weekday,K=y.domain(),ee=K[0],H=K[1];if(E(ee,H,G,$)<=bq)switch($){case"millisecond":F.ticks(jc.every(G));break;case"second":F.ticks(No.every(G));break;case"minute":F.ticks(fh.every(G));break;case"hour":F.ticks(dh.every(G));break;case"day":F.ticks(ll.every(G));break;case"week":F.ticks(gTe[V].every(G));break;case"month":F.ticks(ph.every(G));break}}}g.append("g").attr("class","grid").attr("transform","translate("+R+", "+O+")").call(F).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(w,"makeGrid");function k(R,O){let L=0,S=Object.keys(p).map(A=>[A,p[A]]);g.append("g").selectAll("text").data(S).enter().append(function(A){let _=A[0].split(nt.lineBreakRegex),N=-(_.length-1)/2,M=u.createElementNS("http://www.w3.org/2000/svg","text");M.setAttribute("dy",N+"em");for(let[P,B]of _.entries()){let F=u.createElementNS("http://www.w3.org/2000/svg","tspan");F.setAttribute("alignment-baseline","central"),F.setAttribute("x","10"),P>0&&F.setAttribute("dy","1em"),F.textContent=B,M.appendChild(F)}return M}).attr("x",10).attr("y",function(A,_){if(_>0)for(let N=0;N<_;N++)return L+=S[_-1][1],A[1]*R/2+L*R+O;else return A[1]*R/2+O}).attr("font-size",i.sectionFontSize).attr("class",function(A){for(let[_,N]of d.entries())if(A[0]===N)return"sectionTitle sectionTitle"+_%i.numberSectionStyles;return"sectionTitle"})}o(k,"vertLabels");function C(R,O,L,S){let A=n.db.getTodayMarker();if(A==="off")return;let _=g.append("g").attr("class","today"),N=new Date,M=_.append("line");M.attr("x1",y(N)+R).attr("x2",y(N)+R).attr("y1",i.titleTopMargin).attr("y2",S-i.titleTopMargin).attr("class","today"),A!==""&&M.attr("style",A.replace(/,/g,";"))}o(C,"drawToday");function D(R){let O={},L=[];for(let S=0,A=R.length;S{"use strict";Pat=o(t=>` .mermaid-main-font { font-family: ${t.fontFamily}; } @@ -1521,8 +1553,8 @@ Expecting `+Ie.join(", ")+", got '"+(this.terminals_[de]||de)+"'":Ne="Parse erro fill: ${t.titleColor||t.textColor}; font-family: ${t.fontFamily}; } -`,"getStyles"),p1e=PQe});var g1e={};dr(g1e,{diagram:()=>BQe});var BQe,y1e=M(()=>{"use strict";Vge();l1e();d1e();m1e();BQe={parser:Gge,db:s1e,renderer:f1e,styles:p1e}});var b1e,T1e=M(()=>{"use strict";Uf();pt();b1e={parse:o(async t=>{let e=await bs("info",t);X.debug(e)},"parse")}});var y4,BF=M(()=>{y4={name:"mermaid",version:"11.12.2",description:"Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.",type:"module",module:"./dist/mermaid.core.mjs",types:"./dist/mermaid.d.ts",exports:{".":{types:"./dist/mermaid.d.ts",import:"./dist/mermaid.core.mjs",default:"./dist/mermaid.core.mjs"},"./*":"./*"},keywords:["diagram","markdown","flowchart","sequence diagram","gantt","class diagram","git graph","mindmap","packet diagram","c4 diagram","er diagram","pie chart","pie diagram","quadrant chart","requirement diagram","graph"],scripts:{clean:"rimraf dist",dev:"pnpm -w dev","docs:code":"typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup","docs:build":"rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts","docs:verify":"pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify","docs:pre:vitepress":"pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts","docs:build:vitepress":"pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing","docs:dev":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:dev:docker":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:serve":"pnpm docs:build:vitepress && vitepress serve src/vitepress","docs:spellcheck":'cspell "src/docs/**/*.md"',"docs:release-version":"tsx scripts/update-release-version.mts","docs:verify-version":"tsx scripts/update-release-version.mts --verify","types:build-config":"tsx scripts/create-types-from-json-schema.mts","types:verify-config":"tsx scripts/create-types-from-json-schema.mts --verify",checkCircle:"npx madge --circular ./src",prepublishOnly:"pnpm docs:verify-version"},repository:{type:"git",url:"https://github.com/mermaid-js/mermaid"},author:"Knut Sveidqvist",license:"MIT",standard:{ignore:["**/parser/*.js","dist/**/*.js","cypress/**/*.js"],globals:["page"]},dependencies:{"@braintree/sanitize-url":"^7.1.1","@iconify/utils":"^3.0.1","@mermaid-js/parser":"workspace:^","@types/d3":"^7.4.3",cytoscape:"^3.29.3","cytoscape-cose-bilkent":"^4.1.0","cytoscape-fcose":"^2.2.0",d3:"^7.9.0","d3-sankey":"^0.12.3","dagre-d3-es":"7.0.13",dayjs:"^1.11.18",dompurify:"^3.2.5",katex:"^0.16.22",khroma:"^2.1.0","lodash-es":"^4.17.21",marked:"^16.2.1",roughjs:"^4.6.6",stylis:"^4.3.6","ts-dedent":"^2.2.0",uuid:"^11.1.0"},devDependencies:{"@adobe/jsonschema2md":"^8.0.5","@iconify/types":"^2.0.0","@types/cytoscape":"^3.21.9","@types/cytoscape-fcose":"^2.2.4","@types/d3-sankey":"^0.12.4","@types/d3-scale":"^4.0.9","@types/d3-scale-chromatic":"^3.1.0","@types/d3-selection":"^3.0.11","@types/d3-shape":"^3.1.7","@types/jsdom":"^21.1.7","@types/katex":"^0.16.7","@types/lodash-es":"^4.17.12","@types/micromatch":"^4.0.9","@types/stylis":"^4.2.7","@types/uuid":"^10.0.0",ajv:"^8.17.1",canvas:"^3.1.2",chokidar:"3.6.0",concurrently:"^9.1.2","csstree-validator":"^4.0.1",globby:"^14.1.0",jison:"^0.4.18","js-base64":"^3.7.8",jsdom:"^26.1.0","json-schema-to-typescript":"^15.0.4",micromatch:"^4.0.8","path-browserify":"^1.0.1",prettier:"^3.5.3",remark:"^15.0.1","remark-frontmatter":"^5.0.0","remark-gfm":"^4.0.1",rimraf:"^6.0.1","start-server-and-test":"^2.0.13","type-fest":"^4.35.0",typedoc:"^0.28.12","typedoc-plugin-markdown":"^4.8.1",typescript:"~5.7.3","unist-util-flatmap":"^1.0.0","unist-util-visit":"^5.0.0",vitepress:"^1.6.4","vitepress-plugin-search":"1.0.4-alpha.22"},files:["dist/","README.md"],publishConfig:{access:"public"}}});var VQe,UQe,w1e,k1e=M(()=>{"use strict";BF();VQe={version:y4.version+""},UQe=o(()=>VQe.version,"getVersion"),w1e={getVersion:UQe}});var aa,tu=M(()=>{"use strict";yr();Xt();aa=o(t=>{let{securityLevel:e}=ge(),r=qe("body");if(e==="sandbox"){let a=qe(`#i${t}`).node()?.contentDocument??document;r=qe(a.body)}return r.select(`#${t}`)},"selectSvgElement")});var HQe,E1e,S1e=M(()=>{"use strict";pt();tu();Ei();HQe=o((t,e,r)=>{X.debug(`rendering info diagram -`+t);let n=aa(e);mn(n,100,400,!0),n.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${r}`)},"draw"),E1e={draw:HQe}});var C1e={};dr(C1e,{diagram:()=>qQe});var qQe,A1e=M(()=>{"use strict";T1e();k1e();S1e();qQe={parser:b1e,db:w1e,renderer:E1e}});var L1e,FF,z6,$F,XQe,jQe,KQe,QQe,ZQe,JQe,eZe,G6,zF=M(()=>{"use strict";pt();ci();Ra();L1e=ur.pie,FF={sections:new Map,showData:!1,config:L1e},z6=FF.sections,$F=FF.showData,XQe=structuredClone(L1e),jQe=o(()=>structuredClone(XQe),"getConfig"),KQe=o(()=>{z6=new Map,$F=FF.showData,Sr()},"clear"),QQe=o(({label:t,value:e})=>{if(e<0)throw new Error(`"${t}" has invalid value: ${e}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);z6.has(t)||(z6.set(t,e),X.debug(`added new section: ${t}, with value: ${e}`))},"addSection"),ZQe=o(()=>z6,"getSections"),JQe=o(t=>{$F=t},"setShowData"),eZe=o(()=>$F,"getShowData"),G6={getConfig:jQe,clear:KQe,setDiagramTitle:$r,getDiagramTitle:Pr,setAccTitle:Rr,getAccTitle:Mr,setAccDescription:Ir,getAccDescription:Or,addSection:QQe,getSections:ZQe,setShowData:JQe,getShowData:eZe}});var tZe,R1e,N1e=M(()=>{"use strict";Uf();pt();r0();zF();tZe=o((t,e)=>{nl(t,e),e.setShowData(t.showData),t.sections.map(e.addSection)},"populateDb"),R1e={parse:o(async t=>{let e=await bs("pie",t);X.debug(e),tZe(e,G6)},"parse")}});var rZe,M1e,I1e=M(()=>{"use strict";rZe=o(t=>` +`,"getStyles"),bTe=Pat});var wTe={};vr(wTe,{diagram:()=>Bat});var Bat,kTe=I(()=>{"use strict";j4e();pTe();xTe();TTe();Bat={parser:Y4e,db:fTe,renderer:vTe,styles:bTe}});var CTe,ATe=I(()=>{"use strict";sp();gt();CTe={parse:o(async t=>{let e=await Vs("info",t);X.debug(e)},"parse")}});var JT,Tq=I(()=>{JT={name:"mermaid",version:"11.12.3",description:"Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.",type:"module",module:"./dist/mermaid.core.mjs",types:"./dist/mermaid.d.ts",exports:{".":{types:"./dist/mermaid.d.ts",import:"./dist/mermaid.core.mjs",default:"./dist/mermaid.core.mjs"},"./*":"./*"},keywords:["diagram","markdown","flowchart","sequence diagram","gantt","class diagram","git graph","mindmap","packet diagram","c4 diagram","er diagram","pie chart","pie diagram","quadrant chart","requirement diagram","graph"],scripts:{clean:"rimraf dist",dev:"pnpm -w dev","docs:code":"typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup","docs:build":"rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts","docs:verify":"pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify","docs:pre:vitepress":"pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts","docs:build:vitepress":"pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing","docs:dev":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:dev:docker":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:serve":"pnpm docs:build:vitepress && vitepress serve src/vitepress","docs:spellcheck":'cspell "src/docs/**/*.md"',"docs:release-version":"tsx scripts/update-release-version.mts","docs:verify-version":"tsx scripts/update-release-version.mts --verify","types:build-config":"tsx scripts/create-types-from-json-schema.mts","types:verify-config":"tsx scripts/create-types-from-json-schema.mts --verify",checkCircle:"npx madge --circular ./src",prepublishOnly:"pnpm docs:verify-version"},repository:{type:"git",url:"https://github.com/mermaid-js/mermaid"},author:"Knut Sveidqvist",license:"MIT",standard:{ignore:["**/parser/*.js","dist/**/*.js","cypress/**/*.js"],globals:["page"]},dependencies:{"@braintree/sanitize-url":"^7.1.1","@iconify/utils":"^3.0.1","@mermaid-js/parser":"workspace:^","@types/d3":"^7.4.3",cytoscape:"^3.29.3","cytoscape-cose-bilkent":"^4.1.0","cytoscape-fcose":"^2.2.0",d3:"^7.9.0","d3-sankey":"^0.12.3","dagre-d3-es":"7.0.13",dayjs:"^1.11.18",dompurify:"^3.2.5",katex:"^0.16.22",khroma:"^2.1.0","lodash-es":"^4.17.23",marked:"^16.2.1",roughjs:"^4.6.6",stylis:"^4.3.6","ts-dedent":"^2.2.0",uuid:"^11.1.0"},devDependencies:{"@adobe/jsonschema2md":"^8.0.5","@iconify/types":"^2.0.0","@types/cytoscape":"^3.21.9","@types/cytoscape-fcose":"^2.2.4","@types/d3-sankey":"^0.12.4","@types/d3-scale":"^4.0.9","@types/d3-scale-chromatic":"^3.1.0","@types/d3-selection":"^3.0.11","@types/d3-shape":"^3.1.7","@types/jsdom":"^21.1.7","@types/katex":"^0.16.7","@types/lodash-es":"^4.17.12","@types/micromatch":"^4.0.9","@types/stylis":"^4.2.7","@types/uuid":"^10.0.0",ajv:"^8.17.1",canvas:"^3.1.2",chokidar:"3.6.0",concurrently:"^9.1.2","csstree-validator":"^4.0.1",globby:"^14.1.0",jison:"^0.4.18","js-base64":"^3.7.8",jsdom:"^26.1.0","json-schema-to-typescript":"^15.0.4",micromatch:"^4.0.8","path-browserify":"^1.0.1",prettier:"^3.5.3",remark:"^15.0.1","remark-frontmatter":"^5.0.0","remark-gfm":"^4.0.1",rimraf:"^6.0.1","start-server-and-test":"^2.0.13","type-fest":"^4.35.0",typedoc:"^0.28.12","typedoc-plugin-markdown":"^4.8.1",typescript:"~5.7.3","unist-util-flatmap":"^1.0.0","unist-util-visit":"^5.0.0",vitepress:"^1.6.4","vitepress-plugin-search":"1.0.4-alpha.22"},files:["dist/","README.md"],publishConfig:{access:"public"}}});var Vat,qat,_Te,DTe=I(()=>{"use strict";Tq();Vat={version:JT.version+""},qat=o(()=>Vat.version,"getVersion"),_Te={getVersion:qat}});var Ca,Uu=I(()=>{"use strict";kr();Qt();Ca=o(t=>{let{securityLevel:e}=xe(),r=He("body");if(e==="sandbox"){let a=He(`#i${t}`).node()?.contentDocument??document;r=He(a.body)}return r.select(`#${t}`)},"selectSvgElement")});var Uat,RTe,LTe=I(()=>{"use strict";gt();Uu();Fi();Uat=o((t,e,r)=>{X.debug(`rendering info diagram +`+t);let n=Ca(e);Sn(n,100,400,!0),n.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${r}`)},"draw"),RTe={draw:Uat}});var NTe={};vr(NTe,{diagram:()=>Wat});var Wat,MTe=I(()=>{"use strict";ATe();DTe();LTe();Wat={parser:CTe,db:_Te,renderer:RTe}});var PTe,wq,m7,kq,jat,Xat,Kat,Qat,Zat,Jat,est,g7,Sq=I(()=>{"use strict";gt();ki();Ka();PTe=gr.pie,wq={sections:new Map,showData:!1,config:PTe},m7=wq.sections,kq=wq.showData,jat=structuredClone(PTe),Xat=o(()=>structuredClone(jat),"getConfig"),Kat=o(()=>{m7=new Map,kq=wq.showData,Mr()},"clear"),Qat=o(({label:t,value:e})=>{if(e<0)throw new Error(`"${t}" has invalid value: ${e}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);m7.has(t)||(m7.set(t,e),X.debug(`added new section: ${t}, with value: ${e}`))},"addSection"),Zat=o(()=>m7,"getSections"),Jat=o(t=>{kq=t},"setShowData"),est=o(()=>kq,"getShowData"),g7={getConfig:Xat,clear:Kat,setDiagramTitle:Xr,getDiagramTitle:Wr,setAccTitle:zr,getAccTitle:Vr,setAccDescription:qr,getAccDescription:Ur,addSection:Qat,getSections:Zat,setShowData:Jat,getShowData:est}});var tst,BTe,FTe=I(()=>{"use strict";sp();gt();$m();Sq();tst=o((t,e)=>{Pl(t,e),e.setShowData(t.showData),t.sections.map(e.addSection)},"populateDb"),BTe={parse:o(async t=>{let e=await Vs("pie",t);X.debug(e),tst(e,g7)},"parse")}});var rst,$Te,zTe=I(()=>{"use strict";rst=o(t=>` .pieCircle{ stroke: ${t.pieStrokeColor}; stroke-width : ${t.pieStrokeWidth}; @@ -1550,25 +1582,25 @@ Expecting `+Ie.join(", ")+", got '"+(this.terminals_[de]||de)+"'":Ne="Parse erro font-family: ${t.fontFamily}; font-size: ${t.pieLegendTextSize}; } -`,"getStyles"),M1e=rZe});var nZe,iZe,O1e,P1e=M(()=>{"use strict";yr();Xt();pt();tu();Ei();tr();nZe=o(t=>{let e=[...t.values()].reduce((i,a)=>i+a,0),r=[...t.entries()].map(([i,a])=>({label:i,value:a})).filter(i=>i.value/e*100>=1).sort((i,a)=>a.value-i.value);return j5().value(i=>i.value)(r)},"createPieArcs"),iZe=o((t,e,r,n)=>{X.debug(`rendering pie chart -`+t);let i=n.db,a=ge(),s=Vn(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=aa(e),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=vc(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=Sl().innerRadius(0).outerRadius(x),T=Sl().innerRadius(x*v).outerRadius(x*v);m.append("circle").attr("cx",0).attr("cy",0).attr("r",x+y/2).attr("class","pieOuterCircle");let S=i.getSections(),w=nZe(S),k=[g.pie1,g.pie2,g.pie3,g.pie4,g.pie5,g.pie6,g.pie7,g.pie8,g.pie9,g.pie10,g.pie11,g.pie12],C=0;S.forEach(D=>{C+=D});let A=w.filter(D=>(D.data.value/C*100).toFixed(0)!=="0"),L=no(k);m.selectAll("mySlices").data(A).enter().append("path").attr("d",b).attr("fill",D=>L(D.data.label)).attr("class","pieCircle"),m.selectAll("mySlices").data(A).enter().append("text").text(D=>(D.data.value/C*100).toFixed(0)+"%").attr("transform",D=>"translate("+T.centroid(D)+")").style("text-anchor","middle").attr("class","slice"),m.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText");let I=[...S.entries()].map(([D,O])=>({label:D,value:O})),R=m.selectAll(".legend").data(I).enter().append("g").attr("class","legend").attr("transform",(D,O)=>{let N=u+h,P=N*I.length/2,B=12*u,F=O*N-P;return"translate("+B+","+F+")"});R.append("rect").attr("width",u).attr("height",u).style("fill",D=>L(D.label)).style("stroke",D=>L(D.label)),R.append("text").attr("x",u+h).attr("y",u-h).text(D=>i.getShowData()?`${D.label} [${D.value}]`:D.label);let E=Math.max(...R.selectAll("text").nodes().map(D=>D?.getBoundingClientRect().width??0)),_=d+l+u+h+E;p.attr("viewBox",`0 0 ${_} ${f}`),mn(p,f,_,s.useMaxWidth)},"draw"),O1e={draw:iZe}});var B1e={};dr(B1e,{diagram:()=>aZe});var aZe,F1e=M(()=>{"use strict";N1e();zF();I1e();P1e();aZe={parser:R1e,db:G6,renderer:O1e,styles:M1e}});var GF,z1e,G1e=M(()=>{"use strict";GF=(function(){var t=o(function(he,z,se,le){for(se=se||{},le=he.length;le--;se[he[le]]=z);return se},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[1,7],s=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],h=[2,36],f=[1,37],d=[1,36],p=[1,38],m=[1,35],g=[1,43],y=[1,41],v=[1,14],x=[1,23],b=[1,18],T=[1,19],S=[1,20],w=[1,21],k=[1,22],C=[1,24],A=[1,25],L=[1,26],I=[1,27],R=[1,28],E=[1,29],_=[1,32],D=[1,33],O=[1,34],N=[1,39],P=[1,40],B=[1,42],F=[1,44],V=[1,62],$=[1,61],U=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],j=[1,65],ee=[1,66],q=[1,67],oe=[1,68],Q=[1,69],ue=[1,70],te=[1,71],re=[1,72],J=[1,73],K=[1,74],ae=[1,75],Z=[1,76],de=[4,5,6,7,8,9,10,11,12,13,14,15,18],ne=[1,90],Te=[1,91],W=[1,92],Ve=[1,99],pe=[1,93],Be=[1,96],Ye=[1,94],He=[1,95],Le=[1,97],Ie=[1,98],Ne=[1,102],Ce=[10,55,56,57],Fe=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],fe={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:o(function(z,se,le,ke,ve,ye,Re){var _e=ye.length-1;switch(ve){case 23:this.$=ye[_e];break;case 24:this.$=ye[_e-1]+""+ye[_e];break;case 26:this.$=ye[_e-1]+ye[_e];break;case 27:this.$=[ye[_e].trim()];break;case 28:ye[_e-2].push(ye[_e].trim()),this.$=ye[_e-2];break;case 29:this.$=ye[_e-4],ke.addClass(ye[_e-2],ye[_e]);break;case 37:this.$=[];break;case 42:this.$=ye[_e].trim(),ke.setDiagramTitle(this.$);break;case 43:this.$=ye[_e].trim(),ke.setAccTitle(this.$);break;case 44:case 45:this.$=ye[_e].trim(),ke.setAccDescription(this.$);break;case 46:ke.addSection(ye[_e].substr(8)),this.$=ye[_e].substr(8);break;case 47:ke.addPoint(ye[_e-3],"",ye[_e-1],ye[_e],[]);break;case 48:ke.addPoint(ye[_e-4],ye[_e-3],ye[_e-1],ye[_e],[]);break;case 49:ke.addPoint(ye[_e-4],"",ye[_e-2],ye[_e-1],ye[_e]);break;case 50:ke.addPoint(ye[_e-5],ye[_e-4],ye[_e-2],ye[_e-1],ye[_e]);break;case 51:ke.setXAxisLeftText(ye[_e-2]),ke.setXAxisRightText(ye[_e]);break;case 52:ye[_e-1].text+=" \u27F6 ",ke.setXAxisLeftText(ye[_e-1]);break;case 53:ke.setXAxisLeftText(ye[_e]);break;case 54:ke.setYAxisBottomText(ye[_e-2]),ke.setYAxisTopText(ye[_e]);break;case 55:ye[_e-1].text+=" \u27F6 ",ke.setYAxisBottomText(ye[_e-1]);break;case 56:ke.setYAxisBottomText(ye[_e]);break;case 57:ke.setQuadrant1Text(ye[_e]);break;case 58:ke.setQuadrant2Text(ye[_e]);break;case 59:ke.setQuadrant3Text(ye[_e]);break;case 60:ke.setQuadrant4Text(ye[_e]);break;case 64:this.$={text:ye[_e],type:"text"};break;case 65:this.$={text:ye[_e-1].text+""+ye[_e],type:ye[_e-1].type};break;case 66:this.$={text:ye[_e],type:"text"};break;case 67:this.$={text:ye[_e],type:"markdown"};break;case 68:this.$=ye[_e];break;case 69:this.$=ye[_e-1]+""+ye[_e];break}},"anonymous"),table:[{18:e,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:e,26:8,27:2,28:r,55:n,56:i,57:a},{18:e,26:9,27:2,28:r,55:n,56:i,57:a},t(s,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(u,h,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:T,39:S,41:w,42:k,48:C,50:A,51:L,52:I,53:R,54:E,60:_,61:D,63:O,64:N,65:P,66:B,67:F}),t(s,[2,34]),{27:45,55:n,56:i,57:a},t(u,[2,37]),t(u,h,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:T,39:S,41:w,42:k,48:C,50:A,51:L,52:I,53:R,54:E,60:_,61:D,63:O,64:N,65:P,66:B,67:F}),t(u,[2,39]),t(u,[2,40]),t(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(u,[2,45]),t(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:_,61:D,63:O,64:N,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:_,61:D,63:O,64:N,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:_,61:D,63:O,64:N,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:_,61:D,63:O,64:N,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:_,61:D,63:O,64:N,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:_,61:D,63:O,64:N,65:P,66:B,67:F},{4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,44:[1,57],47:[1,58],58:60,59:59,63:O,64:N,65:P,66:B,67:F},t(U,[2,64]),t(U,[2,66]),t(U,[2,67]),t(U,[2,70]),t(U,[2,71]),t(U,[2,72]),t(U,[2,73]),t(U,[2,74]),t(U,[2,75]),t(U,[2,76]),t(U,[2,77]),t(U,[2,78]),t(U,[2,79]),t(U,[2,80]),t(s,[2,35]),t(u,[2,38]),t(u,[2,42]),t(u,[2,43]),t(u,[2,44]),{3:64,4:j,5:ee,6:q,7:oe,8:Q,9:ue,10:te,11:re,12:J,13:K,14:ae,15:Z,21:63},t(u,[2,53],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,49:[1,77],63:O,64:N,65:P,66:B,67:F}),t(u,[2,56],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,49:[1,78],63:O,64:N,65:P,66:B,67:F}),t(u,[2,57],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,63:O,64:N,65:P,66:B,67:F}),t(u,[2,58],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,63:O,64:N,65:P,66:B,67:F}),t(u,[2,59],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,63:O,64:N,65:P,66:B,67:F}),t(u,[2,60],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,63:O,64:N,65:P,66:B,67:F}),{45:[1,79]},{44:[1,80]},t(U,[2,65]),t(U,[2,81]),t(U,[2,82]),t(U,[2,83]),{3:82,4:j,5:ee,6:q,7:oe,8:Q,9:ue,10:te,11:re,12:J,13:K,14:ae,15:Z,18:[1,81]},t(de,[2,23]),t(de,[2,1]),t(de,[2,2]),t(de,[2,3]),t(de,[2,4]),t(de,[2,5]),t(de,[2,6]),t(de,[2,7]),t(de,[2,8]),t(de,[2,9]),t(de,[2,10]),t(de,[2,11]),t(de,[2,12]),t(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:_,61:D,63:O,64:N,65:P,66:B,67:F}),t(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:_,61:D,63:O,64:N,65:P,66:B,67:F}),{46:[1,85]},{45:[1,86]},{4:ne,5:Te,6:W,8:Ve,11:pe,13:Be,16:89,17:Ye,18:He,19:Le,20:Ie,22:88,23:87},t(de,[2,24]),t(u,[2,51],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,63:O,64:N,65:P,66:B,67:F}),t(u,[2,54],{59:59,58:60,4:f,5:d,8:V,10:p,12:m,13:g,14:y,18:$,63:O,64:N,65:P,66:B,67:F}),t(u,[2,47],{22:88,16:89,23:100,4:ne,5:Te,6:W,8:Ve,11:pe,13:Be,17:Ye,18:He,19:Le,20:Ie}),{46:[1,101]},t(u,[2,29],{10:Ne}),t(Ce,[2,27],{16:103,4:ne,5:Te,6:W,8:Ve,11:pe,13:Be,17:Ye,18:He,19:Le,20:Ie}),t(Fe,[2,25]),t(Fe,[2,13]),t(Fe,[2,14]),t(Fe,[2,15]),t(Fe,[2,16]),t(Fe,[2,17]),t(Fe,[2,18]),t(Fe,[2,19]),t(Fe,[2,20]),t(Fe,[2,21]),t(Fe,[2,22]),t(u,[2,49],{10:Ne}),t(u,[2,48],{22:88,16:89,23:104,4:ne,5:Te,6:W,8:Ve,11:pe,13:Be,17:Ye,18:He,19:Le,20:Ie}),{4:ne,5:Te,6:W,8:Ve,11:pe,13:Be,16:89,17:Ye,18:He,19:Le,20:Ie,22:105},t(Fe,[2,26]),t(u,[2,50],{10:Ne}),t(Ce,[2,28],{16:103,4:ne,5:Te,6:W,8:Ve,11:pe,13:Be,17:Ye,18:He,19:Le,20:Ie})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(z,se){if(se.recoverable)this.trace(z);else{var le=new Error(z);throw le.hash=se,le}},"parseError"),parse:o(function(z){var se=this,le=[0],ke=[],ve=[null],ye=[],Re=this.table,_e="",ze=0,Ke=0,xt=0,We=2,Oe=1,et=ye.slice.call(arguments,1),Ue=Object.create(this.lexer),lt={yy:{}};for(var Gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Gt)&&(lt.yy[Gt]=this.yy[Gt]);Ue.setInput(z,lt.yy),lt.yy.lexer=Ue,lt.yy.parser=this,typeof Ue.yylloc>"u"&&(Ue.yylloc={});var vt=Ue.yylloc;ye.push(vt);var Lt=Ue.options&&Ue.options.ranges;typeof lt.yy.parseError=="function"?this.parseError=lt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dt(Se){le.length=le.length-2*Se,ve.length=ve.length-Se,ye.length=ye.length-Se}o(dt,"popStack");function nt(){var Se;return Se=ke.pop()||Ue.lex()||Oe,typeof Se!="number"&&(Se instanceof Array&&(ke=Se,Se=ke.pop()),Se=se.symbols_[Se]||Se),Se}o(nt,"lex");for(var bt,wt,yt,ft,Ur,_t,bn={},Br,cr,ar,_r;;){if(yt=le[le.length-1],this.defaultActions[yt]?ft=this.defaultActions[yt]:((bt===null||typeof bt>"u")&&(bt=nt()),ft=Re[yt]&&Re[yt][bt]),typeof ft>"u"||!ft.length||!ft[0]){var Ct="";_r=[];for(Br in Re[yt])this.terminals_[Br]&&Br>We&&_r.push("'"+this.terminals_[Br]+"'");Ue.showPosition?Ct="Parse error on line "+(ze+1)+`: -`+Ue.showPosition()+` -Expecting `+_r.join(", ")+", got '"+(this.terminals_[bt]||bt)+"'":Ct="Parse error on line "+(ze+1)+": Unexpected "+(bt==Oe?"end of input":"'"+(this.terminals_[bt]||bt)+"'"),this.parseError(Ct,{text:Ue.match,token:this.terminals_[bt]||bt,line:Ue.yylineno,loc:vt,expected:_r})}if(ft[0]instanceof Array&&ft.length>1)throw new Error("Parse Error: multiple actions possible at state: "+yt+", token: "+bt);switch(ft[0]){case 1:le.push(bt),ve.push(Ue.yytext),ye.push(Ue.yylloc),le.push(ft[1]),bt=null,wt?(bt=wt,wt=null):(Ke=Ue.yyleng,_e=Ue.yytext,ze=Ue.yylineno,vt=Ue.yylloc,xt>0&&xt--);break;case 2:if(cr=this.productions_[ft[1]][1],bn.$=ve[ve.length-cr],bn._$={first_line:ye[ye.length-(cr||1)].first_line,last_line:ye[ye.length-1].last_line,first_column:ye[ye.length-(cr||1)].first_column,last_column:ye[ye.length-1].last_column},Lt&&(bn._$.range=[ye[ye.length-(cr||1)].range[0],ye[ye.length-1].range[1]]),_t=this.performAction.apply(bn,[_e,Ke,ze,lt.yy,ft[1],ve,ye].concat(et)),typeof _t<"u")return _t;cr&&(le=le.slice(0,-1*cr*2),ve=ve.slice(0,-1*cr),ye=ye.slice(0,-1*cr)),le.push(this.productions_[ft[1]][0]),ve.push(bn.$),ye.push(bn._$),ar=Re[le[le.length-2]][le[le.length-1]],le.push(ar);break;case 3:return!0}}return!0},"parse")},xe=(function(){var he={EOF:1,parseError:o(function(se,le){if(this.yy.parser)this.yy.parser.parseError(se,le);else throw new Error(se)},"parseError"),setInput:o(function(z,se){return this.yy=se||this.yy||{},this._input=z,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var z=this._input[0];this.yytext+=z,this.yyleng++,this.offset++,this.match+=z,this.matched+=z;var se=z.match(/(?:\r\n?|\n).*/g);return se?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),z},"input"),unput:o(function(z){var se=z.length,le=z.split(/(?:\r\n?|\n)/g);this._input=z+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-se),this.offset-=se;var ke=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),le.length-1&&(this.yylineno-=le.length-1);var ve=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:le?(le.length===ke.length?this.yylloc.first_column:0)+ke[ke.length-le.length].length-le[0].length:this.yylloc.first_column-se},this.options.ranges&&(this.yylloc.range=[ve[0],ve[0]+this.yyleng-se]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(z){this.unput(this.match.slice(z))},"less"),pastInput:o(function(){var z=this.matched.substr(0,this.matched.length-this.match.length);return(z.length>20?"...":"")+z.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var z=this.match;return z.length<20&&(z+=this._input.substr(0,20-z.length)),(z.substr(0,20)+(z.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var z=this.pastInput(),se=new Array(z.length+1).join("-");return z+this.upcomingInput()+` -`+se+"^"},"showPosition"),test_match:o(function(z,se){var le,ke,ve;if(this.options.backtrack_lexer&&(ve={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ve.yylloc.range=this.yylloc.range.slice(0))),ke=z[0].match(/(?:\r\n?|\n).*/g),ke&&(this.yylineno+=ke.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ke?ke[ke.length-1].length-ke[ke.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+z[0].length},this.yytext+=z[0],this.match+=z[0],this.matches=z,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(z[0].length),this.matched+=z[0],le=this.performAction.call(this,this.yy,this,se,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),le)return le;if(this._backtrack){for(var ye in ve)this[ye]=ve[ye];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var z,se,le,ke;this._more||(this.yytext="",this.match="");for(var ve=this._currentRules(),ye=0;yese[0].length)){if(se=le,ke=ye,this.options.backtrack_lexer){if(z=this.test_match(le,ve[ye]),z!==!1)return z;if(this._backtrack){se=!1;continue}else return!1}else if(!this.options.flex)break}return se?(z=this.test_match(se,ve[ke]),z!==!1?z:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var se=this.next();return se||this.lex()},"lex"),begin:o(function(se){this.conditionStack.push(se)},"begin"),popState:o(function(){var se=this.conditionStack.length-1;return se>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(se){return se=this.conditionStack.length-1-Math.abs(se||0),se>=0?this.conditionStack[se]:"INITIAL"},"topState"),pushState:o(function(se){this.begin(se)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(se,le,ke,ve){var ye=ve;switch(ke){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:return 65;case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}};return he})();fe.lexer=xe;function Y(){this.yy={}}return o(Y,"Parser"),Y.prototype=fe,fe.Parser=Y,new Y})();GF.parser=GF;z1e=GF});var Ts,V6,V1e=M(()=>{"use strict";yr();Ra();pt();Py();Ts=mh(),V6=class{constructor(){this.classes=new Map;this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{o(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:ur.quadrantChart?.chartWidth||500,chartWidth:ur.quadrantChart?.chartHeight||500,titlePadding:ur.quadrantChart?.titlePadding||10,titleFontSize:ur.quadrantChart?.titleFontSize||20,quadrantPadding:ur.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:ur.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:ur.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:ur.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:ur.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:ur.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:ur.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:ur.quadrantChart?.pointTextPadding||5,pointLabelFontSize:ur.quadrantChart?.pointLabelFontSize||12,pointRadius:ur.quadrantChart?.pointRadius||5,xAxisPosition:ur.quadrantChart?.xAxisPosition||"top",yAxisPosition:ur.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:ur.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:ur.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:Ts.quadrant1Fill,quadrant2Fill:Ts.quadrant2Fill,quadrant3Fill:Ts.quadrant3Fill,quadrant4Fill:Ts.quadrant4Fill,quadrant1TextFill:Ts.quadrant1TextFill,quadrant2TextFill:Ts.quadrant2TextFill,quadrant3TextFill:Ts.quadrant3TextFill,quadrant4TextFill:Ts.quadrant4TextFill,quadrantPointFill:Ts.quadrantPointFill,quadrantPointTextFill:Ts.quadrantPointTextFill,quadrantXAxisTextFill:Ts.quadrantXAxisTextFill,quadrantYAxisTextFill:Ts.quadrantYAxisTextFill,quadrantTitleFill:Ts.quadrantTitleFill,quadrantInternalBorderStrokeFill:Ts.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:Ts.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,X.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){X.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){X.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:e==="top"&&r?a:0,bottom:e==="bottom"&&r?a:0},l=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,u={left:this.config.yAxisPosition==="left"&&n?l:0,right:this.config.yAxisPosition==="right"&&n?l:0},h=this.config.titleFontSize+this.config.titlePadding*2,f={top:i?h:0},d=this.config.quadrantPadding+u.left,p=this.config.quadrantPadding+s.top+f.top,m=this.config.chartWidth-this.config.quadrantPadding*2-u.left-u.right,g=this.config.chartHeight-this.config.quadrantPadding*2-s.top-s.bottom-f.top,y=m/2,v=g/2;return{xAxisSpace:s,yAxisSpace:u,titleSpace:f,quadrantSpace:{quadrantLeft:d,quadrantTop:p,quadrantWidth:m,quadrantHalfWidth:y,quadrantHeight:g,quadrantHalfHeight:v}}}getAxisLabels(e,r,n,i){let{quadrantSpace:a,titleSpace:s}=i,{quadrantHalfHeight:l,quadrantHeight:u,quadrantLeft:h,quadrantHalfWidth:f,quadrantTop:d,quadrantWidth:p}=a,m=!!this.data.xAxisRightText,g=!!this.data.yAxisTopText,y=[];return this.data.xAxisLeftText&&r&&y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&r&&y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+f+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&n&&y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+u-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&n&&y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+l-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),y}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:n,quadrantLeft:i,quadrantHalfWidth:a,quadrantTop:s}=r,l=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s,width:a,height:n,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i,y:s,width:a,height:n,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant4Fill}];for(let u of l)u.text.x=u.x+u.width/2,this.data.points.length===0?(u.text.y=u.y+u.height/2,u.text.horizontalPos="middle"):(u.text.y=u.y+this.config.quadrantTextTopPadding,u.text.horizontalPos="top");return l}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=Tl().domain([0,1]).range([i,s+i]),u=Tl().domain([0,1]).range([n+a,a]);return this.data.points.map(f=>{let d=this.classes.get(f.className);return d&&(f={...d,...f}),{x:l(f.x),y:u(f.y),fill:f.color??this.themeConfig.quadrantPointFill,radius:f.radius??this.config.pointRadius,text:{text:f.text,fill:this.themeConfig.quadrantPointTextFill,x:l(f.x),y:u(f.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:f.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:f.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=e,{quadrantHalfHeight:i,quadrantHeight:a,quadrantLeft:s,quadrantHalfWidth:l,quadrantTop:u,quadrantWidth:h}=n;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u,x2:s+h+r,y2:u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+h,y1:u+r,x2:s+h,y2:u+a-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u+a,x2:s+h+r,y2:u+a},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:u+r,x2:s,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+l,y1:u+r,x2:s+l,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:u+i,x2:s+h-r,y2:u+i}]}getTitle(e){if(e)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),n=this.config.showTitle&&!!this.data.titleText,i=this.data.points.length>0?"bottom":this.config.xAxisPosition,a=this.calculateSpace(i,e,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,e,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function VF(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function U1e(t){return!/^\d+$/.test(t)}function H1e(t){return!/^\d+px$/.test(t)}var s0,q1e=M(()=>{"use strict";s0=class extends Error{static{o(this,"InvalidStyleError")}constructor(e,r,n){super(`value for ${e} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(VF,"validateHexCode");o(U1e,"validateNumber");o(H1e,"validateSizeInPixels")});function sh(t){return sr(t.trim(),lZe)}function cZe(t){Aa.setData({quadrant1Text:sh(t.text)})}function uZe(t){Aa.setData({quadrant2Text:sh(t.text)})}function hZe(t){Aa.setData({quadrant3Text:sh(t.text)})}function fZe(t){Aa.setData({quadrant4Text:sh(t.text)})}function dZe(t){Aa.setData({xAxisLeftText:sh(t.text)})}function pZe(t){Aa.setData({xAxisRightText:sh(t.text)})}function mZe(t){Aa.setData({yAxisTopText:sh(t.text)})}function gZe(t){Aa.setData({yAxisBottomText:sh(t.text)})}function UF(t){let e={};for(let r of t){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(U1e(i))throw new s0(n,i,"number");e.radius=parseInt(i)}else if(n==="color"){if(VF(i))throw new s0(n,i,"hex code");e.color=i}else if(n==="stroke-color"){if(VF(i))throw new s0(n,i,"hex code");e.strokeColor=i}else if(n==="stroke-width"){if(H1e(i))throw new s0(n,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return e}function yZe(t,e,r,n,i){let a=UF(i);Aa.addPoints([{x:r,y:n,text:sh(t.text),className:e,...a}])}function vZe(t,e){Aa.addClass(t,UF(e))}function xZe(t){Aa.setConfig({chartWidth:t})}function bZe(t){Aa.setConfig({chartHeight:t})}function TZe(){let t=ge(),{themeVariables:e,quadrantChart:r}=t;return r&&Aa.setConfig(r),Aa.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),Aa.setData({titleText:Pr()}),Aa.build()}var lZe,Aa,wZe,W1e,Y1e=M(()=>{"use strict";Xt();gr();ci();V1e();q1e();lZe=ge();o(sh,"textSanitizer");Aa=new V6;o(cZe,"setQuadrant1Text");o(uZe,"setQuadrant2Text");o(hZe,"setQuadrant3Text");o(fZe,"setQuadrant4Text");o(dZe,"setXAxisLeftText");o(pZe,"setXAxisRightText");o(mZe,"setYAxisTopText");o(gZe,"setYAxisBottomText");o(UF,"parseStyles");o(yZe,"addPoint");o(vZe,"addClass");o(xZe,"setWidth");o(bZe,"setHeight");o(TZe,"getQuadrantData");wZe=o(function(){Aa.clear(),Sr()},"clear"),W1e={setWidth:xZe,setHeight:bZe,setQuadrant1Text:cZe,setQuadrant2Text:uZe,setQuadrant3Text:hZe,setQuadrant4Text:fZe,setXAxisLeftText:dZe,setXAxisRightText:pZe,setYAxisTopText:mZe,setYAxisBottomText:gZe,parseStyles:UF,addPoint:yZe,addClass:vZe,getQuadrantData:TZe,clear:wZe,setAccTitle:Rr,getAccTitle:Mr,setDiagramTitle:$r,getDiagramTitle:Pr,getAccDescription:Or,setAccDescription:Ir}});var kZe,X1e,j1e=M(()=>{"use strict";yr();Xt();pt();Ei();kZe=o((t,e,r,n)=>{function i(A){return A==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(A){return A==="left"?"start":"middle"}o(a,"getTextAnchor");function s(A){return`translate(${A.x}, ${A.y}) rotate(${A.rotation||0})`}o(s,"getTransformation");let l=ge();X.debug(`Rendering quadrant chart -`+t);let u=l.securityLevel,h;u==="sandbox"&&(h=qe("#i"+e));let d=(u==="sandbox"?qe(h.nodes()[0].contentDocument.body):qe("body")).select(`[id="${e}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;mn(d,g,m,l.quadrantChart?.useMaxWidth??!0),d.attr("viewBox","0 0 "+m+" "+g),n.db.setHeight(g),n.db.setWidth(m);let y=n.db.getQuadrantData(),v=p.append("g").attr("class","quadrants"),x=p.append("g").attr("class","border"),b=p.append("g").attr("class","data-points"),T=p.append("g").attr("class","labels"),S=p.append("g").attr("class","title");y.title&&S.append("text").attr("x",0).attr("y",0).attr("fill",y.title.fill).attr("font-size",y.title.fontSize).attr("dominant-baseline",i(y.title.horizontalPos)).attr("text-anchor",a(y.title.verticalPos)).attr("transform",s(y.title)).text(y.title.text),y.borderLines&&x.selectAll("line").data(y.borderLines).enter().append("line").attr("x1",A=>A.x1).attr("y1",A=>A.y1).attr("x2",A=>A.x2).attr("y2",A=>A.y2).style("stroke",A=>A.strokeFill).style("stroke-width",A=>A.strokeWidth);let w=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");w.append("rect").attr("x",A=>A.x).attr("y",A=>A.y).attr("width",A=>A.width).attr("height",A=>A.height).attr("fill",A=>A.fill),w.append("text").attr("x",0).attr("y",0).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text)).text(A=>A.text.text),T.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(A=>A.text).attr("fill",A=>A.fill).attr("font-size",A=>A.fontSize).attr("dominant-baseline",A=>i(A.horizontalPos)).attr("text-anchor",A=>a(A.verticalPos)).attr("transform",A=>s(A));let C=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");C.append("circle").attr("cx",A=>A.x).attr("cy",A=>A.y).attr("r",A=>A.radius).attr("fill",A=>A.fill).attr("stroke",A=>A.strokeColor).attr("stroke-width",A=>A.strokeWidth),C.append("text").attr("x",0).attr("y",0).text(A=>A.text.text).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text))},"draw"),X1e={draw:kZe}});var K1e={};dr(K1e,{diagram:()=>EZe});var EZe,Q1e=M(()=>{"use strict";G1e();Y1e();j1e();EZe={parser:z1e,db:W1e,renderer:X1e,styles:o(()=>"","styles")}});var HF,eye,tye=M(()=>{"use strict";HF=(function(){var t=o(function(O,N,P,B){for(P=P||{},B=O.length;B--;P[O[B]]=N);return P},"o"),e=[1,10,12,14,16,18,19,21,23],r=[2,6],n=[1,3],i=[1,5],a=[1,6],s=[1,7],l=[1,5,10,12,14,16,18,19,21,23,34,35,36],u=[1,25],h=[1,26],f=[1,28],d=[1,29],p=[1,30],m=[1,31],g=[1,32],y=[1,33],v=[1,34],x=[1,35],b=[1,36],T=[1,37],S=[1,43],w=[1,42],k=[1,47],C=[1,50],A=[1,10,12,14,16,18,19,21,23,34,35,36],L=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],I=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],R=[1,64],E={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:o(function(N,P,B,F,V,$,U){var j=$.length-1;switch(V){case 5:F.setOrientation($[j]);break;case 9:F.setDiagramTitle($[j].text.trim());break;case 12:F.setLineData({text:"",type:"text"},$[j]);break;case 13:F.setLineData($[j-1],$[j]);break;case 14:F.setBarData({text:"",type:"text"},$[j]);break;case 15:F.setBarData($[j-1],$[j]);break;case 16:this.$=$[j].trim(),F.setAccTitle(this.$);break;case 17:case 18:this.$=$[j].trim(),F.setAccDescription(this.$);break;case 19:this.$=$[j-1];break;case 20:this.$=[Number($[j-2]),...$[j]];break;case 21:this.$=[Number($[j])];break;case 22:F.setXAxisTitle($[j]);break;case 23:F.setXAxisTitle($[j-1]);break;case 24:F.setXAxisTitle({type:"text",text:""});break;case 25:F.setXAxisBand($[j]);break;case 26:F.setXAxisRangeData(Number($[j-2]),Number($[j]));break;case 27:this.$=$[j-1];break;case 28:this.$=[$[j-2],...$[j]];break;case 29:this.$=[$[j]];break;case 30:F.setYAxisTitle($[j]);break;case 31:F.setYAxisTitle($[j-1]);break;case 32:F.setYAxisTitle({type:"text",text:""});break;case 33:F.setYAxisRangeData(Number($[j-2]),Number($[j]));break;case 37:this.$={text:$[j],type:"text"};break;case 38:this.$={text:$[j],type:"text"};break;case 39:this.$={text:$[j],type:"markdown"};break;case 40:this.$=$[j];break;case 41:this.$=$[j-1]+""+$[j];break}},"anonymous"),table:[t(e,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},t(e,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),t(e,r,{4:2,7:4,6:9,3:10,5:n,8:[1,11],34:i,35:a,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(l,[2,34]),t(l,[2,35]),t(l,[2,36]),{1:[2,1]},t(e,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},t(l,[2,5]),t(e,[2,7],{4:22,34:i,35:a,36:s}),{11:23,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:39,13:38,24:S,27:w,29:40,30:41,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:45,15:44,27:k,33:46,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:49,17:48,24:C,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:52,17:51,24:C,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{20:[1,53]},{22:[1,54]},t(A,[2,18]),{1:[2,2]},t(A,[2,8]),t(A,[2,9]),t(L,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T}),t(L,[2,38]),t(L,[2,39]),t(I,[2,40]),t(I,[2,42]),t(I,[2,43]),t(I,[2,44]),t(I,[2,45]),t(I,[2,46]),t(I,[2,47]),t(I,[2,48]),t(I,[2,49]),t(I,[2,50]),t(I,[2,51]),t(A,[2,10]),t(A,[2,22],{30:41,29:56,24:S,27:w}),t(A,[2,24]),t(A,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},t(A,[2,11]),t(A,[2,30],{33:60,27:k}),t(A,[2,32]),{31:[1,61]},t(A,[2,12]),{17:62,24:C},{25:63,27:R},t(A,[2,14]),{17:65,24:C},t(A,[2,16]),t(A,[2,17]),t(I,[2,41]),t(A,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(A,[2,31]),{27:[1,69]},t(A,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(A,[2,15]),t(A,[2,26]),t(A,[2,27]),{11:59,32:72,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},t(A,[2,33]),t(A,[2,19]),{25:73,27:R},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:o(function(N,P){if(P.recoverable)this.trace(N);else{var B=new Error(N);throw B.hash=P,B}},"parseError"),parse:o(function(N){var P=this,B=[0],F=[],V=[null],$=[],U=this.table,j="",ee=0,q=0,oe=0,Q=2,ue=1,te=$.slice.call(arguments,1),re=Object.create(this.lexer),J={yy:{}};for(var K in this.yy)Object.prototype.hasOwnProperty.call(this.yy,K)&&(J.yy[K]=this.yy[K]);re.setInput(N,J.yy),J.yy.lexer=re,J.yy.parser=this,typeof re.yylloc>"u"&&(re.yylloc={});var ae=re.yylloc;$.push(ae);var Z=re.options&&re.options.ranges;typeof J.yy.parseError=="function"?this.parseError=J.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function de(fe){B.length=B.length-2*fe,V.length=V.length-fe,$.length=$.length-fe}o(de,"popStack");function ne(){var fe;return fe=F.pop()||re.lex()||ue,typeof fe!="number"&&(fe instanceof Array&&(F=fe,fe=F.pop()),fe=P.symbols_[fe]||fe),fe}o(ne,"lex");for(var Te,W,Ve,pe,Be,Ye,He={},Le,Ie,Ne,Ce;;){if(Ve=B[B.length-1],this.defaultActions[Ve]?pe=this.defaultActions[Ve]:((Te===null||typeof Te>"u")&&(Te=ne()),pe=U[Ve]&&U[Ve][Te]),typeof pe>"u"||!pe.length||!pe[0]){var Fe="";Ce=[];for(Le in U[Ve])this.terminals_[Le]&&Le>Q&&Ce.push("'"+this.terminals_[Le]+"'");re.showPosition?Fe="Parse error on line "+(ee+1)+`: -`+re.showPosition()+` -Expecting `+Ce.join(", ")+", got '"+(this.terminals_[Te]||Te)+"'":Fe="Parse error on line "+(ee+1)+": Unexpected "+(Te==ue?"end of input":"'"+(this.terminals_[Te]||Te)+"'"),this.parseError(Fe,{text:re.match,token:this.terminals_[Te]||Te,line:re.yylineno,loc:ae,expected:Ce})}if(pe[0]instanceof Array&&pe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ve+", token: "+Te);switch(pe[0]){case 1:B.push(Te),V.push(re.yytext),$.push(re.yylloc),B.push(pe[1]),Te=null,W?(Te=W,W=null):(q=re.yyleng,j=re.yytext,ee=re.yylineno,ae=re.yylloc,oe>0&&oe--);break;case 2:if(Ie=this.productions_[pe[1]][1],He.$=V[V.length-Ie],He._$={first_line:$[$.length-(Ie||1)].first_line,last_line:$[$.length-1].last_line,first_column:$[$.length-(Ie||1)].first_column,last_column:$[$.length-1].last_column},Z&&(He._$.range=[$[$.length-(Ie||1)].range[0],$[$.length-1].range[1]]),Ye=this.performAction.apply(He,[j,q,ee,J.yy,pe[1],V,$].concat(te)),typeof Ye<"u")return Ye;Ie&&(B=B.slice(0,-1*Ie*2),V=V.slice(0,-1*Ie),$=$.slice(0,-1*Ie)),B.push(this.productions_[pe[1]][0]),V.push(He.$),$.push(He._$),Ne=U[B[B.length-2]][B[B.length-1]],B.push(Ne);break;case 3:return!0}}return!0},"parse")},_=(function(){var O={EOF:1,parseError:o(function(P,B){if(this.yy.parser)this.yy.parser.parseError(P,B);else throw new Error(P)},"parseError"),setInput:o(function(N,P){return this.yy=P||this.yy||{},this._input=N,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var N=this._input[0];this.yytext+=N,this.yyleng++,this.offset++,this.match+=N,this.matched+=N;var P=N.match(/(?:\r\n?|\n).*/g);return P?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),N},"input"),unput:o(function(N){var P=N.length,B=N.split(/(?:\r\n?|\n)/g);this._input=N+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-P),this.offset-=P;var F=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),B.length-1&&(this.yylineno-=B.length-1);var V=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:B?(B.length===F.length?this.yylloc.first_column:0)+F[F.length-B.length].length-B[0].length:this.yylloc.first_column-P},this.options.ranges&&(this.yylloc.range=[V[0],V[0]+this.yyleng-P]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(N){this.unput(this.match.slice(N))},"less"),pastInput:o(function(){var N=this.matched.substr(0,this.matched.length-this.match.length);return(N.length>20?"...":"")+N.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var N=this.match;return N.length<20&&(N+=this._input.substr(0,20-N.length)),(N.substr(0,20)+(N.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var N=this.pastInput(),P=new Array(N.length+1).join("-");return N+this.upcomingInput()+` -`+P+"^"},"showPosition"),test_match:o(function(N,P){var B,F,V;if(this.options.backtrack_lexer&&(V={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(V.yylloc.range=this.yylloc.range.slice(0))),F=N[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+N[0].length},this.yytext+=N[0],this.match+=N[0],this.matches=N,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(N[0].length),this.matched+=N[0],B=this.performAction.call(this,this.yy,this,P,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),B)return B;if(this._backtrack){for(var $ in V)this[$]=V[$];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var N,P,B,F;this._more||(this.yytext="",this.match="");for(var V=this._currentRules(),$=0;$P[0].length)){if(P=B,F=$,this.options.backtrack_lexer){if(N=this.test_match(B,V[$]),N!==!1)return N;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(N=this.test_match(P,V[F]),N!==!1?N:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var P=this.next();return P||this.lex()},"lex"),begin:o(function(P){this.conditionStack.push(P)},"begin"),popState:o(function(){var P=this.conditionStack.length-1;return P>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(P){return P=this.conditionStack.length-1-Math.abs(P||0),P>=0?this.conditionStack[P]:"INITIAL"},"topState"),pushState:o(function(P){this.begin(P)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(P,B,F,V){var $=V;switch(F){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 31;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 27;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 43;case 33:return"COLON";case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return O})();E.lexer=_;function D(){this.yy={}}return o(D,"Parser"),D.prototype=E,E.Parser=D,new D})();HF.parser=HF;eye=HF});function qF(t){return t.type==="bar"}function U6(t){return t.type==="band"}function ny(t){return t.type==="linear"}var H6=M(()=>{"use strict";o(qF,"isBarPlot");o(U6,"isBandAxisData");o(ny,"isLinearAxisData")});var iy,WF=M(()=>{"use strict";zo();iy=class{constructor(e){this.parentGroup=e}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(e,r){if(!this.parentGroup)return{width:e.reduce((a,s)=>Math.max(s.length,a),0)*r,height:r};let n={width:0,height:0},i=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",r);for(let a of e){let s=XZ(i,1,a),l=s?s.width:a.length*r,u=s?s.height:r;n.width=Math.max(n.width,l),n.height=Math.max(n.height,u)}return i.remove(),n}}});var ay,YF=M(()=>{"use strict";ay=class{constructor(e,r,n,i){this.axisConfig=e;this.title=r;this.textDimensionCalculator=n;this.axisThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0};this.axisPosition="left";this.showTitle=!1;this.showLabel=!1;this.showTick=!1;this.showAxisLine=!1;this.outerPadding=0;this.titleTextHeight=0;this.labelTextHeight=0;this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{o(this,"BaseAxis")}setRange(e){this.range=e,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let r=e.height;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.width;this.outerPadding=Math.min(n.width/2,i);let a=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-r}calculateSpaceIfDrawnVertical(e){let r=e.width;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.height;this.outerPadding=Math.min(n.height/2,i);let a=n.width+this.axisConfig.labelPadding*2;a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width-r,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${r},${this.boundingRect.y} L ${r},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(r),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let r=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${r},${this.getScaleValue(n)} L ${r-this.axisConfig.tickLength},${this.getScaleValue(n)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r} L ${this.getScaleValue(n)},${r+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y;e.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(n)},${r+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}});var q6,rye=M(()=>{"use strict";yr();pt();YF();q6=class extends ay{static{o(this,"BandAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.categories=n,this.scale=q0().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=q0().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),X.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}}});var W6,nye=M(()=>{"use strict";yr();YF();W6=class extends ay{static{o(this,"LinearAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.domain=n,this.scale=Tl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition==="left"&&e.reverse(),this.scale=Tl().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}}});function XF(t,e,r,n){let i=new iy(n);return U6(t)?new q6(e,r,t.categories,t.title,i):new W6(e,r,[t.min,t.max],t.title,i)}var iye=M(()=>{"use strict";H6();WF();rye();nye();o(XF,"getAxis")});function aye(t,e,r,n){let i=new iy(n);return new jF(i,t,e,r)}var jF,sye=M(()=>{"use strict";WF();jF=class{constructor(e,r,n,i){this.textDimensionCalculator=e;this.chartConfig=r;this.chartData=n;this.chartThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{o(this,"ChartTitle")}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,e.width),i=r.height+2*this.chartConfig.titlePadding;return r.width<=n&&r.height<=i&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=i,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),e}};o(aye,"getChartTitleComponent")});var Y6,oye=M(()=>{"use strict";yr();Y6=class{constructor(e,r,n,i,a){this.plotData=e;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let e=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=Cl().y(n=>n[0]).x(n=>n[1])(e):r=Cl().x(n=>n[0]).y(n=>n[1])(e),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var X6,lye=M(()=>{"use strict";X6=class{constructor(e,r,n,i,a,s){this.barData=e;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let e=this.barData.data.map(a=>[this.xAxis.getScaleValue(a[0]),this.yAxis.getScaleValue(a[1])]),n=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),i=n/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:this.boundingRect.x,y:a[0]-i,height:n,width:a[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:a[0]-i,y:a[1],width:n,height:this.boundingRect.y+this.boundingRect.height-a[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}});function cye(t,e,r){return new KF(t,e,r)}var KF,uye=M(()=>{"use strict";oye();lye();KF=class{constructor(e,r,n){this.chartConfig=e;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(e,r){this.xAxis=e,this.yAxis=r}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let e=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new Y6(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break;case"bar":{let i=new X6(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break}return e}};o(cye,"getPlotComponent")});var j6,hye=M(()=>{"use strict";iye();sye();uye();H6();j6=class{constructor(e,r,n,i){this.chartConfig=e;this.chartData=r;this.componentStore={title:aye(e,r,n,i),plot:cye(e,r,n),xAxis:XF(r.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:XF(r.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});e-=l.width,r-=l.height,l=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),i=l.height,r-=l.height,this.componentStore.xAxis.setAxisPosition("bottom"),l=this.componentStore.xAxis.calculateSpace({width:e,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:e,height:r}),n=l.width,e-=l.width,e>0&&(a+=e,e=0),r>0&&(s+=r,r=0),this.componentStore.plot.calculateSpace({width:a,height:s}),this.componentStore.plot.setBoundingBoxXY({x:n,y:i}),this.componentStore.xAxis.setRange([n,n+a]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:i+s}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(u=>qF(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});e-=u.width,r-=u.height,u=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),n=u.height,r-=u.height,this.componentStore.xAxis.setAxisPosition("left"),u=this.componentStore.xAxis.calculateSpace({width:e,height:r}),e-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:e,height:r}),r-=u.height,a=n+u.height,e>0&&(s+=e,e=0),r>0&&(l+=r,r=0),this.componentStore.plot.calculateSpace({width:s,height:l}),this.componentStore.plot.setBoundingBoxXY({x:i,y:a}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:i,y:n}),this.componentStore.xAxis.setRange([a,a+l]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(h=>qF(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))e.push(...r.getDrawableElements());return e}}});var K6,fye=M(()=>{"use strict";hye();K6=class{static{o(this,"XYChartBuilder")}static build(e,r,n,i){return new j6(e,r,n,i).getDrawableElement()}}});function pye(){let t=mh(),e=Qt();return Vn(t.xyChart,e.themeVariables.xyChart)}function mye(){let t=Qt();return Vn(ur.xyChart,t.xyChart)}function gye(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function JF(t){let e=Qt();return sr(t.trim(),e)}function _Ze(t){dye=t}function DZe(t){t==="horizontal"?x4.chartOrientation="horizontal":x4.chartOrientation="vertical"}function LZe(t){pn.xAxis.title=JF(t.text)}function yye(t,e){pn.xAxis={type:"linear",title:pn.xAxis.title,min:t,max:e},Q6=!0}function RZe(t){pn.xAxis={type:"band",title:pn.xAxis.title,categories:t.map(e=>JF(e.text))},Q6=!0}function NZe(t){pn.yAxis.title=JF(t.text)}function MZe(t,e){pn.yAxis={type:"linear",title:pn.yAxis.title,min:t,max:e},ZF=!0}function IZe(t){let e=Math.min(...t),r=Math.max(...t),n=ny(pn.yAxis)?pn.yAxis.min:1/0,i=ny(pn.yAxis)?pn.yAxis.max:-1/0;pn.yAxis={type:"linear",title:pn.yAxis.title,min:Math.min(n,e),max:Math.max(i,r)}}function vye(t){let e=[];if(t.length===0)return e;if(!Q6){let r=ny(pn.xAxis)?pn.xAxis.min:1/0,n=ny(pn.xAxis)?pn.xAxis.max:-1/0;yye(Math.min(r,1),Math.max(n,t.length))}if(ZF||IZe(t),U6(pn.xAxis)&&(e=pn.xAxis.categories.map((r,n)=>[r,t[n]])),ny(pn.xAxis)){let r=pn.xAxis.min,n=pn.xAxis.max,i=(n-r)/(t.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);e=a.map((s,l)=>[s,t[l]])}return e}function xye(t){return QF[t===0?0:t%QF.length]}function OZe(t,e){let r=vye(e);pn.plots.push({type:"line",strokeFill:xye(v4),strokeWidth:2,data:r}),v4++}function PZe(t,e){let r=vye(e);pn.plots.push({type:"bar",fill:xye(v4),data:r}),v4++}function BZe(){if(pn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return pn.title=Pr(),K6.build(x4,pn,b4,dye)}function FZe(){return b4}function $Ze(){return x4}function zZe(){return pn}var v4,dye,x4,b4,pn,QF,Q6,ZF,GZe,bye,Tye=M(()=>{"use strict";qn();Ra();Py();tr();gr();ci();fye();H6();v4=0,x4=mye(),b4=pye(),pn=gye(),QF=b4.plotColorPalette.split(",").map(t=>t.trim()),Q6=!1,ZF=!1;o(pye,"getChartDefaultThemeConfig");o(mye,"getChartDefaultConfig");o(gye,"getChartDefaultData");o(JF,"textSanitizer");o(_Ze,"setTmpSVGG");o(DZe,"setOrientation");o(LZe,"setXAxisTitle");o(yye,"setXAxisRangeData");o(RZe,"setXAxisBand");o(NZe,"setYAxisTitle");o(MZe,"setYAxisRangeData");o(IZe,"setYAxisRangeFromPlotData");o(vye,"transformDataWithoutCategory");o(xye,"getPlotColorFromPalette");o(OZe,"setLineData");o(PZe,"setBarData");o(BZe,"getDrawableElem");o(FZe,"getChartThemeConfig");o($Ze,"getChartConfig");o(zZe,"getXYChartData");GZe=o(function(){Sr(),v4=0,x4=mye(),pn=gye(),b4=pye(),QF=b4.plotColorPalette.split(",").map(t=>t.trim()),Q6=!1,ZF=!1},"clear"),bye={getDrawableElem:BZe,clear:GZe,setAccTitle:Rr,getAccTitle:Mr,setDiagramTitle:$r,getDiagramTitle:Pr,getAccDescription:Or,setAccDescription:Ir,setOrientation:DZe,setXAxisTitle:LZe,setXAxisRangeData:yye,setXAxisBand:RZe,setYAxisTitle:NZe,setYAxisRangeData:MZe,setLineData:OZe,setBarData:PZe,setTmpSVGG:_Ze,getChartThemeConfig:FZe,getChartConfig:$Ze,getXYChartData:zZe}});var VZe,wye,kye=M(()=>{"use strict";pt();tu();Ei();VZe=o((t,e,r,n)=>{let i=n.db,a=i.getChartThemeConfig(),s=i.getChartConfig(),l=i.getXYChartData().plots[0].data.map(T=>T[1]);function u(T){return T==="top"?"text-before-edge":"middle"}o(u,"getDominantBaseLine");function h(T){return T==="left"?"start":T==="right"?"end":"middle"}o(h,"getTextAnchor");function f(T){return`translate(${T.x}, ${T.y}) rotate(${T.rotation||0})`}o(f,"getTextTransformation"),X.debug(`Rendering xychart chart -`+t);let d=aa(e),p=d.append("g").attr("class","main"),m=p.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");mn(d,s.height,s.width,!0),d.attr("viewBox",`0 0 ${s.width} ${s.height}`),m.attr("fill",a.backgroundColor),i.setTmpSVGG(d.append("g").attr("class","mermaid-tmp-group"));let g=i.getDrawableElem(),y={};function v(T){let S=p,w="";for(let[k]of T.entries()){let C=p;k>0&&y[w]&&(C=y[w]),w+=T[k],S=y[w],S||(S=y[w]=C.append("g").attr("class",T[k]))}return S}o(v,"getGroup");for(let T of g){if(T.data.length===0)continue;let S=v(T.groupTexts);switch(T.type){case"rect":if(S.selectAll("rect").data(T.data).enter().append("rect").attr("x",w=>w.x).attr("y",w=>w.y).attr("width",w=>w.width).attr("height",w=>w.height).attr("fill",w=>w.fill).attr("stroke",w=>w.strokeFill).attr("stroke-width",w=>w.strokeWidth),s.showDataLabel)if(s.chartOrientation==="horizontal"){let C=function(I,R){let{data:E,label:_}=I;return R*_.length*.7<=E.width-10};var x=C;o(C,"fitsHorizontally");let w=.7,k=T.data.map((I,R)=>({data:I,label:l[R].toString()})).filter(I=>I.data.width>0&&I.data.height>0),A=k.map(I=>{let{data:R}=I,E=R.height*.7;for(;!C(I,E)&&E>0;)E-=1;return E}),L=Math.floor(Math.min(...A));S.selectAll("text").data(k).enter().append("text").attr("x",I=>I.data.x+I.data.width-10).attr("y",I=>I.data.y+I.data.height/2).attr("text-anchor","end").attr("dominant-baseline","middle").attr("fill","black").attr("font-size",`${L}px`).text(I=>I.label)}else{let C=function(I,R,E){let{data:_,label:D}=I,N=R*D.length*.7,P=_.x+_.width/2,B=P-N/2,F=P+N/2,V=B>=_.x&&F<=_.x+_.width,$=_.y+E+R<=_.y+_.height;return V&&$};var b=C;o(C,"fitsInBar");let w=10,k=T.data.map((I,R)=>({data:I,label:l[R].toString()})).filter(I=>I.data.width>0&&I.data.height>0),A=k.map(I=>{let{data:R,label:E}=I,_=R.width/(E.length*.7);for(;!C(I,_,10)&&_>0;)_-=1;return _}),L=Math.floor(Math.min(...A));S.selectAll("text").data(k).enter().append("text").attr("x",I=>I.data.x+I.data.width/2).attr("y",I=>I.data.y+10).attr("text-anchor","middle").attr("dominant-baseline","hanging").attr("fill","black").attr("font-size",`${L}px`).text(I=>I.label)}break;case"text":S.selectAll("text").data(T.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",w=>w.fill).attr("font-size",w=>w.fontSize).attr("dominant-baseline",w=>u(w.verticalPos)).attr("text-anchor",w=>h(w.horizontalPos)).attr("transform",w=>f(w)).text(w=>w.text);break;case"path":S.selectAll("path").data(T.data).enter().append("path").attr("d",w=>w.path).attr("fill",w=>w.fill?w.fill:"none").attr("stroke",w=>w.strokeFill).attr("stroke-width",w=>w.strokeWidth);break}}},"draw"),wye={draw:VZe}});var Eye={};dr(Eye,{diagram:()=>UZe});var UZe,Sye=M(()=>{"use strict";tye();Tye();kye();UZe={parser:eye,db:bye,renderer:wye}});var e$,_ye,Dye=M(()=>{"use strict";e$=(function(){var t=o(function(fe,xe,Y,he){for(Y=Y||{},he=fe.length;he--;Y[fe[he]]=xe);return Y},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],s=[1,22],l=[2,7],u=[1,26],h=[1,27],f=[1,28],d=[1,29],p=[1,33],m=[1,34],g=[1,35],y=[1,36],v=[1,37],x=[1,38],b=[1,24],T=[1,31],S=[1,32],w=[1,30],k=[1,39],C=[1,40],A=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],L=[1,61],I=[89,90],R=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],E=[27,29],_=[1,70],D=[1,71],O=[1,72],N=[1,73],P=[1,74],B=[1,75],F=[1,76],V=[1,83],$=[1,80],U=[1,84],j=[1,85],ee=[1,86],q=[1,87],oe=[1,88],Q=[1,89],ue=[1,90],te=[1,91],re=[1,92],J=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],K=[63,64],ae=[1,101],Z=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],de=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],ne=[1,110],Te=[1,106],W=[1,107],Ve=[1,108],pe=[1,109],Be=[1,111],Ye=[1,116],He=[1,117],Le=[1,114],Ie=[1,115],Ne={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:o(function(xe,Y,he,z,se,le,ke){var ve=le.length-1;switch(se){case 4:this.$=le[ve].trim(),z.setAccTitle(this.$);break;case 5:case 6:this.$=le[ve].trim(),z.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:z.setDirection("TB");break;case 18:z.setDirection("BT");break;case 19:z.setDirection("RL");break;case 20:z.setDirection("LR");break;case 21:z.addRequirement(le[ve-3],le[ve-4]);break;case 22:z.addRequirement(le[ve-5],le[ve-6]),z.setClass([le[ve-5]],le[ve-3]);break;case 23:z.setNewReqId(le[ve-2]);break;case 24:z.setNewReqText(le[ve-2]);break;case 25:z.setNewReqRisk(le[ve-2]);break;case 26:z.setNewReqVerifyMethod(le[ve-2]);break;case 29:this.$=z.RequirementType.REQUIREMENT;break;case 30:this.$=z.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=z.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=z.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=z.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=z.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=z.RiskLevel.LOW_RISK;break;case 36:this.$=z.RiskLevel.MED_RISK;break;case 37:this.$=z.RiskLevel.HIGH_RISK;break;case 38:this.$=z.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=z.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=z.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=z.VerifyType.VERIFY_TEST;break;case 42:z.addElement(le[ve-3]);break;case 43:z.addElement(le[ve-5]),z.setClass([le[ve-5]],le[ve-3]);break;case 44:z.setNewElementType(le[ve-2]);break;case 45:z.setNewElementDocRef(le[ve-2]);break;case 48:z.addRelationship(le[ve-2],le[ve],le[ve-4]);break;case 49:z.addRelationship(le[ve-2],le[ve-4],le[ve]);break;case 50:this.$=z.Relationships.CONTAINS;break;case 51:this.$=z.Relationships.COPIES;break;case 52:this.$=z.Relationships.DERIVES;break;case 53:this.$=z.Relationships.SATISFIES;break;case 54:this.$=z.Relationships.VERIFIES;break;case 55:this.$=z.Relationships.REFINES;break;case 56:this.$=z.Relationships.TRACES;break;case 57:this.$=le[ve-2],z.defineClass(le[ve-1],le[ve]);break;case 58:z.setClass(le[ve-1],le[ve]);break;case 59:z.setClass([le[ve-2]],le[ve]);break;case 60:case 62:this.$=[le[ve]];break;case 61:case 63:this.$=le[ve-2].concat([le[ve]]);break;case 64:this.$=le[ve-2],z.setCssStyle(le[ve-1],le[ve]);break;case 65:this.$=[le[ve]];break;case 66:le[ve-2].push(le[ve]),this.$=le[ve-2];break;case 68:this.$=le[ve-1]+le[ve];break}},"anonymous"),table:[{3:1,4:2,6:e,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(a,[2,6]),{3:12,4:2,6:e,9:r,11:n,13:i},{1:[2,2]},{4:17,5:s,7:13,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},t(a,[2,4]),t(a,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:s,7:42,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:43,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:44,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:45,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:46,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:47,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:48,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:49,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{4:17,5:s,7:50,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:S,77:w,89:k,90:C},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},t(A,[2,17]),t(A,[2,18]),t(A,[2,19]),t(A,[2,20]),{30:60,33:62,75:L,89:k,90:C},{30:63,33:62,75:L,89:k,90:C},{30:64,33:62,75:L,89:k,90:C},t(I,[2,29]),t(I,[2,30]),t(I,[2,31]),t(I,[2,32]),t(I,[2,33]),t(I,[2,34]),t(R,[2,81]),t(R,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},t(E,[2,79]),t(E,[2,80]),{27:[1,67],29:[1,68]},t(E,[2,85]),t(E,[2,86]),{62:69,65:_,66:D,67:O,68:N,69:P,70:B,71:F},{62:77,65:_,66:D,67:O,68:N,69:P,70:B,71:F},{30:78,33:62,75:L,89:k,90:C},{73:79,75:V,76:$,78:81,79:82,80:U,81:j,82:ee,83:q,84:oe,85:Q,86:ue,87:te,88:re},t(J,[2,60]),t(J,[2,62]),{73:93,75:V,76:$,78:81,79:82,80:U,81:j,82:ee,83:q,84:oe,85:Q,86:ue,87:te,88:re},{30:94,33:62,75:L,76:$,89:k,90:C},{5:[1,95]},{30:96,33:62,75:L,89:k,90:C},{5:[1,97]},{30:98,33:62,75:L,89:k,90:C},{63:[1,99]},t(K,[2,50]),t(K,[2,51]),t(K,[2,52]),t(K,[2,53]),t(K,[2,54]),t(K,[2,55]),t(K,[2,56]),{64:[1,100]},t(A,[2,59],{76:$}),t(A,[2,64],{76:ae}),{33:103,75:[1,102],89:k,90:C},t(Z,[2,65],{79:104,75:V,80:U,81:j,82:ee,83:q,84:oe,85:Q,86:ue,87:te,88:re}),t(de,[2,67]),t(de,[2,69]),t(de,[2,70]),t(de,[2,71]),t(de,[2,72]),t(de,[2,73]),t(de,[2,74]),t(de,[2,75]),t(de,[2,76]),t(de,[2,77]),t(de,[2,78]),t(A,[2,57],{76:ae}),t(A,[2,58],{76:$}),{5:ne,28:105,31:Te,34:W,36:Ve,38:pe,40:Be},{27:[1,112],76:$},{5:Ye,40:He,56:113,57:Le,59:Ie},{27:[1,118],76:$},{33:119,89:k,90:C},{33:120,89:k,90:C},{75:V,78:121,79:82,80:U,81:j,82:ee,83:q,84:oe,85:Q,86:ue,87:te,88:re},t(J,[2,61]),t(J,[2,63]),t(de,[2,68]),t(A,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:ne,28:126,31:Te,34:W,36:Ve,38:pe,40:Be},t(A,[2,28]),{5:[1,127]},t(A,[2,42]),{32:[1,128]},{32:[1,129]},{5:Ye,40:He,56:130,57:Le,59:Ie},t(A,[2,47]),{5:[1,131]},t(A,[2,48]),t(A,[2,49]),t(Z,[2,66],{79:104,75:V,80:U,81:j,82:ee,83:q,84:oe,85:Q,86:ue,87:te,88:re}),{33:132,89:k,90:C},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},t(A,[2,27]),{5:ne,28:145,31:Te,34:W,36:Ve,38:pe,40:Be},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},t(A,[2,46]),{5:Ye,40:He,56:152,57:Le,59:Ie},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},t(A,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},t(A,[2,43]),{5:ne,28:159,31:Te,34:W,36:Ve,38:pe,40:Be},{5:ne,28:160,31:Te,34:W,36:Ve,38:pe,40:Be},{5:ne,28:161,31:Te,34:W,36:Ve,38:pe,40:Be},{5:ne,28:162,31:Te,34:W,36:Ve,38:pe,40:Be},{5:Ye,40:He,56:163,57:Le,59:Ie},{5:Ye,40:He,56:164,57:Le,59:Ie},t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),t(A,[2,26]),t(A,[2,44]),t(A,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:o(function(xe,Y){if(Y.recoverable)this.trace(xe);else{var he=new Error(xe);throw he.hash=Y,he}},"parseError"),parse:o(function(xe){var Y=this,he=[0],z=[],se=[null],le=[],ke=this.table,ve="",ye=0,Re=0,_e=0,ze=2,Ke=1,xt=le.slice.call(arguments,1),We=Object.create(this.lexer),Oe={yy:{}};for(var et in this.yy)Object.prototype.hasOwnProperty.call(this.yy,et)&&(Oe.yy[et]=this.yy[et]);We.setInput(xe,Oe.yy),Oe.yy.lexer=We,Oe.yy.parser=this,typeof We.yylloc>"u"&&(We.yylloc={});var Ue=We.yylloc;le.push(Ue);var lt=We.options&&We.options.ranges;typeof Oe.yy.parseError=="function"?this.parseError=Oe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Gt(ar){he.length=he.length-2*ar,se.length=se.length-ar,le.length=le.length-ar}o(Gt,"popStack");function vt(){var ar;return ar=z.pop()||We.lex()||Ke,typeof ar!="number"&&(ar instanceof Array&&(z=ar,ar=z.pop()),ar=Y.symbols_[ar]||ar),ar}o(vt,"lex");for(var Lt,dt,nt,bt,wt,yt,ft={},Ur,_t,bn,Br;;){if(nt=he[he.length-1],this.defaultActions[nt]?bt=this.defaultActions[nt]:((Lt===null||typeof Lt>"u")&&(Lt=vt()),bt=ke[nt]&&ke[nt][Lt]),typeof bt>"u"||!bt.length||!bt[0]){var cr="";Br=[];for(Ur in ke[nt])this.terminals_[Ur]&&Ur>ze&&Br.push("'"+this.terminals_[Ur]+"'");We.showPosition?cr="Parse error on line "+(ye+1)+`: +`,"getStyles"),$Te=rst});var nst,ist,GTe,VTe=I(()=>{"use strict";kr();Qt();gt();Uu();Fi();sr();nst=o(t=>{let e=[...t.values()].reduce((i,a)=>i+a,0),r=[...t.entries()].map(([i,a])=>({label:i,value:a})).filter(i=>i.value/e*100>=1).sort((i,a)=>a.value-i.value);return N5().value(i=>i.value)(r)},"createPieArcs"),ist=o((t,e,r,n)=>{X.debug(`rendering pie chart +`+t);let i=n.db,a=xe(),s=Qn(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=Ca(e),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=ru(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=ic().innerRadius(0).outerRadius(x),T=ic().innerRadius(x*v).outerRadius(x*v);m.append("circle").attr("cx",0).attr("cy",0).attr("r",x+y/2).attr("class","pieOuterCircle");let E=i.getSections(),w=nst(E),k=[g.pie1,g.pie2,g.pie3,g.pie4,g.pie5,g.pie6,g.pie7,g.pie8,g.pie9,g.pie10,g.pie11,g.pie12],C=0;E.forEach(_=>{C+=_});let D=w.filter(_=>(_.data.value/C*100).toFixed(0)!=="0"),R=Lo(k);m.selectAll("mySlices").data(D).enter().append("path").attr("d",b).attr("fill",_=>R(_.data.label)).attr("class","pieCircle"),m.selectAll("mySlices").data(D).enter().append("text").text(_=>(_.data.value/C*100).toFixed(0)+"%").attr("transform",_=>"translate("+T.centroid(_)+")").style("text-anchor","middle").attr("class","slice"),m.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText");let O=[...E.entries()].map(([_,N])=>({label:_,value:N})),L=m.selectAll(".legend").data(O).enter().append("g").attr("class","legend").attr("transform",(_,N)=>{let M=u+h,P=M*O.length/2,B=12*u,F=N*M-P;return"translate("+B+","+F+")"});L.append("rect").attr("width",u).attr("height",u).style("fill",_=>R(_.label)).style("stroke",_=>R(_.label)),L.append("text").attr("x",u+h).attr("y",u-h).text(_=>i.getShowData()?`${_.label} [${_.value}]`:_.label);let S=Math.max(...L.selectAll("text").nodes().map(_=>_?.getBoundingClientRect().width??0)),A=d+l+u+h+S;p.attr("viewBox",`0 0 ${A} ${f}`),Sn(p,f,A,s.useMaxWidth)},"draw"),GTe={draw:ist}});var qTe={};vr(qTe,{diagram:()=>ast});var ast,UTe=I(()=>{"use strict";FTe();Sq();zTe();VTe();ast={parser:BTe,db:g7,renderer:GTe,styles:$Te}});var Eq,HTe,YTe=I(()=>{"use strict";Eq=(function(){var t=o(function(ue,z,se,oe){for(se=se||{},oe=ue.length;oe--;se[ue[oe]]=z);return se},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[1,7],s=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],h=[2,36],f=[1,37],d=[1,36],p=[1,38],m=[1,35],g=[1,43],y=[1,41],v=[1,14],x=[1,23],b=[1,18],T=[1,19],E=[1,20],w=[1,21],k=[1,22],C=[1,24],D=[1,25],R=[1,26],O=[1,27],L=[1,28],S=[1,29],A=[1,32],_=[1,33],N=[1,34],M=[1,39],P=[1,40],B=[1,42],F=[1,44],G=[1,62],$=[1,61],V=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],K=[1,65],ee=[1,66],H=[1,67],he=[1,68],Z=[1,69],de=[1,70],re=[1,71],ne=[1,72],te=[1,73],Q=[1,74],le=[1,75],J=[1,76],ge=[4,5,6,7,8,9,10,11,12,13,14,15,18],ie=[1,90],Te=[1,91],j=[1,92],Ge=[1,99],ye=[1,93],$e=[1,96],Xe=[1,94],Ue=[1,95],Le=[1,97],Ie=[1,98],Me=[1,102],Ae=[10,55,56,57],ze=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],Y={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:o(function(z,se,oe,be,pe,me,De){var Ce=me.length-1;switch(pe){case 23:this.$=me[Ce];break;case 24:this.$=me[Ce-1]+""+me[Ce];break;case 26:this.$=me[Ce-1]+me[Ce];break;case 27:this.$=[me[Ce].trim()];break;case 28:me[Ce-2].push(me[Ce].trim()),this.$=me[Ce-2];break;case 29:this.$=me[Ce-4],be.addClass(me[Ce-2],me[Ce]);break;case 37:this.$=[];break;case 42:this.$=me[Ce].trim(),be.setDiagramTitle(this.$);break;case 43:this.$=me[Ce].trim(),be.setAccTitle(this.$);break;case 44:case 45:this.$=me[Ce].trim(),be.setAccDescription(this.$);break;case 46:be.addSection(me[Ce].substr(8)),this.$=me[Ce].substr(8);break;case 47:be.addPoint(me[Ce-3],"",me[Ce-1],me[Ce],[]);break;case 48:be.addPoint(me[Ce-4],me[Ce-3],me[Ce-1],me[Ce],[]);break;case 49:be.addPoint(me[Ce-4],"",me[Ce-2],me[Ce-1],me[Ce]);break;case 50:be.addPoint(me[Ce-5],me[Ce-4],me[Ce-2],me[Ce-1],me[Ce]);break;case 51:be.setXAxisLeftText(me[Ce-2]),be.setXAxisRightText(me[Ce]);break;case 52:me[Ce-1].text+=" \u27F6 ",be.setXAxisLeftText(me[Ce-1]);break;case 53:be.setXAxisLeftText(me[Ce]);break;case 54:be.setYAxisBottomText(me[Ce-2]),be.setYAxisTopText(me[Ce]);break;case 55:me[Ce-1].text+=" \u27F6 ",be.setYAxisBottomText(me[Ce-1]);break;case 56:be.setYAxisBottomText(me[Ce]);break;case 57:be.setQuadrant1Text(me[Ce]);break;case 58:be.setQuadrant2Text(me[Ce]);break;case 59:be.setQuadrant3Text(me[Ce]);break;case 60:be.setQuadrant4Text(me[Ce]);break;case 64:this.$={text:me[Ce],type:"text"};break;case 65:this.$={text:me[Ce-1].text+""+me[Ce],type:me[Ce-1].type};break;case 66:this.$={text:me[Ce],type:"text"};break;case 67:this.$={text:me[Ce],type:"markdown"};break;case 68:this.$=me[Ce];break;case 69:this.$=me[Ce-1]+""+me[Ce];break}},"anonymous"),table:[{18:e,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:e,26:8,27:2,28:r,55:n,56:i,57:a},{18:e,26:9,27:2,28:r,55:n,56:i,57:a},t(s,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(u,h,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:T,39:E,41:w,42:k,48:C,50:D,51:R,52:O,53:L,54:S,60:A,61:_,63:N,64:M,65:P,66:B,67:F}),t(s,[2,34]),{27:45,55:n,56:i,57:a},t(u,[2,37]),t(u,h,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:T,39:E,41:w,42:k,48:C,50:D,51:R,52:O,53:L,54:S,60:A,61:_,63:N,64:M,65:P,66:B,67:F}),t(u,[2,39]),t(u,[2,40]),t(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(u,[2,45]),t(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:A,61:_,63:N,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:A,61:_,63:N,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:A,61:_,63:N,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:A,61:_,63:N,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:A,61:_,63:N,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:A,61:_,63:N,64:M,65:P,66:B,67:F},{4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,44:[1,57],47:[1,58],58:60,59:59,63:N,64:M,65:P,66:B,67:F},t(V,[2,64]),t(V,[2,66]),t(V,[2,67]),t(V,[2,70]),t(V,[2,71]),t(V,[2,72]),t(V,[2,73]),t(V,[2,74]),t(V,[2,75]),t(V,[2,76]),t(V,[2,77]),t(V,[2,78]),t(V,[2,79]),t(V,[2,80]),t(s,[2,35]),t(u,[2,38]),t(u,[2,42]),t(u,[2,43]),t(u,[2,44]),{3:64,4:K,5:ee,6:H,7:he,8:Z,9:de,10:re,11:ne,12:te,13:Q,14:le,15:J,21:63},t(u,[2,53],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,49:[1,77],63:N,64:M,65:P,66:B,67:F}),t(u,[2,56],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,49:[1,78],63:N,64:M,65:P,66:B,67:F}),t(u,[2,57],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:N,64:M,65:P,66:B,67:F}),t(u,[2,58],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:N,64:M,65:P,66:B,67:F}),t(u,[2,59],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:N,64:M,65:P,66:B,67:F}),t(u,[2,60],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:N,64:M,65:P,66:B,67:F}),{45:[1,79]},{44:[1,80]},t(V,[2,65]),t(V,[2,81]),t(V,[2,82]),t(V,[2,83]),{3:82,4:K,5:ee,6:H,7:he,8:Z,9:de,10:re,11:ne,12:te,13:Q,14:le,15:J,18:[1,81]},t(ge,[2,23]),t(ge,[2,1]),t(ge,[2,2]),t(ge,[2,3]),t(ge,[2,4]),t(ge,[2,5]),t(ge,[2,6]),t(ge,[2,7]),t(ge,[2,8]),t(ge,[2,9]),t(ge,[2,10]),t(ge,[2,11]),t(ge,[2,12]),t(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:A,61:_,63:N,64:M,65:P,66:B,67:F}),t(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:A,61:_,63:N,64:M,65:P,66:B,67:F}),{46:[1,85]},{45:[1,86]},{4:ie,5:Te,6:j,8:Ge,11:ye,13:$e,16:89,17:Xe,18:Ue,19:Le,20:Ie,22:88,23:87},t(ge,[2,24]),t(u,[2,51],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:N,64:M,65:P,66:B,67:F}),t(u,[2,54],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:N,64:M,65:P,66:B,67:F}),t(u,[2,47],{22:88,16:89,23:100,4:ie,5:Te,6:j,8:Ge,11:ye,13:$e,17:Xe,18:Ue,19:Le,20:Ie}),{46:[1,101]},t(u,[2,29],{10:Me}),t(Ae,[2,27],{16:103,4:ie,5:Te,6:j,8:Ge,11:ye,13:$e,17:Xe,18:Ue,19:Le,20:Ie}),t(ze,[2,25]),t(ze,[2,13]),t(ze,[2,14]),t(ze,[2,15]),t(ze,[2,16]),t(ze,[2,17]),t(ze,[2,18]),t(ze,[2,19]),t(ze,[2,20]),t(ze,[2,21]),t(ze,[2,22]),t(u,[2,49],{10:Me}),t(u,[2,48],{22:88,16:89,23:104,4:ie,5:Te,6:j,8:Ge,11:ye,13:$e,17:Xe,18:Ue,19:Le,20:Ie}),{4:ie,5:Te,6:j,8:Ge,11:ye,13:$e,16:89,17:Xe,18:Ue,19:Le,20:Ie,22:105},t(ze,[2,26]),t(u,[2,50],{10:Me}),t(Ae,[2,28],{16:103,4:ie,5:Te,6:j,8:Ge,11:ye,13:$e,17:Xe,18:Ue,19:Le,20:Ie})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(z,se){if(se.recoverable)this.trace(z);else{var oe=new Error(z);throw oe.hash=se,oe}},"parseError"),parse:o(function(z){var se=this,oe=[0],be=[],pe=[null],me=[],De=this.table,Ce="",Fe=0,Ye=0,xt=0,je=2,Pe=1,rt=me.slice.call(arguments,1),We=Object.create(this.lexer),ut={yy:{}};for(var Ut in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ut)&&(ut.yy[Ut]=this.yy[Ut]);We.setInput(z,ut.yy),ut.yy.lexer=We,ut.yy.parser=this,typeof We.yylloc>"u"&&(We.yylloc={});var Tt=We.yylloc;me.push(Tt);var Mt=We.options&&We.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function mt(_e){oe.length=oe.length-2*_e,pe.length=pe.length-_e,me.length=me.length-_e}o(mt,"popStack");function at(){var _e;return _e=be.pop()||We.lex()||Pe,typeof _e!="number"&&(_e instanceof Array&&(be=_e,_e=be.pop()),_e=se.symbols_[_e]||_e),_e}o(at,"lex");for(var wt,St,bt,pt,Zr,Lt,Dn={},Hr,mr,hr,Br;;){if(bt=oe[oe.length-1],this.defaultActions[bt]?pt=this.defaultActions[bt]:((wt===null||typeof wt>"u")&&(wt=at()),pt=De[bt]&&De[bt][wt]),typeof pt>"u"||!pt.length||!pt[0]){var Dt="";Br=[];for(Hr in De[bt])this.terminals_[Hr]&&Hr>je&&Br.push("'"+this.terminals_[Hr]+"'");We.showPosition?Dt="Parse error on line "+(Fe+1)+`: `+We.showPosition()+` -Expecting `+Br.join(", ")+", got '"+(this.terminals_[Lt]||Lt)+"'":cr="Parse error on line "+(ye+1)+": Unexpected "+(Lt==Ke?"end of input":"'"+(this.terminals_[Lt]||Lt)+"'"),this.parseError(cr,{text:We.match,token:this.terminals_[Lt]||Lt,line:We.yylineno,loc:Ue,expected:Br})}if(bt[0]instanceof Array&&bt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+nt+", token: "+Lt);switch(bt[0]){case 1:he.push(Lt),se.push(We.yytext),le.push(We.yylloc),he.push(bt[1]),Lt=null,dt?(Lt=dt,dt=null):(Re=We.yyleng,ve=We.yytext,ye=We.yylineno,Ue=We.yylloc,_e>0&&_e--);break;case 2:if(_t=this.productions_[bt[1]][1],ft.$=se[se.length-_t],ft._$={first_line:le[le.length-(_t||1)].first_line,last_line:le[le.length-1].last_line,first_column:le[le.length-(_t||1)].first_column,last_column:le[le.length-1].last_column},lt&&(ft._$.range=[le[le.length-(_t||1)].range[0],le[le.length-1].range[1]]),yt=this.performAction.apply(ft,[ve,Re,ye,Oe.yy,bt[1],se,le].concat(xt)),typeof yt<"u")return yt;_t&&(he=he.slice(0,-1*_t*2),se=se.slice(0,-1*_t),le=le.slice(0,-1*_t)),he.push(this.productions_[bt[1]][0]),se.push(ft.$),le.push(ft._$),bn=ke[he[he.length-2]][he[he.length-1]],he.push(bn);break;case 3:return!0}}return!0},"parse")},Ce=(function(){var fe={EOF:1,parseError:o(function(Y,he){if(this.yy.parser)this.yy.parser.parseError(Y,he);else throw new Error(Y)},"parseError"),setInput:o(function(xe,Y){return this.yy=Y||this.yy||{},this._input=xe,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var xe=this._input[0];this.yytext+=xe,this.yyleng++,this.offset++,this.match+=xe,this.matched+=xe;var Y=xe.match(/(?:\r\n?|\n).*/g);return Y?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),xe},"input"),unput:o(function(xe){var Y=xe.length,he=xe.split(/(?:\r\n?|\n)/g);this._input=xe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Y),this.offset-=Y;var z=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),he.length-1&&(this.yylineno-=he.length-1);var se=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:he?(he.length===z.length?this.yylloc.first_column:0)+z[z.length-he.length].length-he[0].length:this.yylloc.first_column-Y},this.options.ranges&&(this.yylloc.range=[se[0],se[0]+this.yyleng-Y]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(xe){this.unput(this.match.slice(xe))},"less"),pastInput:o(function(){var xe=this.matched.substr(0,this.matched.length-this.match.length);return(xe.length>20?"...":"")+xe.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var xe=this.match;return xe.length<20&&(xe+=this._input.substr(0,20-xe.length)),(xe.substr(0,20)+(xe.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var xe=this.pastInput(),Y=new Array(xe.length+1).join("-");return xe+this.upcomingInput()+` -`+Y+"^"},"showPosition"),test_match:o(function(xe,Y){var he,z,se;if(this.options.backtrack_lexer&&(se={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(se.yylloc.range=this.yylloc.range.slice(0))),z=xe[0].match(/(?:\r\n?|\n).*/g),z&&(this.yylineno+=z.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:z?z[z.length-1].length-z[z.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+xe[0].length},this.yytext+=xe[0],this.match+=xe[0],this.matches=xe,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(xe[0].length),this.matched+=xe[0],he=this.performAction.call(this,this.yy,this,Y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),he)return he;if(this._backtrack){for(var le in se)this[le]=se[le];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var xe,Y,he,z;this._more||(this.yytext="",this.match="");for(var se=this._currentRules(),le=0;leY[0].length)){if(Y=he,z=le,this.options.backtrack_lexer){if(xe=this.test_match(he,se[le]),xe!==!1)return xe;if(this._backtrack){Y=!1;continue}else return!1}else if(!this.options.flex)break}return Y?(xe=this.test_match(Y,se[z]),xe!==!1?xe:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Y=this.next();return Y||this.lex()},"lex"),begin:o(function(Y){this.conditionStack.push(Y)},"begin"),popState:o(function(){var Y=this.conditionStack.length-1;return Y>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Y){return Y=this.conditionStack.length-1-Math.abs(Y||0),Y>=0?this.conditionStack[Y]:"INITIAL"},"topState"),pushState:o(function(Y){this.begin(Y)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Y,he,z,se){var le=se;switch(z){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return he.yytext=he.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return fe})();Ne.lexer=Ce;function Fe(){this.yy={}}return o(Fe,"Parser"),Fe.prototype=Ne,Ne.Parser=Fe,new Fe})();e$.parser=e$;_ye=e$});var Z6,Lye=M(()=>{"use strict";Xt();pt();ci();Z6=class{constructor(){this.relations=[];this.latestRequirement=this.getInitialRequirement();this.requirements=new Map;this.latestElement=this.getInitialElement();this.elements=new Map;this.classes=new Map;this.direction="TB";this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"};this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"};this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"};this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"};this.setAccTitle=Rr;this.getAccTitle=Mr;this.setAccDescription=Ir;this.getAccDescription=Or;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.getConfig=o(()=>ge().requirement,"getConfig");this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,r){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:r,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){this.latestRequirement!==void 0&&(this.latestRequirement.requirementId=e)}setNewReqText(e){this.latestRequirement!==void 0&&(this.latestRequirement.text=e)}setNewReqRisk(e){this.latestRequirement!==void 0&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){this.latestRequirement!==void 0&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),X.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){this.latestElement!==void 0&&(this.latestElement.type=e)}setNewElementDocRef(e){this.latestElement!==void 0&&(this.latestElement.docRef=e)}addRelationship(e,r,n){this.relations.push({type:e,src:r,dst:n})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,Sr()}setCssStyle(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(!r||!i)return;for(let a of r)a.includes(",")?i.cssStyles.push(...a.split(",")):i.cssStyles.push(a)}}setClass(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(i)for(let a of r){i.classes.push(a);let s=this.classes.get(a)?.styles;s&&i.cssStyles.push(...s)}}}defineClass(e,r){for(let n of e){let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.requirements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))}),this.elements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))})}}getClasses(){return this.classes}getData(){let e=ge(),r=[],n=[];for(let i of this.requirements.values()){let a=i;a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),a.shape="requirementBox",a.look=e.look,r.push(a)}for(let i of this.elements.values()){let a=i;a.shape="requirementBox",a.look=e.look,a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),r.push(a)}for(let i of this.relations){let a=0,s=i.type===this.Relationships.CONTAINS,l={id:`${i.src}-${i.dst}-${a}`,start:this.requirements.get(i.src)?.name??this.elements.get(i.src)?.name,end:this.requirements.get(i.dst)?.name??this.elements.get(i.dst)?.name,label:`<<${i.type}>>`,classes:"relationshipLine",style:["fill:none",s?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:s?"normal":"dashed",arrowTypeStart:s?"requirement_contains":"",arrowTypeEnd:s?"":"requirement_arrow",look:e.look};n.push(l),a++}return{nodes:r,edges:n,other:{},config:e,direction:this.getDirection()}}}});var YZe,Rye,Nye=M(()=>{"use strict";YZe=o(t=>` +Expecting `+Br.join(", ")+", got '"+(this.terminals_[wt]||wt)+"'":Dt="Parse error on line "+(Fe+1)+": Unexpected "+(wt==Pe?"end of input":"'"+(this.terminals_[wt]||wt)+"'"),this.parseError(Dt,{text:We.match,token:this.terminals_[wt]||wt,line:We.yylineno,loc:Tt,expected:Br})}if(pt[0]instanceof Array&&pt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+bt+", token: "+wt);switch(pt[0]){case 1:oe.push(wt),pe.push(We.yytext),me.push(We.yylloc),oe.push(pt[1]),wt=null,St?(wt=St,St=null):(Ye=We.yyleng,Ce=We.yytext,Fe=We.yylineno,Tt=We.yylloc,xt>0&&xt--);break;case 2:if(mr=this.productions_[pt[1]][1],Dn.$=pe[pe.length-mr],Dn._$={first_line:me[me.length-(mr||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(mr||1)].first_column,last_column:me[me.length-1].last_column},Mt&&(Dn._$.range=[me[me.length-(mr||1)].range[0],me[me.length-1].range[1]]),Lt=this.performAction.apply(Dn,[Ce,Ye,Fe,ut.yy,pt[1],pe,me].concat(rt)),typeof Lt<"u")return Lt;mr&&(oe=oe.slice(0,-1*mr*2),pe=pe.slice(0,-1*mr),me=me.slice(0,-1*mr)),oe.push(this.productions_[pt[1]][0]),pe.push(Dn.$),me.push(Dn._$),hr=De[oe[oe.length-2]][oe[oe.length-1]],oe.push(hr);break;case 3:return!0}}return!0},"parse")},ce=(function(){var ue={EOF:1,parseError:o(function(se,oe){if(this.yy.parser)this.yy.parser.parseError(se,oe);else throw new Error(se)},"parseError"),setInput:o(function(z,se){return this.yy=se||this.yy||{},this._input=z,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var z=this._input[0];this.yytext+=z,this.yyleng++,this.offset++,this.match+=z,this.matched+=z;var se=z.match(/(?:\r\n?|\n).*/g);return se?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),z},"input"),unput:o(function(z){var se=z.length,oe=z.split(/(?:\r\n?|\n)/g);this._input=z+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-se),this.offset-=se;var be=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),oe.length-1&&(this.yylineno-=oe.length-1);var pe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:oe?(oe.length===be.length?this.yylloc.first_column:0)+be[be.length-oe.length].length-oe[0].length:this.yylloc.first_column-se},this.options.ranges&&(this.yylloc.range=[pe[0],pe[0]+this.yyleng-se]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(z){this.unput(this.match.slice(z))},"less"),pastInput:o(function(){var z=this.matched.substr(0,this.matched.length-this.match.length);return(z.length>20?"...":"")+z.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var z=this.match;return z.length<20&&(z+=this._input.substr(0,20-z.length)),(z.substr(0,20)+(z.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var z=this.pastInput(),se=new Array(z.length+1).join("-");return z+this.upcomingInput()+` +`+se+"^"},"showPosition"),test_match:o(function(z,se){var oe,be,pe;if(this.options.backtrack_lexer&&(pe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(pe.yylloc.range=this.yylloc.range.slice(0))),be=z[0].match(/(?:\r\n?|\n).*/g),be&&(this.yylineno+=be.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:be?be[be.length-1].length-be[be.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+z[0].length},this.yytext+=z[0],this.match+=z[0],this.matches=z,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(z[0].length),this.matched+=z[0],oe=this.performAction.call(this,this.yy,this,se,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),oe)return oe;if(this._backtrack){for(var me in pe)this[me]=pe[me];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var z,se,oe,be;this._more||(this.yytext="",this.match="");for(var pe=this._currentRules(),me=0;mese[0].length)){if(se=oe,be=me,this.options.backtrack_lexer){if(z=this.test_match(oe,pe[me]),z!==!1)return z;if(this._backtrack){se=!1;continue}else return!1}else if(!this.options.flex)break}return se?(z=this.test_match(se,pe[be]),z!==!1?z:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var se=this.next();return se||this.lex()},"lex"),begin:o(function(se){this.conditionStack.push(se)},"begin"),popState:o(function(){var se=this.conditionStack.length-1;return se>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(se){return se=this.conditionStack.length-1-Math.abs(se||0),se>=0?this.conditionStack[se]:"INITIAL"},"topState"),pushState:o(function(se){this.begin(se)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(se,oe,be,pe){var me=pe;switch(be){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:return 65;case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}};return ue})();Y.lexer=ce;function U(){this.yy={}}return o(U,"Parser"),U.prototype=Y,Y.Parser=U,new U})();Eq.parser=Eq;HTe=Eq});var qs,y7,jTe=I(()=>{"use strict";kr();Ka();gt();a2();qs=uf(),y7=class{constructor(){this.classes=new Map;this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{o(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:gr.quadrantChart?.chartWidth||500,chartWidth:gr.quadrantChart?.chartHeight||500,titlePadding:gr.quadrantChart?.titlePadding||10,titleFontSize:gr.quadrantChart?.titleFontSize||20,quadrantPadding:gr.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:gr.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:gr.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:gr.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:gr.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:gr.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:gr.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:gr.quadrantChart?.pointTextPadding||5,pointLabelFontSize:gr.quadrantChart?.pointLabelFontSize||12,pointRadius:gr.quadrantChart?.pointRadius||5,xAxisPosition:gr.quadrantChart?.xAxisPosition||"top",yAxisPosition:gr.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:gr.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:gr.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:qs.quadrant1Fill,quadrant2Fill:qs.quadrant2Fill,quadrant3Fill:qs.quadrant3Fill,quadrant4Fill:qs.quadrant4Fill,quadrant1TextFill:qs.quadrant1TextFill,quadrant2TextFill:qs.quadrant2TextFill,quadrant3TextFill:qs.quadrant3TextFill,quadrant4TextFill:qs.quadrant4TextFill,quadrantPointFill:qs.quadrantPointFill,quadrantPointTextFill:qs.quadrantPointTextFill,quadrantXAxisTextFill:qs.quadrantXAxisTextFill,quadrantYAxisTextFill:qs.quadrantYAxisTextFill,quadrantTitleFill:qs.quadrantTitleFill,quadrantInternalBorderStrokeFill:qs.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:qs.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,X.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){X.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){X.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:e==="top"&&r?a:0,bottom:e==="bottom"&&r?a:0},l=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,u={left:this.config.yAxisPosition==="left"&&n?l:0,right:this.config.yAxisPosition==="right"&&n?l:0},h=this.config.titleFontSize+this.config.titlePadding*2,f={top:i?h:0},d=this.config.quadrantPadding+u.left,p=this.config.quadrantPadding+s.top+f.top,m=this.config.chartWidth-this.config.quadrantPadding*2-u.left-u.right,g=this.config.chartHeight-this.config.quadrantPadding*2-s.top-s.bottom-f.top,y=m/2,v=g/2;return{xAxisSpace:s,yAxisSpace:u,titleSpace:f,quadrantSpace:{quadrantLeft:d,quadrantTop:p,quadrantWidth:m,quadrantHalfWidth:y,quadrantHeight:g,quadrantHalfHeight:v}}}getAxisLabels(e,r,n,i){let{quadrantSpace:a,titleSpace:s}=i,{quadrantHalfHeight:l,quadrantHeight:u,quadrantLeft:h,quadrantHalfWidth:f,quadrantTop:d,quadrantWidth:p}=a,m=!!this.data.xAxisRightText,g=!!this.data.yAxisTopText,y=[];return this.data.xAxisLeftText&&r&&y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&r&&y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+f+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&n&&y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+u-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&n&&y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+l-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),y}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:n,quadrantLeft:i,quadrantHalfWidth:a,quadrantTop:s}=r,l=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s,width:a,height:n,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i,y:s,width:a,height:n,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant4Fill}];for(let u of l)u.text.x=u.x+u.width/2,this.data.points.length===0?(u.text.y=u.y+u.height/2,u.text.horizontalPos="middle"):(u.text.y=u.y+this.config.quadrantTextTopPadding,u.text.horizontalPos="top");return l}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=ec().domain([0,1]).range([i,s+i]),u=ec().domain([0,1]).range([n+a,a]);return this.data.points.map(f=>{let d=this.classes.get(f.className);return d&&(f={...d,...f}),{x:l(f.x),y:u(f.y),fill:f.color??this.themeConfig.quadrantPointFill,radius:f.radius??this.config.pointRadius,text:{text:f.text,fill:this.themeConfig.quadrantPointTextFill,x:l(f.x),y:u(f.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:f.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:f.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=e,{quadrantHalfHeight:i,quadrantHeight:a,quadrantLeft:s,quadrantHalfWidth:l,quadrantTop:u,quadrantWidth:h}=n;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u,x2:s+h+r,y2:u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+h,y1:u+r,x2:s+h,y2:u+a-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u+a,x2:s+h+r,y2:u+a},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:u+r,x2:s,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+l,y1:u+r,x2:s+l,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:u+i,x2:s+h-r,y2:u+i}]}getTitle(e){if(e)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),n=this.config.showTitle&&!!this.data.titleText,i=this.data.points.length>0?"bottom":this.config.xAxisPosition,a=this.calculateSpace(i,e,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,e,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function Cq(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function XTe(t){return!/^\d+$/.test(t)}function KTe(t){return!/^\d+px$/.test(t)}var qm,QTe=I(()=>{"use strict";qm=class extends Error{static{o(this,"InvalidStyleError")}constructor(e,r,n){super(`value for ${e} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(Cq,"validateHexCode");o(XTe,"validateNumber");o(KTe,"validateSizeInPixels")});function ef(t){return fr(t.trim(),lst)}function cst(t){Ya.setData({quadrant1Text:ef(t.text)})}function ust(t){Ya.setData({quadrant2Text:ef(t.text)})}function hst(t){Ya.setData({quadrant3Text:ef(t.text)})}function fst(t){Ya.setData({quadrant4Text:ef(t.text)})}function dst(t){Ya.setData({xAxisLeftText:ef(t.text)})}function pst(t){Ya.setData({xAxisRightText:ef(t.text)})}function mst(t){Ya.setData({yAxisTopText:ef(t.text)})}function gst(t){Ya.setData({yAxisBottomText:ef(t.text)})}function Aq(t){let e={};for(let r of t){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(XTe(i))throw new qm(n,i,"number");e.radius=parseInt(i)}else if(n==="color"){if(Cq(i))throw new qm(n,i,"hex code");e.color=i}else if(n==="stroke-color"){if(Cq(i))throw new qm(n,i,"hex code");e.strokeColor=i}else if(n==="stroke-width"){if(KTe(i))throw new qm(n,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return e}function yst(t,e,r,n,i){let a=Aq(i);Ya.addPoints([{x:r,y:n,text:ef(t.text),className:e,...a}])}function vst(t,e){Ya.addClass(t,Aq(e))}function xst(t){Ya.setConfig({chartWidth:t})}function bst(t){Ya.setConfig({chartHeight:t})}function Tst(){let t=xe(),{themeVariables:e,quadrantChart:r}=t;return r&&Ya.setConfig(r),Ya.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),Ya.setData({titleText:Wr()}),Ya.build()}var lst,Ya,wst,ZTe,JTe=I(()=>{"use strict";Qt();wr();ki();jTe();QTe();lst=xe();o(ef,"textSanitizer");Ya=new y7;o(cst,"setQuadrant1Text");o(ust,"setQuadrant2Text");o(hst,"setQuadrant3Text");o(fst,"setQuadrant4Text");o(dst,"setXAxisLeftText");o(pst,"setXAxisRightText");o(mst,"setYAxisTopText");o(gst,"setYAxisBottomText");o(Aq,"parseStyles");o(yst,"addPoint");o(vst,"addClass");o(xst,"setWidth");o(bst,"setHeight");o(Tst,"getQuadrantData");wst=o(function(){Ya.clear(),Mr()},"clear"),ZTe={setWidth:xst,setHeight:bst,setQuadrant1Text:cst,setQuadrant2Text:ust,setQuadrant3Text:hst,setQuadrant4Text:fst,setXAxisLeftText:dst,setXAxisRightText:pst,setYAxisTopText:mst,setYAxisBottomText:gst,parseStyles:Aq,addPoint:yst,addClass:vst,getQuadrantData:Tst,clear:wst,setAccTitle:zr,getAccTitle:Vr,setDiagramTitle:Xr,getDiagramTitle:Wr,getAccDescription:Ur,setAccDescription:qr}});var kst,e3e,t3e=I(()=>{"use strict";kr();Qt();gt();Fi();kst=o((t,e,r,n)=>{function i(D){return D==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(D){return D==="left"?"start":"middle"}o(a,"getTextAnchor");function s(D){return`translate(${D.x}, ${D.y}) rotate(${D.rotation||0})`}o(s,"getTransformation");let l=xe();X.debug(`Rendering quadrant chart +`+t);let u=l.securityLevel,h;u==="sandbox"&&(h=He("#i"+e));let d=(u==="sandbox"?He(h.nodes()[0].contentDocument.body):He("body")).select(`[id="${e}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;Sn(d,g,m,l.quadrantChart?.useMaxWidth??!0),d.attr("viewBox","0 0 "+m+" "+g),n.db.setHeight(g),n.db.setWidth(m);let y=n.db.getQuadrantData(),v=p.append("g").attr("class","quadrants"),x=p.append("g").attr("class","border"),b=p.append("g").attr("class","data-points"),T=p.append("g").attr("class","labels"),E=p.append("g").attr("class","title");y.title&&E.append("text").attr("x",0).attr("y",0).attr("fill",y.title.fill).attr("font-size",y.title.fontSize).attr("dominant-baseline",i(y.title.horizontalPos)).attr("text-anchor",a(y.title.verticalPos)).attr("transform",s(y.title)).text(y.title.text),y.borderLines&&x.selectAll("line").data(y.borderLines).enter().append("line").attr("x1",D=>D.x1).attr("y1",D=>D.y1).attr("x2",D=>D.x2).attr("y2",D=>D.y2).style("stroke",D=>D.strokeFill).style("stroke-width",D=>D.strokeWidth);let w=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");w.append("rect").attr("x",D=>D.x).attr("y",D=>D.y).attr("width",D=>D.width).attr("height",D=>D.height).attr("fill",D=>D.fill),w.append("text").attr("x",0).attr("y",0).attr("fill",D=>D.text.fill).attr("font-size",D=>D.text.fontSize).attr("dominant-baseline",D=>i(D.text.horizontalPos)).attr("text-anchor",D=>a(D.text.verticalPos)).attr("transform",D=>s(D.text)).text(D=>D.text.text),T.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(D=>D.text).attr("fill",D=>D.fill).attr("font-size",D=>D.fontSize).attr("dominant-baseline",D=>i(D.horizontalPos)).attr("text-anchor",D=>a(D.verticalPos)).attr("transform",D=>s(D));let C=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");C.append("circle").attr("cx",D=>D.x).attr("cy",D=>D.y).attr("r",D=>D.radius).attr("fill",D=>D.fill).attr("stroke",D=>D.strokeColor).attr("stroke-width",D=>D.strokeWidth),C.append("text").attr("x",0).attr("y",0).text(D=>D.text.text).attr("fill",D=>D.text.fill).attr("font-size",D=>D.text.fontSize).attr("dominant-baseline",D=>i(D.text.horizontalPos)).attr("text-anchor",D=>a(D.text.verticalPos)).attr("transform",D=>s(D.text))},"draw"),e3e={draw:kst}});var r3e={};vr(r3e,{diagram:()=>Sst});var Sst,n3e=I(()=>{"use strict";YTe();JTe();t3e();Sst={parser:HTe,db:ZTe,renderer:e3e,styles:o(()=>"","styles")}});var _q,s3e,o3e=I(()=>{"use strict";_q=(function(){var t=o(function(N,M,P,B){for(P=P||{},B=N.length;B--;P[N[B]]=M);return P},"o"),e=[1,10,12,14,16,18,19,21,23],r=[2,6],n=[1,3],i=[1,5],a=[1,6],s=[1,7],l=[1,5,10,12,14,16,18,19,21,23,34,35,36],u=[1,25],h=[1,26],f=[1,28],d=[1,29],p=[1,30],m=[1,31],g=[1,32],y=[1,33],v=[1,34],x=[1,35],b=[1,36],T=[1,37],E=[1,43],w=[1,42],k=[1,47],C=[1,50],D=[1,10,12,14,16,18,19,21,23,34,35,36],R=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],O=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],L=[1,64],S={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:o(function(M,P,B,F,G,$,V){var K=$.length-1;switch(G){case 5:F.setOrientation($[K]);break;case 9:F.setDiagramTitle($[K].text.trim());break;case 12:F.setLineData({text:"",type:"text"},$[K]);break;case 13:F.setLineData($[K-1],$[K]);break;case 14:F.setBarData({text:"",type:"text"},$[K]);break;case 15:F.setBarData($[K-1],$[K]);break;case 16:this.$=$[K].trim(),F.setAccTitle(this.$);break;case 17:case 18:this.$=$[K].trim(),F.setAccDescription(this.$);break;case 19:this.$=$[K-1];break;case 20:this.$=[Number($[K-2]),...$[K]];break;case 21:this.$=[Number($[K])];break;case 22:F.setXAxisTitle($[K]);break;case 23:F.setXAxisTitle($[K-1]);break;case 24:F.setXAxisTitle({type:"text",text:""});break;case 25:F.setXAxisBand($[K]);break;case 26:F.setXAxisRangeData(Number($[K-2]),Number($[K]));break;case 27:this.$=$[K-1];break;case 28:this.$=[$[K-2],...$[K]];break;case 29:this.$=[$[K]];break;case 30:F.setYAxisTitle($[K]);break;case 31:F.setYAxisTitle($[K-1]);break;case 32:F.setYAxisTitle({type:"text",text:""});break;case 33:F.setYAxisRangeData(Number($[K-2]),Number($[K]));break;case 37:this.$={text:$[K],type:"text"};break;case 38:this.$={text:$[K],type:"text"};break;case 39:this.$={text:$[K],type:"markdown"};break;case 40:this.$=$[K];break;case 41:this.$=$[K-1]+""+$[K];break}},"anonymous"),table:[t(e,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},t(e,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),t(e,r,{4:2,7:4,6:9,3:10,5:n,8:[1,11],34:i,35:a,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(l,[2,34]),t(l,[2,35]),t(l,[2,36]),{1:[2,1]},t(e,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},t(l,[2,5]),t(e,[2,7],{4:22,34:i,35:a,36:s}),{11:23,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:39,13:38,24:E,27:w,29:40,30:41,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:45,15:44,27:k,33:46,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:49,17:48,24:C,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{11:52,17:51,24:C,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},{20:[1,53]},{22:[1,54]},t(D,[2,18]),{1:[2,2]},t(D,[2,8]),t(D,[2,9]),t(R,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T}),t(R,[2,38]),t(R,[2,39]),t(O,[2,40]),t(O,[2,42]),t(O,[2,43]),t(O,[2,44]),t(O,[2,45]),t(O,[2,46]),t(O,[2,47]),t(O,[2,48]),t(O,[2,49]),t(O,[2,50]),t(O,[2,51]),t(D,[2,10]),t(D,[2,22],{30:41,29:56,24:E,27:w}),t(D,[2,24]),t(D,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},t(D,[2,11]),t(D,[2,30],{33:60,27:k}),t(D,[2,32]),{31:[1,61]},t(D,[2,12]),{17:62,24:C},{25:63,27:L},t(D,[2,14]),{17:65,24:C},t(D,[2,16]),t(D,[2,17]),t(O,[2,41]),t(D,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(D,[2,31]),{27:[1,69]},t(D,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(D,[2,15]),t(D,[2,26]),t(D,[2,27]),{11:59,32:72,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:T},t(D,[2,33]),t(D,[2,19]),{25:73,27:L},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:o(function(M,P){if(P.recoverable)this.trace(M);else{var B=new Error(M);throw B.hash=P,B}},"parseError"),parse:o(function(M){var P=this,B=[0],F=[],G=[null],$=[],V=this.table,K="",ee=0,H=0,he=0,Z=2,de=1,re=$.slice.call(arguments,1),ne=Object.create(this.lexer),te={yy:{}};for(var Q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Q)&&(te.yy[Q]=this.yy[Q]);ne.setInput(M,te.yy),te.yy.lexer=ne,te.yy.parser=this,typeof ne.yylloc>"u"&&(ne.yylloc={});var le=ne.yylloc;$.push(le);var J=ne.options&&ne.options.ranges;typeof te.yy.parseError=="function"?this.parseError=te.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ge(Y){B.length=B.length-2*Y,G.length=G.length-Y,$.length=$.length-Y}o(ge,"popStack");function ie(){var Y;return Y=F.pop()||ne.lex()||de,typeof Y!="number"&&(Y instanceof Array&&(F=Y,Y=F.pop()),Y=P.symbols_[Y]||Y),Y}o(ie,"lex");for(var Te,j,Ge,ye,$e,Xe,Ue={},Le,Ie,Me,Ae;;){if(Ge=B[B.length-1],this.defaultActions[Ge]?ye=this.defaultActions[Ge]:((Te===null||typeof Te>"u")&&(Te=ie()),ye=V[Ge]&&V[Ge][Te]),typeof ye>"u"||!ye.length||!ye[0]){var ze="";Ae=[];for(Le in V[Ge])this.terminals_[Le]&&Le>Z&&Ae.push("'"+this.terminals_[Le]+"'");ne.showPosition?ze="Parse error on line "+(ee+1)+`: +`+ne.showPosition()+` +Expecting `+Ae.join(", ")+", got '"+(this.terminals_[Te]||Te)+"'":ze="Parse error on line "+(ee+1)+": Unexpected "+(Te==de?"end of input":"'"+(this.terminals_[Te]||Te)+"'"),this.parseError(ze,{text:ne.match,token:this.terminals_[Te]||Te,line:ne.yylineno,loc:le,expected:Ae})}if(ye[0]instanceof Array&&ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ge+", token: "+Te);switch(ye[0]){case 1:B.push(Te),G.push(ne.yytext),$.push(ne.yylloc),B.push(ye[1]),Te=null,j?(Te=j,j=null):(H=ne.yyleng,K=ne.yytext,ee=ne.yylineno,le=ne.yylloc,he>0&&he--);break;case 2:if(Ie=this.productions_[ye[1]][1],Ue.$=G[G.length-Ie],Ue._$={first_line:$[$.length-(Ie||1)].first_line,last_line:$[$.length-1].last_line,first_column:$[$.length-(Ie||1)].first_column,last_column:$[$.length-1].last_column},J&&(Ue._$.range=[$[$.length-(Ie||1)].range[0],$[$.length-1].range[1]]),Xe=this.performAction.apply(Ue,[K,H,ee,te.yy,ye[1],G,$].concat(re)),typeof Xe<"u")return Xe;Ie&&(B=B.slice(0,-1*Ie*2),G=G.slice(0,-1*Ie),$=$.slice(0,-1*Ie)),B.push(this.productions_[ye[1]][0]),G.push(Ue.$),$.push(Ue._$),Me=V[B[B.length-2]][B[B.length-1]],B.push(Me);break;case 3:return!0}}return!0},"parse")},A=(function(){var N={EOF:1,parseError:o(function(P,B){if(this.yy.parser)this.yy.parser.parseError(P,B);else throw new Error(P)},"parseError"),setInput:o(function(M,P){return this.yy=P||this.yy||{},this._input=M,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var M=this._input[0];this.yytext+=M,this.yyleng++,this.offset++,this.match+=M,this.matched+=M;var P=M.match(/(?:\r\n?|\n).*/g);return P?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),M},"input"),unput:o(function(M){var P=M.length,B=M.split(/(?:\r\n?|\n)/g);this._input=M+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-P),this.offset-=P;var F=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),B.length-1&&(this.yylineno-=B.length-1);var G=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:B?(B.length===F.length?this.yylloc.first_column:0)+F[F.length-B.length].length-B[0].length:this.yylloc.first_column-P},this.options.ranges&&(this.yylloc.range=[G[0],G[0]+this.yyleng-P]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(M){this.unput(this.match.slice(M))},"less"),pastInput:o(function(){var M=this.matched.substr(0,this.matched.length-this.match.length);return(M.length>20?"...":"")+M.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var M=this.match;return M.length<20&&(M+=this._input.substr(0,20-M.length)),(M.substr(0,20)+(M.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var M=this.pastInput(),P=new Array(M.length+1).join("-");return M+this.upcomingInput()+` +`+P+"^"},"showPosition"),test_match:o(function(M,P){var B,F,G;if(this.options.backtrack_lexer&&(G={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(G.yylloc.range=this.yylloc.range.slice(0))),F=M[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+M[0].length},this.yytext+=M[0],this.match+=M[0],this.matches=M,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(M[0].length),this.matched+=M[0],B=this.performAction.call(this,this.yy,this,P,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),B)return B;if(this._backtrack){for(var $ in G)this[$]=G[$];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var M,P,B,F;this._more||(this.yytext="",this.match="");for(var G=this._currentRules(),$=0;$P[0].length)){if(P=B,F=$,this.options.backtrack_lexer){if(M=this.test_match(B,G[$]),M!==!1)return M;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(M=this.test_match(P,G[F]),M!==!1?M:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var P=this.next();return P||this.lex()},"lex"),begin:o(function(P){this.conditionStack.push(P)},"begin"),popState:o(function(){var P=this.conditionStack.length-1;return P>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(P){return P=this.conditionStack.length-1-Math.abs(P||0),P>=0?this.conditionStack[P]:"INITIAL"},"topState"),pushState:o(function(P){this.begin(P)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(P,B,F,G){var $=G;switch(F){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 31;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 27;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 43;case 33:return"COLON";case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return N})();S.lexer=A;function _(){this.yy={}}return o(_,"Parser"),_.prototype=S,S.Parser=_,new _})();_q.parser=_q;s3e=_q});function Dq(t){return t.type==="bar"}function v7(t){return t.type==="band"}function Cv(t){return t.type==="linear"}var x7=I(()=>{"use strict";o(Dq,"isBarPlot");o(v7,"isBandAxisData");o(Cv,"isLinearAxisData")});var Av,Rq=I(()=>{"use strict";yl();Av=class{constructor(e){this.parentGroup=e}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(e,r){if(!this.parentGroup)return{width:e.reduce((a,s)=>Math.max(s.length,a),0)*r,height:r};let n={width:0,height:0},i=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",r);for(let a of e){let s=Nne(i,1,a),l=s?s.width:a.length*r,u=s?s.height:r;n.width=Math.max(n.width,l),n.height=Math.max(n.height,u)}return i.remove(),n}}});var _v,Lq=I(()=>{"use strict";_v=class{constructor(e,r,n,i){this.axisConfig=e;this.title=r;this.textDimensionCalculator=n;this.axisThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0};this.axisPosition="left";this.showTitle=!1;this.showLabel=!1;this.showTick=!1;this.showAxisLine=!1;this.outerPadding=0;this.titleTextHeight=0;this.labelTextHeight=0;this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{o(this,"BaseAxis")}setRange(e){this.range=e,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let r=e.height;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.width;this.outerPadding=Math.min(n.width/2,i);let a=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-r}calculateSpaceIfDrawnVertical(e){let r=e.width;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.height;this.outerPadding=Math.min(n.height/2,i);let a=n.width+this.axisConfig.labelPadding*2;a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width-r,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${r},${this.boundingRect.y} L ${r},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(r),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let r=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${r},${this.getScaleValue(n)} L ${r-this.axisConfig.tickLength},${this.getScaleValue(n)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r} L ${this.getScaleValue(n)},${r+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y;e.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(n)},${r+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),e}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}});var b7,l3e=I(()=>{"use strict";kr();gt();Lq();b7=class extends _v{static{o(this,"BandAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.categories=n,this.scale=_g().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=_g().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),X.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}}});var T7,c3e=I(()=>{"use strict";kr();Lq();T7=class extends _v{static{o(this,"LinearAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.domain=n,this.scale=ec().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition==="left"&&e.reverse(),this.scale=ec().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}}});function Nq(t,e,r,n){let i=new Av(n);return v7(t)?new b7(e,r,t.categories,t.title,i):new T7(e,r,[t.min,t.max],t.title,i)}var u3e=I(()=>{"use strict";x7();Rq();l3e();c3e();o(Nq,"getAxis")});function h3e(t,e,r,n){let i=new Av(n);return new Mq(i,t,e,r)}var Mq,f3e=I(()=>{"use strict";Rq();Mq=class{constructor(e,r,n,i){this.textDimensionCalculator=e;this.chartConfig=r;this.chartData=n;this.chartThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{o(this,"ChartTitle")}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,e.width),i=r.height+2*this.chartConfig.titlePadding;return r.width<=n&&r.height<=i&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=i,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),e}};o(h3e,"getChartTitleComponent")});var w7,d3e=I(()=>{"use strict";kr();w7=class{constructor(e,r,n,i,a){this.plotData=e;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let e=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=ac().y(n=>n[0]).x(n=>n[1])(e):r=ac().x(n=>n[0]).y(n=>n[1])(e),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var k7,p3e=I(()=>{"use strict";k7=class{constructor(e,r,n,i,a,s){this.barData=e;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let e=this.barData.data.map(a=>[this.xAxis.getScaleValue(a[0]),this.yAxis.getScaleValue(a[1])]),n=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),i=n/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:this.boundingRect.x,y:a[0]-i,height:n,width:a[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:a[0]-i,y:a[1],width:n,height:this.boundingRect.y+this.boundingRect.height-a[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}});function m3e(t,e,r){return new Iq(t,e,r)}var Iq,g3e=I(()=>{"use strict";d3e();p3e();Iq=class{constructor(e,r,n){this.chartConfig=e;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(e,r){this.xAxis=e,this.yAxis=r}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let e=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new w7(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break;case"bar":{let i=new k7(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break}return e}};o(m3e,"getPlotComponent")});var S7,y3e=I(()=>{"use strict";u3e();f3e();g3e();x7();S7=class{constructor(e,r,n,i){this.chartConfig=e;this.chartData=r;this.componentStore={title:h3e(e,r,n,i),plot:m3e(e,r,n),xAxis:Nq(r.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:Nq(r.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});e-=l.width,r-=l.height,l=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),i=l.height,r-=l.height,this.componentStore.xAxis.setAxisPosition("bottom"),l=this.componentStore.xAxis.calculateSpace({width:e,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:e,height:r}),n=l.width,e-=l.width,e>0&&(a+=e,e=0),r>0&&(s+=r,r=0),this.componentStore.plot.calculateSpace({width:a,height:s}),this.componentStore.plot.setBoundingBoxXY({x:n,y:i}),this.componentStore.xAxis.setRange([n,n+a]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:i+s}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(u=>Dq(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});e-=u.width,r-=u.height,u=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),n=u.height,r-=u.height,this.componentStore.xAxis.setAxisPosition("left"),u=this.componentStore.xAxis.calculateSpace({width:e,height:r}),e-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:e,height:r}),r-=u.height,a=n+u.height,e>0&&(s+=e,e=0),r>0&&(l+=r,r=0),this.componentStore.plot.calculateSpace({width:s,height:l}),this.componentStore.plot.setBoundingBoxXY({x:i,y:a}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:i,y:n}),this.componentStore.xAxis.setRange([a,a+l]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(h=>Dq(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))e.push(...r.getDrawableElements());return e}}});var E7,v3e=I(()=>{"use strict";y3e();E7=class{static{o(this,"XYChartBuilder")}static build(e,r,n,i){return new S7(e,r,n,i).getDrawableElement()}}});function b3e(){let t=uf(),e=tr();return Qn(t.xyChart,e.themeVariables.xyChart)}function T3e(){let t=tr();return Qn(gr.xyChart,t.xyChart)}function w3e(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function Bq(t){let e=tr();return fr(t.trim(),e)}function _st(t){x3e=t}function Dst(t){t==="horizontal"?t3.chartOrientation="horizontal":t3.chartOrientation="vertical"}function Rst(t){kn.xAxis.title=Bq(t.text)}function k3e(t,e){kn.xAxis={type:"linear",title:kn.xAxis.title,min:t,max:e},C7=!0}function Lst(t){kn.xAxis={type:"band",title:kn.xAxis.title,categories:t.map(e=>Bq(e.text))},C7=!0}function Nst(t){kn.yAxis.title=Bq(t.text)}function Mst(t,e){kn.yAxis={type:"linear",title:kn.yAxis.title,min:t,max:e},Pq=!0}function Ist(t){let e=Math.min(...t),r=Math.max(...t),n=Cv(kn.yAxis)?kn.yAxis.min:1/0,i=Cv(kn.yAxis)?kn.yAxis.max:-1/0;kn.yAxis={type:"linear",title:kn.yAxis.title,min:Math.min(n,e),max:Math.max(i,r)}}function S3e(t){let e=[];if(t.length===0)return e;if(!C7){let r=Cv(kn.xAxis)?kn.xAxis.min:1/0,n=Cv(kn.xAxis)?kn.xAxis.max:-1/0;k3e(Math.min(r,1),Math.max(n,t.length))}if(Pq||Ist(t),v7(kn.xAxis)&&(e=kn.xAxis.categories.map((r,n)=>[r,t[n]])),Cv(kn.xAxis)){let r=kn.xAxis.min,n=kn.xAxis.max,i=(n-r)/(t.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);e=a.map((s,l)=>[s,t[l]])}return e}function E3e(t){return Oq[t===0?0:t%Oq.length]}function Ost(t,e){let r=S3e(e);kn.plots.push({type:"line",strokeFill:E3e(e3),strokeWidth:2,data:r}),e3++}function Pst(t,e){let r=S3e(e);kn.plots.push({type:"bar",fill:E3e(e3),data:r}),e3++}function Bst(){if(kn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return kn.title=Wr(),E7.build(t3,kn,r3,x3e)}function Fst(){return r3}function $st(){return t3}function zst(){return kn}var e3,x3e,t3,r3,kn,Oq,C7,Pq,Gst,C3e,A3e=I(()=>{"use strict";ti();Ka();a2();sr();wr();ki();v3e();x7();e3=0,t3=T3e(),r3=b3e(),kn=w3e(),Oq=r3.plotColorPalette.split(",").map(t=>t.trim()),C7=!1,Pq=!1;o(b3e,"getChartDefaultThemeConfig");o(T3e,"getChartDefaultConfig");o(w3e,"getChartDefaultData");o(Bq,"textSanitizer");o(_st,"setTmpSVGG");o(Dst,"setOrientation");o(Rst,"setXAxisTitle");o(k3e,"setXAxisRangeData");o(Lst,"setXAxisBand");o(Nst,"setYAxisTitle");o(Mst,"setYAxisRangeData");o(Ist,"setYAxisRangeFromPlotData");o(S3e,"transformDataWithoutCategory");o(E3e,"getPlotColorFromPalette");o(Ost,"setLineData");o(Pst,"setBarData");o(Bst,"getDrawableElem");o(Fst,"getChartThemeConfig");o($st,"getChartConfig");o(zst,"getXYChartData");Gst=o(function(){Mr(),e3=0,t3=T3e(),kn=w3e(),r3=b3e(),Oq=r3.plotColorPalette.split(",").map(t=>t.trim()),C7=!1,Pq=!1},"clear"),C3e={getDrawableElem:Bst,clear:Gst,setAccTitle:zr,getAccTitle:Vr,setDiagramTitle:Xr,getDiagramTitle:Wr,getAccDescription:Ur,setAccDescription:qr,setOrientation:Dst,setXAxisTitle:Rst,setXAxisRangeData:k3e,setXAxisBand:Lst,setYAxisTitle:Nst,setYAxisRangeData:Mst,setLineData:Ost,setBarData:Pst,setTmpSVGG:_st,getChartThemeConfig:Fst,getChartConfig:$st,getXYChartData:zst}});var Vst,_3e,D3e=I(()=>{"use strict";gt();Uu();Fi();Vst=o((t,e,r,n)=>{let i=n.db,a=i.getChartThemeConfig(),s=i.getChartConfig(),l=i.getXYChartData().plots[0].data.map(T=>T[1]);function u(T){return T==="top"?"text-before-edge":"middle"}o(u,"getDominantBaseLine");function h(T){return T==="left"?"start":T==="right"?"end":"middle"}o(h,"getTextAnchor");function f(T){return`translate(${T.x}, ${T.y}) rotate(${T.rotation||0})`}o(f,"getTextTransformation"),X.debug(`Rendering xychart chart +`+t);let d=Ca(e),p=d.append("g").attr("class","main"),m=p.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");Sn(d,s.height,s.width,!0),d.attr("viewBox",`0 0 ${s.width} ${s.height}`),m.attr("fill",a.backgroundColor),i.setTmpSVGG(d.append("g").attr("class","mermaid-tmp-group"));let g=i.getDrawableElem(),y={};function v(T){let E=p,w="";for(let[k]of T.entries()){let C=p;k>0&&y[w]&&(C=y[w]),w+=T[k],E=y[w],E||(E=y[w]=C.append("g").attr("class",T[k]))}return E}o(v,"getGroup");for(let T of g){if(T.data.length===0)continue;let E=v(T.groupTexts);switch(T.type){case"rect":if(E.selectAll("rect").data(T.data).enter().append("rect").attr("x",w=>w.x).attr("y",w=>w.y).attr("width",w=>w.width).attr("height",w=>w.height).attr("fill",w=>w.fill).attr("stroke",w=>w.strokeFill).attr("stroke-width",w=>w.strokeWidth),s.showDataLabel)if(s.chartOrientation==="horizontal"){let C=function(O,L){let{data:S,label:A}=O;return L*A.length*.7<=S.width-10};var x=C;o(C,"fitsHorizontally");let w=.7,k=T.data.map((O,L)=>({data:O,label:l[L].toString()})).filter(O=>O.data.width>0&&O.data.height>0),D=k.map(O=>{let{data:L}=O,S=L.height*.7;for(;!C(O,S)&&S>0;)S-=1;return S}),R=Math.floor(Math.min(...D));E.selectAll("text").data(k).enter().append("text").attr("x",O=>O.data.x+O.data.width-10).attr("y",O=>O.data.y+O.data.height/2).attr("text-anchor","end").attr("dominant-baseline","middle").attr("fill","black").attr("font-size",`${R}px`).text(O=>O.label)}else{let C=function(O,L,S){let{data:A,label:_}=O,M=L*_.length*.7,P=A.x+A.width/2,B=P-M/2,F=P+M/2,G=B>=A.x&&F<=A.x+A.width,$=A.y+S+L<=A.y+A.height;return G&&$};var b=C;o(C,"fitsInBar");let w=10,k=T.data.map((O,L)=>({data:O,label:l[L].toString()})).filter(O=>O.data.width>0&&O.data.height>0),D=k.map(O=>{let{data:L,label:S}=O,A=L.width/(S.length*.7);for(;!C(O,A,10)&&A>0;)A-=1;return A}),R=Math.floor(Math.min(...D));E.selectAll("text").data(k).enter().append("text").attr("x",O=>O.data.x+O.data.width/2).attr("y",O=>O.data.y+10).attr("text-anchor","middle").attr("dominant-baseline","hanging").attr("fill","black").attr("font-size",`${R}px`).text(O=>O.label)}break;case"text":E.selectAll("text").data(T.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",w=>w.fill).attr("font-size",w=>w.fontSize).attr("dominant-baseline",w=>u(w.verticalPos)).attr("text-anchor",w=>h(w.horizontalPos)).attr("transform",w=>f(w)).text(w=>w.text);break;case"path":E.selectAll("path").data(T.data).enter().append("path").attr("d",w=>w.path).attr("fill",w=>w.fill?w.fill:"none").attr("stroke",w=>w.strokeFill).attr("stroke-width",w=>w.strokeWidth);break}}},"draw"),_3e={draw:Vst}});var R3e={};vr(R3e,{diagram:()=>qst});var qst,L3e=I(()=>{"use strict";o3e();A3e();D3e();qst={parser:s3e,db:C3e,renderer:_3e}});var Fq,I3e,O3e=I(()=>{"use strict";Fq=(function(){var t=o(function(Y,ce,U,ue){for(U=U||{},ue=Y.length;ue--;U[Y[ue]]=ce);return U},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],s=[1,22],l=[2,7],u=[1,26],h=[1,27],f=[1,28],d=[1,29],p=[1,33],m=[1,34],g=[1,35],y=[1,36],v=[1,37],x=[1,38],b=[1,24],T=[1,31],E=[1,32],w=[1,30],k=[1,39],C=[1,40],D=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],R=[1,61],O=[89,90],L=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],S=[27,29],A=[1,70],_=[1,71],N=[1,72],M=[1,73],P=[1,74],B=[1,75],F=[1,76],G=[1,83],$=[1,80],V=[1,84],K=[1,85],ee=[1,86],H=[1,87],he=[1,88],Z=[1,89],de=[1,90],re=[1,91],ne=[1,92],te=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],Q=[63,64],le=[1,101],J=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],ge=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],ie=[1,110],Te=[1,106],j=[1,107],Ge=[1,108],ye=[1,109],$e=[1,111],Xe=[1,116],Ue=[1,117],Le=[1,114],Ie=[1,115],Me={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:o(function(ce,U,ue,z,se,oe,be){var pe=oe.length-1;switch(se){case 4:this.$=oe[pe].trim(),z.setAccTitle(this.$);break;case 5:case 6:this.$=oe[pe].trim(),z.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:z.setDirection("TB");break;case 18:z.setDirection("BT");break;case 19:z.setDirection("RL");break;case 20:z.setDirection("LR");break;case 21:z.addRequirement(oe[pe-3],oe[pe-4]);break;case 22:z.addRequirement(oe[pe-5],oe[pe-6]),z.setClass([oe[pe-5]],oe[pe-3]);break;case 23:z.setNewReqId(oe[pe-2]);break;case 24:z.setNewReqText(oe[pe-2]);break;case 25:z.setNewReqRisk(oe[pe-2]);break;case 26:z.setNewReqVerifyMethod(oe[pe-2]);break;case 29:this.$=z.RequirementType.REQUIREMENT;break;case 30:this.$=z.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=z.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=z.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=z.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=z.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=z.RiskLevel.LOW_RISK;break;case 36:this.$=z.RiskLevel.MED_RISK;break;case 37:this.$=z.RiskLevel.HIGH_RISK;break;case 38:this.$=z.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=z.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=z.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=z.VerifyType.VERIFY_TEST;break;case 42:z.addElement(oe[pe-3]);break;case 43:z.addElement(oe[pe-5]),z.setClass([oe[pe-5]],oe[pe-3]);break;case 44:z.setNewElementType(oe[pe-2]);break;case 45:z.setNewElementDocRef(oe[pe-2]);break;case 48:z.addRelationship(oe[pe-2],oe[pe],oe[pe-4]);break;case 49:z.addRelationship(oe[pe-2],oe[pe-4],oe[pe]);break;case 50:this.$=z.Relationships.CONTAINS;break;case 51:this.$=z.Relationships.COPIES;break;case 52:this.$=z.Relationships.DERIVES;break;case 53:this.$=z.Relationships.SATISFIES;break;case 54:this.$=z.Relationships.VERIFIES;break;case 55:this.$=z.Relationships.REFINES;break;case 56:this.$=z.Relationships.TRACES;break;case 57:this.$=oe[pe-2],z.defineClass(oe[pe-1],oe[pe]);break;case 58:z.setClass(oe[pe-1],oe[pe]);break;case 59:z.setClass([oe[pe-2]],oe[pe]);break;case 60:case 62:this.$=[oe[pe]];break;case 61:case 63:this.$=oe[pe-2].concat([oe[pe]]);break;case 64:this.$=oe[pe-2],z.setCssStyle(oe[pe-1],oe[pe]);break;case 65:this.$=[oe[pe]];break;case 66:oe[pe-2].push(oe[pe]),this.$=oe[pe-2];break;case 68:this.$=oe[pe-1]+oe[pe];break}},"anonymous"),table:[{3:1,4:2,6:e,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(a,[2,6]),{3:12,4:2,6:e,9:r,11:n,13:i},{1:[2,2]},{4:17,5:s,7:13,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},t(a,[2,4]),t(a,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:s,7:42,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:43,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:44,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:45,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:46,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:47,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:48,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:49,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{4:17,5:s,7:50,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:v,46:x,54:b,72:T,74:E,77:w,89:k,90:C},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},t(D,[2,17]),t(D,[2,18]),t(D,[2,19]),t(D,[2,20]),{30:60,33:62,75:R,89:k,90:C},{30:63,33:62,75:R,89:k,90:C},{30:64,33:62,75:R,89:k,90:C},t(O,[2,29]),t(O,[2,30]),t(O,[2,31]),t(O,[2,32]),t(O,[2,33]),t(O,[2,34]),t(L,[2,81]),t(L,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},t(S,[2,79]),t(S,[2,80]),{27:[1,67],29:[1,68]},t(S,[2,85]),t(S,[2,86]),{62:69,65:A,66:_,67:N,68:M,69:P,70:B,71:F},{62:77,65:A,66:_,67:N,68:M,69:P,70:B,71:F},{30:78,33:62,75:R,89:k,90:C},{73:79,75:G,76:$,78:81,79:82,80:V,81:K,82:ee,83:H,84:he,85:Z,86:de,87:re,88:ne},t(te,[2,60]),t(te,[2,62]),{73:93,75:G,76:$,78:81,79:82,80:V,81:K,82:ee,83:H,84:he,85:Z,86:de,87:re,88:ne},{30:94,33:62,75:R,76:$,89:k,90:C},{5:[1,95]},{30:96,33:62,75:R,89:k,90:C},{5:[1,97]},{30:98,33:62,75:R,89:k,90:C},{63:[1,99]},t(Q,[2,50]),t(Q,[2,51]),t(Q,[2,52]),t(Q,[2,53]),t(Q,[2,54]),t(Q,[2,55]),t(Q,[2,56]),{64:[1,100]},t(D,[2,59],{76:$}),t(D,[2,64],{76:le}),{33:103,75:[1,102],89:k,90:C},t(J,[2,65],{79:104,75:G,80:V,81:K,82:ee,83:H,84:he,85:Z,86:de,87:re,88:ne}),t(ge,[2,67]),t(ge,[2,69]),t(ge,[2,70]),t(ge,[2,71]),t(ge,[2,72]),t(ge,[2,73]),t(ge,[2,74]),t(ge,[2,75]),t(ge,[2,76]),t(ge,[2,77]),t(ge,[2,78]),t(D,[2,57],{76:le}),t(D,[2,58],{76:$}),{5:ie,28:105,31:Te,34:j,36:Ge,38:ye,40:$e},{27:[1,112],76:$},{5:Xe,40:Ue,56:113,57:Le,59:Ie},{27:[1,118],76:$},{33:119,89:k,90:C},{33:120,89:k,90:C},{75:G,78:121,79:82,80:V,81:K,82:ee,83:H,84:he,85:Z,86:de,87:re,88:ne},t(te,[2,61]),t(te,[2,63]),t(ge,[2,68]),t(D,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:ie,28:126,31:Te,34:j,36:Ge,38:ye,40:$e},t(D,[2,28]),{5:[1,127]},t(D,[2,42]),{32:[1,128]},{32:[1,129]},{5:Xe,40:Ue,56:130,57:Le,59:Ie},t(D,[2,47]),{5:[1,131]},t(D,[2,48]),t(D,[2,49]),t(J,[2,66],{79:104,75:G,80:V,81:K,82:ee,83:H,84:he,85:Z,86:de,87:re,88:ne}),{33:132,89:k,90:C},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},t(D,[2,27]),{5:ie,28:145,31:Te,34:j,36:Ge,38:ye,40:$e},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},t(D,[2,46]),{5:Xe,40:Ue,56:152,57:Le,59:Ie},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},t(D,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},t(D,[2,43]),{5:ie,28:159,31:Te,34:j,36:Ge,38:ye,40:$e},{5:ie,28:160,31:Te,34:j,36:Ge,38:ye,40:$e},{5:ie,28:161,31:Te,34:j,36:Ge,38:ye,40:$e},{5:ie,28:162,31:Te,34:j,36:Ge,38:ye,40:$e},{5:Xe,40:Ue,56:163,57:Le,59:Ie},{5:Xe,40:Ue,56:164,57:Le,59:Ie},t(D,[2,23]),t(D,[2,24]),t(D,[2,25]),t(D,[2,26]),t(D,[2,44]),t(D,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:o(function(ce,U){if(U.recoverable)this.trace(ce);else{var ue=new Error(ce);throw ue.hash=U,ue}},"parseError"),parse:o(function(ce){var U=this,ue=[0],z=[],se=[null],oe=[],be=this.table,pe="",me=0,De=0,Ce=0,Fe=2,Ye=1,xt=oe.slice.call(arguments,1),je=Object.create(this.lexer),Pe={yy:{}};for(var rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,rt)&&(Pe.yy[rt]=this.yy[rt]);je.setInput(ce,Pe.yy),Pe.yy.lexer=je,Pe.yy.parser=this,typeof je.yylloc>"u"&&(je.yylloc={});var We=je.yylloc;oe.push(We);var ut=je.options&&je.options.ranges;typeof Pe.yy.parseError=="function"?this.parseError=Pe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ut(hr){ue.length=ue.length-2*hr,se.length=se.length-hr,oe.length=oe.length-hr}o(Ut,"popStack");function Tt(){var hr;return hr=z.pop()||je.lex()||Ye,typeof hr!="number"&&(hr instanceof Array&&(z=hr,hr=z.pop()),hr=U.symbols_[hr]||hr),hr}o(Tt,"lex");for(var Mt,mt,at,wt,St,bt,pt={},Zr,Lt,Dn,Hr;;){if(at=ue[ue.length-1],this.defaultActions[at]?wt=this.defaultActions[at]:((Mt===null||typeof Mt>"u")&&(Mt=Tt()),wt=be[at]&&be[at][Mt]),typeof wt>"u"||!wt.length||!wt[0]){var mr="";Hr=[];for(Zr in be[at])this.terminals_[Zr]&&Zr>Fe&&Hr.push("'"+this.terminals_[Zr]+"'");je.showPosition?mr="Parse error on line "+(me+1)+`: +`+je.showPosition()+` +Expecting `+Hr.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":mr="Parse error on line "+(me+1)+": Unexpected "+(Mt==Ye?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(mr,{text:je.match,token:this.terminals_[Mt]||Mt,line:je.yylineno,loc:We,expected:Hr})}if(wt[0]instanceof Array&&wt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+at+", token: "+Mt);switch(wt[0]){case 1:ue.push(Mt),se.push(je.yytext),oe.push(je.yylloc),ue.push(wt[1]),Mt=null,mt?(Mt=mt,mt=null):(De=je.yyleng,pe=je.yytext,me=je.yylineno,We=je.yylloc,Ce>0&&Ce--);break;case 2:if(Lt=this.productions_[wt[1]][1],pt.$=se[se.length-Lt],pt._$={first_line:oe[oe.length-(Lt||1)].first_line,last_line:oe[oe.length-1].last_line,first_column:oe[oe.length-(Lt||1)].first_column,last_column:oe[oe.length-1].last_column},ut&&(pt._$.range=[oe[oe.length-(Lt||1)].range[0],oe[oe.length-1].range[1]]),bt=this.performAction.apply(pt,[pe,De,me,Pe.yy,wt[1],se,oe].concat(xt)),typeof bt<"u")return bt;Lt&&(ue=ue.slice(0,-1*Lt*2),se=se.slice(0,-1*Lt),oe=oe.slice(0,-1*Lt)),ue.push(this.productions_[wt[1]][0]),se.push(pt.$),oe.push(pt._$),Dn=be[ue[ue.length-2]][ue[ue.length-1]],ue.push(Dn);break;case 3:return!0}}return!0},"parse")},Ae=(function(){var Y={EOF:1,parseError:o(function(U,ue){if(this.yy.parser)this.yy.parser.parseError(U,ue);else throw new Error(U)},"parseError"),setInput:o(function(ce,U){return this.yy=U||this.yy||{},this._input=ce,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var ce=this._input[0];this.yytext+=ce,this.yyleng++,this.offset++,this.match+=ce,this.matched+=ce;var U=ce.match(/(?:\r\n?|\n).*/g);return U?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ce},"input"),unput:o(function(ce){var U=ce.length,ue=ce.split(/(?:\r\n?|\n)/g);this._input=ce+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-U),this.offset-=U;var z=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ue.length-1&&(this.yylineno-=ue.length-1);var se=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ue?(ue.length===z.length?this.yylloc.first_column:0)+z[z.length-ue.length].length-ue[0].length:this.yylloc.first_column-U},this.options.ranges&&(this.yylloc.range=[se[0],se[0]+this.yyleng-U]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(ce){this.unput(this.match.slice(ce))},"less"),pastInput:o(function(){var ce=this.matched.substr(0,this.matched.length-this.match.length);return(ce.length>20?"...":"")+ce.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var ce=this.match;return ce.length<20&&(ce+=this._input.substr(0,20-ce.length)),(ce.substr(0,20)+(ce.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var ce=this.pastInput(),U=new Array(ce.length+1).join("-");return ce+this.upcomingInput()+` +`+U+"^"},"showPosition"),test_match:o(function(ce,U){var ue,z,se;if(this.options.backtrack_lexer&&(se={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(se.yylloc.range=this.yylloc.range.slice(0))),z=ce[0].match(/(?:\r\n?|\n).*/g),z&&(this.yylineno+=z.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:z?z[z.length-1].length-z[z.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ce[0].length},this.yytext+=ce[0],this.match+=ce[0],this.matches=ce,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ce[0].length),this.matched+=ce[0],ue=this.performAction.call(this,this.yy,this,U,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ue)return ue;if(this._backtrack){for(var oe in se)this[oe]=se[oe];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ce,U,ue,z;this._more||(this.yytext="",this.match="");for(var se=this._currentRules(),oe=0;oeU[0].length)){if(U=ue,z=oe,this.options.backtrack_lexer){if(ce=this.test_match(ue,se[oe]),ce!==!1)return ce;if(this._backtrack){U=!1;continue}else return!1}else if(!this.options.flex)break}return U?(ce=this.test_match(U,se[z]),ce!==!1?ce:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var U=this.next();return U||this.lex()},"lex"),begin:o(function(U){this.conditionStack.push(U)},"begin"),popState:o(function(){var U=this.conditionStack.length-1;return U>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(U){return U=this.conditionStack.length-1-Math.abs(U||0),U>=0?this.conditionStack[U]:"INITIAL"},"topState"),pushState:o(function(U){this.begin(U)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(U,ue,z,se){var oe=se;switch(z){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return ue.yytext=ue.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return Y})();Me.lexer=Ae;function ze(){this.yy={}}return o(ze,"Parser"),ze.prototype=Me,Me.Parser=ze,new ze})();Fq.parser=Fq;I3e=Fq});var A7,P3e=I(()=>{"use strict";Qt();gt();ki();A7=class{constructor(){this.relations=[];this.latestRequirement=this.getInitialRequirement();this.requirements=new Map;this.latestElement=this.getInitialElement();this.elements=new Map;this.classes=new Map;this.direction="TB";this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"};this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"};this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"};this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"};this.setAccTitle=zr;this.getAccTitle=Vr;this.setAccDescription=qr;this.getAccDescription=Ur;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.getConfig=o(()=>xe().requirement,"getConfig");this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,r){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:r,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){this.latestRequirement!==void 0&&(this.latestRequirement.requirementId=e)}setNewReqText(e){this.latestRequirement!==void 0&&(this.latestRequirement.text=e)}setNewReqRisk(e){this.latestRequirement!==void 0&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){this.latestRequirement!==void 0&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),X.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){this.latestElement!==void 0&&(this.latestElement.type=e)}setNewElementDocRef(e){this.latestElement!==void 0&&(this.latestElement.docRef=e)}addRelationship(e,r,n){this.relations.push({type:e,src:r,dst:n})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,Mr()}setCssStyle(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(!r||!i)return;for(let a of r)a.includes(",")?i.cssStyles.push(...a.split(",")):i.cssStyles.push(a)}}setClass(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(i)for(let a of r){i.classes.push(a);let s=this.classes.get(a)?.styles;s&&i.cssStyles.push(...s)}}}defineClass(e,r){for(let n of e){let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.requirements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))}),this.elements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))})}}getClasses(){return this.classes}getData(){let e=xe(),r=[],n=[];for(let i of this.requirements.values()){let a=i;a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),a.shape="requirementBox",a.look=e.look,r.push(a)}for(let i of this.elements.values()){let a=i;a.shape="requirementBox",a.look=e.look,a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),r.push(a)}for(let i of this.relations){let a=0,s=i.type===this.Relationships.CONTAINS,l={id:`${i.src}-${i.dst}-${a}`,start:this.requirements.get(i.src)?.name??this.elements.get(i.src)?.name,end:this.requirements.get(i.dst)?.name??this.elements.get(i.dst)?.name,label:`<<${i.type}>>`,classes:"relationshipLine",style:["fill:none",s?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:s?"normal":"dashed",arrowTypeStart:s?"requirement_contains":"",arrowTypeEnd:s?"":"requirement_arrow",look:e.look};n.push(l),a++}return{nodes:r,edges:n,other:{},config:e,direction:this.getDirection()}}}});var Yst,B3e,F3e=I(()=>{"use strict";Yst=o(t=>` marker { fill: ${t.relationColor}; @@ -1626,16 +1658,16 @@ Expecting `+Br.join(", ")+", got '"+(this.terminals_[Lt]||Lt)+"'":cr="Parse erro background-color: ${t.edgeLabelBackground}; } -`,"getStyles"),Rye=YZe});var t$={};dr(t$,{draw:()=>XZe});var XZe,Mye=M(()=>{"use strict";Xt();pt();ep();Nf();Mf();tr();XZe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing requirement diagram (unified)",e);let{securityLevel:i,state:a,layout:s}=ge(),l=n.db.getData(),u=Vo(e,i);l.type=n.type,l.layoutAlgorithm=$c(s),l.nodeSpacing=a?.nodeSpacing??50,l.rankSpacing=a?.rankSpacing??50,l.markers=["requirement_contains","requirement_arrow"],l.diagramId=e,await Qo(l,u);let h=8;qt.insertTitle(u,"requirementDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ws(u,h,"requirementDiagram",a?.useMaxWidth??!0)},"draw")});var Iye={};dr(Iye,{diagram:()=>jZe});var jZe,Oye=M(()=>{"use strict";Dye();Lye();Nye();Mye();jZe={parser:_ye,get db(){return new Z6},renderer:t$,styles:Rye}});var r$,Fye,$ye=M(()=>{"use strict";r$=(function(){var t=o(function(re,J,K,ae){for(K=K||{},ae=re.length;ae--;K[re[ae]]=J);return K},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,13],u=[1,14],h=[1,16],f=[1,17],d=[1,18],p=[1,24],m=[1,25],g=[1,26],y=[1,27],v=[1,28],x=[1,29],b=[1,30],T=[1,31],S=[1,32],w=[1,33],k=[1,34],C=[1,35],A=[1,36],L=[1,37],I=[1,38],R=[1,39],E=[1,41],_=[1,42],D=[1,43],O=[1,44],N=[1,45],P=[1,46],B=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,55,60,61,62,63,71],F=[2,71],V=[4,5,16,50,52,53],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,55,60,61,62,63,71],U=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,55,60,61,62,63,71],j=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,55,60,61,62,63,71],ee=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,55,60,61,62,63,71],q=[69,70,71],oe=[1,127],Q={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,actor_with_config:54,note:55,placement:56,text2:57,over:58,actor_pair:59,links:60,link:61,properties:62,details:63,spaceList:64,",":65,left_of:66,right_of:67,signaltype:68,"+":69,"-":70,ACTOR:71,config_object:72,CONFIG_START:73,CONFIG_CONTENT:74,CONFIG_END:75,SOLID_OPEN_ARROW:76,DOTTED_OPEN_ARROW:77,SOLID_ARROW:78,BIDIRECTIONAL_SOLID_ARROW:79,DOTTED_ARROW:80,BIDIRECTIONAL_DOTTED_ARROW:81,SOLID_CROSS:82,DOTTED_CROSS:83,SOLID_POINT:84,DOTTED_POINT:85,TXT:86,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",55:"note",58:"over",60:"links",61:"link",62:"properties",63:"details",65:",",66:"left_of",67:"right_of",69:"+",70:"-",71:"ACTOR",73:"CONFIG_START",74:"CONFIG_CONTENT",75:"CONFIG_END",76:"SOLID_OPEN_ARROW",77:"DOTTED_OPEN_ARROW",78:"SOLID_ARROW",79:"BIDIRECTIONAL_SOLID_ARROW",80:"DOTTED_ARROW",81:"BIDIRECTIONAL_DOTTED_ARROW",82:"SOLID_CROSS",83:"DOTTED_CROSS",84:"SOLID_POINT",85:"DOTTED_POINT",86:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[64,2],[64,1],[59,3],[59,1],[56,1],[56,1],[17,5],[17,5],[17,4],[54,2],[72,3],[22,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[57,1]],performAction:o(function(J,K,ae,Z,de,ne,Te){var W=ne.length-1;switch(de){case 3:return Z.apply(ne[W]),ne[W];break;case 4:case 9:this.$=[];break;case 5:case 10:ne[W-1].push(ne[W]),this.$=ne[W-1];break;case 6:case 7:case 11:case 12:this.$=ne[W];break;case 8:case 13:this.$=[];break;case 15:ne[W].type="createParticipant",this.$=ne[W];break;case 16:ne[W-1].unshift({type:"boxStart",boxData:Z.parseBoxData(ne[W-2])}),ne[W-1].push({type:"boxEnd",boxText:ne[W-2]}),this.$=ne[W-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(ne[W-2]),sequenceIndexStep:Number(ne[W-1]),sequenceVisible:!0,signalType:Z.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(ne[W-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:Z.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:Z.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:Z.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:Z.LINETYPE.ACTIVE_START,actor:ne[W-1].actor};break;case 23:this.$={type:"activeEnd",signalType:Z.LINETYPE.ACTIVE_END,actor:ne[W-1].actor};break;case 29:Z.setDiagramTitle(ne[W].substring(6)),this.$=ne[W].substring(6);break;case 30:Z.setDiagramTitle(ne[W].substring(7)),this.$=ne[W].substring(7);break;case 31:this.$=ne[W].trim(),Z.setAccTitle(this.$);break;case 32:case 33:this.$=ne[W].trim(),Z.setAccDescription(this.$);break;case 34:ne[W-1].unshift({type:"loopStart",loopText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.LOOP_START}),ne[W-1].push({type:"loopEnd",loopText:ne[W-2],signalType:Z.LINETYPE.LOOP_END}),this.$=ne[W-1];break;case 35:ne[W-1].unshift({type:"rectStart",color:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.RECT_START}),ne[W-1].push({type:"rectEnd",color:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.RECT_END}),this.$=ne[W-1];break;case 36:ne[W-1].unshift({type:"optStart",optText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.OPT_START}),ne[W-1].push({type:"optEnd",optText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.OPT_END}),this.$=ne[W-1];break;case 37:ne[W-1].unshift({type:"altStart",altText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.ALT_START}),ne[W-1].push({type:"altEnd",signalType:Z.LINETYPE.ALT_END}),this.$=ne[W-1];break;case 38:ne[W-1].unshift({type:"parStart",parText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.PAR_START}),ne[W-1].push({type:"parEnd",signalType:Z.LINETYPE.PAR_END}),this.$=ne[W-1];break;case 39:ne[W-1].unshift({type:"parStart",parText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.PAR_OVER_START}),ne[W-1].push({type:"parEnd",signalType:Z.LINETYPE.PAR_END}),this.$=ne[W-1];break;case 40:ne[W-1].unshift({type:"criticalStart",criticalText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.CRITICAL_START}),ne[W-1].push({type:"criticalEnd",signalType:Z.LINETYPE.CRITICAL_END}),this.$=ne[W-1];break;case 41:ne[W-1].unshift({type:"breakStart",breakText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.BREAK_START}),ne[W-1].push({type:"breakEnd",optText:Z.parseMessage(ne[W-2]),signalType:Z.LINETYPE.BREAK_END}),this.$=ne[W-1];break;case 43:this.$=ne[W-3].concat([{type:"option",optionText:Z.parseMessage(ne[W-1]),signalType:Z.LINETYPE.CRITICAL_OPTION},ne[W]]);break;case 45:this.$=ne[W-3].concat([{type:"and",parText:Z.parseMessage(ne[W-1]),signalType:Z.LINETYPE.PAR_AND},ne[W]]);break;case 47:this.$=ne[W-3].concat([{type:"else",altText:Z.parseMessage(ne[W-1]),signalType:Z.LINETYPE.ALT_ELSE},ne[W]]);break;case 48:ne[W-3].draw="participant",ne[W-3].type="addParticipant",ne[W-3].description=Z.parseMessage(ne[W-1]),this.$=ne[W-3];break;case 49:ne[W-1].draw="participant",ne[W-1].type="addParticipant",this.$=ne[W-1];break;case 50:ne[W-3].draw="actor",ne[W-3].type="addParticipant",ne[W-3].description=Z.parseMessage(ne[W-1]),this.$=ne[W-3];break;case 51:ne[W-1].draw="actor",ne[W-1].type="addParticipant",this.$=ne[W-1];break;case 52:ne[W-1].type="destroyParticipant",this.$=ne[W-1];break;case 53:ne[W-1].draw="participant",ne[W-1].type="addParticipant",this.$=ne[W-1];break;case 54:this.$=[ne[W-1],{type:"addNote",placement:ne[W-2],actor:ne[W-1].actor,text:ne[W]}];break;case 55:ne[W-2]=[].concat(ne[W-1],ne[W-1]).slice(0,2),ne[W-2][0]=ne[W-2][0].actor,ne[W-2][1]=ne[W-2][1].actor,this.$=[ne[W-1],{type:"addNote",placement:Z.PLACEMENT.OVER,actor:ne[W-2].slice(0,2),text:ne[W]}];break;case 56:this.$=[ne[W-1],{type:"addLinks",actor:ne[W-1].actor,text:ne[W]}];break;case 57:this.$=[ne[W-1],{type:"addALink",actor:ne[W-1].actor,text:ne[W]}];break;case 58:this.$=[ne[W-1],{type:"addProperties",actor:ne[W-1].actor,text:ne[W]}];break;case 59:this.$=[ne[W-1],{type:"addDetails",actor:ne[W-1].actor,text:ne[W]}];break;case 62:this.$=[ne[W-2],ne[W]];break;case 63:this.$=ne[W];break;case 64:this.$=Z.PLACEMENT.LEFTOF;break;case 65:this.$=Z.PLACEMENT.RIGHTOF;break;case 66:this.$=[ne[W-4],ne[W-1],{type:"addMessage",from:ne[W-4].actor,to:ne[W-1].actor,signalType:ne[W-3],msg:ne[W],activate:!0},{type:"activeStart",signalType:Z.LINETYPE.ACTIVE_START,actor:ne[W-1].actor}];break;case 67:this.$=[ne[W-4],ne[W-1],{type:"addMessage",from:ne[W-4].actor,to:ne[W-1].actor,signalType:ne[W-3],msg:ne[W]},{type:"activeEnd",signalType:Z.LINETYPE.ACTIVE_END,actor:ne[W-4].actor}];break;case 68:this.$=[ne[W-3],ne[W-1],{type:"addMessage",from:ne[W-3].actor,to:ne[W-1].actor,signalType:ne[W-2],msg:ne[W]}];break;case 69:this.$={type:"addParticipant",actor:ne[W-1],config:ne[W]};break;case 70:this.$=ne[W-1].trim();break;case 71:this.$={type:"addParticipant",actor:ne[W]};break;case 72:this.$=Z.LINETYPE.SOLID_OPEN;break;case 73:this.$=Z.LINETYPE.DOTTED_OPEN;break;case 74:this.$=Z.LINETYPE.SOLID;break;case 75:this.$=Z.LINETYPE.BIDIRECTIONAL_SOLID;break;case 76:this.$=Z.LINETYPE.DOTTED;break;case 77:this.$=Z.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 78:this.$=Z.LINETYPE.SOLID_CROSS;break;case 79:this.$=Z.LINETYPE.DOTTED_CROSS;break;case 80:this.$=Z.LINETYPE.SOLID_POINT;break;case 81:this.$=Z.LINETYPE.DOTTED_POINT;break;case 82:this.$=Z.parseMessage(ne[W].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,55,60,61,62,63,71],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},t(B,[2,5]),{9:47,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},t(B,[2,7]),t(B,[2,8]),t(B,[2,14]),{12:48,50:L,52:I,53:R},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,71:P},{22:55,71:P},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(B,[2,29]),t(B,[2,30]),{32:[1,61]},{34:[1,62]},t(B,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,54:72,71:[1,73]},{22:74,71:P},{22:75,71:P},{68:76,76:[1,77],77:[1,78],78:[1,79],79:[1,80],80:[1,81],81:[1,82],82:[1,83],83:[1,84],84:[1,85],85:[1,86]},{56:87,58:[1,88],66:[1,89],67:[1,90]},{22:91,71:P},{22:92,71:P},{22:93,71:P},{22:94,71:P},t([5,51,65,76,77,78,79,80,81,82,83,84,85,86],F),t(B,[2,6]),t(B,[2,15]),t(V,[2,9],{10:95}),t(B,[2,17]),{5:[1,97],19:[1,96]},{5:[1,98]},t(B,[2,21]),{5:[1,99]},{5:[1,100]},t(B,[2,24]),t(B,[2,25]),t(B,[2,26]),t(B,[2,27]),t(B,[2,28]),t(B,[2,31]),t(B,[2,32]),t($,i,{7:101}),t($,i,{7:102}),t($,i,{7:103}),t(U,i,{40:104,7:105}),t(j,i,{42:106,7:107}),t(j,i,{7:107,42:108}),t(ee,i,{45:109,7:110}),t($,i,{7:111}),{5:[1,113],51:[1,112]},{5:[1,114]},t([5,51],F,{72:115,73:[1,116]}),{5:[1,118],51:[1,117]},{5:[1,119]},{22:122,69:[1,120],70:[1,121],71:P},t(q,[2,72]),t(q,[2,73]),t(q,[2,74]),t(q,[2,75]),t(q,[2,76]),t(q,[2,77]),t(q,[2,78]),t(q,[2,79]),t(q,[2,80]),t(q,[2,81]),{22:123,71:P},{22:125,59:124,71:P},{71:[2,64]},{71:[2,65]},{57:126,86:oe},{57:128,86:oe},{57:129,86:oe},{57:130,86:oe},{4:[1,133],5:[1,135],11:132,12:134,16:[1,131],50:L,52:I,53:R},{5:[1,136]},t(B,[2,19]),t(B,[2,20]),t(B,[2,22]),t(B,[2,23]),{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,137],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,138],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,139],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{16:[1,140]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,46],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,49:[1,141],50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{16:[1,142]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,44],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,48:[1,143],50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{16:[1,144]},{16:[1,145]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,42],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,47:[1,146],50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,147],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:S,41:w,43:k,44:C,46:A,50:L,52:I,53:R,55:E,60:_,61:D,62:O,63:N,71:P},{15:[1,148]},t(B,[2,49]),t(B,[2,53]),{5:[2,69]},{74:[1,149]},{15:[1,150]},t(B,[2,51]),t(B,[2,52]),{22:151,71:P},{22:152,71:P},{57:153,86:oe},{57:154,86:oe},{57:155,86:oe},{65:[1,156],86:[2,63]},{5:[2,56]},{5:[2,82]},{5:[2,57]},{5:[2,58]},{5:[2,59]},t(B,[2,16]),t(V,[2,10]),{12:157,50:L,52:I,53:R},t(V,[2,12]),t(V,[2,13]),t(B,[2,18]),t(B,[2,34]),t(B,[2,35]),t(B,[2,36]),t(B,[2,37]),{15:[1,158]},t(B,[2,38]),{15:[1,159]},t(B,[2,39]),t(B,[2,40]),{15:[1,160]},t(B,[2,41]),{5:[1,161]},{75:[1,162]},{5:[1,163]},{57:164,86:oe},{57:165,86:oe},{5:[2,68]},{5:[2,54]},{5:[2,55]},{22:166,71:P},t(V,[2,11]),t(U,i,{7:105,40:167}),t(j,i,{7:107,42:168}),t(ee,i,{7:110,45:169}),t(B,[2,48]),{5:[2,70]},t(B,[2,50]),{5:[2,66]},{5:[2,67]},{86:[2,62]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],89:[2,64],90:[2,65],115:[2,69],126:[2,56],127:[2,82],128:[2,57],129:[2,58],130:[2,59],153:[2,68],154:[2,54],155:[2,55],162:[2,70],164:[2,66],165:[2,67],166:[2,62],167:[2,47],168:[2,45],169:[2,43]},parseError:o(function(J,K){if(K.recoverable)this.trace(J);else{var ae=new Error(J);throw ae.hash=K,ae}},"parseError"),parse:o(function(J){var K=this,ae=[0],Z=[],de=[null],ne=[],Te=this.table,W="",Ve=0,pe=0,Be=0,Ye=2,He=1,Le=ne.slice.call(arguments,1),Ie=Object.create(this.lexer),Ne={yy:{}};for(var Ce in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ce)&&(Ne.yy[Ce]=this.yy[Ce]);Ie.setInput(J,Ne.yy),Ne.yy.lexer=Ie,Ne.yy.parser=this,typeof Ie.yylloc>"u"&&(Ie.yylloc={});var Fe=Ie.yylloc;ne.push(Fe);var fe=Ie.options&&Ie.options.ranges;typeof Ne.yy.parseError=="function"?this.parseError=Ne.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xe(We){ae.length=ae.length-2*We,de.length=de.length-We,ne.length=ne.length-We}o(xe,"popStack");function Y(){var We;return We=Z.pop()||Ie.lex()||He,typeof We!="number"&&(We instanceof Array&&(Z=We,We=Z.pop()),We=K.symbols_[We]||We),We}o(Y,"lex");for(var he,z,se,le,ke,ve,ye={},Re,_e,ze,Ke;;){if(se=ae[ae.length-1],this.defaultActions[se]?le=this.defaultActions[se]:((he===null||typeof he>"u")&&(he=Y()),le=Te[se]&&Te[se][he]),typeof le>"u"||!le.length||!le[0]){var xt="";Ke=[];for(Re in Te[se])this.terminals_[Re]&&Re>Ye&&Ke.push("'"+this.terminals_[Re]+"'");Ie.showPosition?xt="Parse error on line "+(Ve+1)+`: +`,"getStyles"),B3e=Yst});var $q={};vr($q,{draw:()=>jst});var jst,$3e=I(()=>{"use strict";Qt();gt();y0();Cd();Ad();sr();jst=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing requirement diagram (unified)",e);let{securityLevel:i,state:a,layout:s}=xe(),l=n.db.getData(),u=xl(e,i);l.type=n.type,l.layoutAlgorithm=ku(s),l.nodeSpacing=a?.nodeSpacing??50,l.rankSpacing=a?.rankSpacing??50,l.markers=["requirement_contains","requirement_arrow"],l.diagramId=e,await _l(l,u);let h=8;jt.insertTitle(u,"requirementDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),mo(u,h,"requirementDiagram",a?.useMaxWidth??!0)},"draw")});var z3e={};vr(z3e,{diagram:()=>Xst});var Xst,G3e=I(()=>{"use strict";O3e();P3e();F3e();$3e();Xst={parser:I3e,get db(){return new A7},renderer:$q,styles:B3e}});var zq,U3e,W3e=I(()=>{"use strict";zq=(function(){var t=o(function(ne,te,Q,le){for(Q=Q||{},le=ne.length;le--;Q[ne[le]]=te);return Q},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,13],u=[1,14],h=[1,16],f=[1,17],d=[1,18],p=[1,24],m=[1,25],g=[1,26],y=[1,27],v=[1,28],x=[1,29],b=[1,30],T=[1,31],E=[1,32],w=[1,33],k=[1,34],C=[1,35],D=[1,36],R=[1,37],O=[1,38],L=[1,39],S=[1,41],A=[1,42],_=[1,43],N=[1,44],M=[1,45],P=[1,46],B=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,55,60,61,62,63,71],F=[2,71],G=[4,5,16,50,52,53],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,55,60,61,62,63,71],V=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,55,60,61,62,63,71],K=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,55,60,61,62,63,71],ee=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,55,60,61,62,63,71],H=[69,70,71],he=[1,127],Z={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,actor_with_config:54,note:55,placement:56,text2:57,over:58,actor_pair:59,links:60,link:61,properties:62,details:63,spaceList:64,",":65,left_of:66,right_of:67,signaltype:68,"+":69,"-":70,ACTOR:71,config_object:72,CONFIG_START:73,CONFIG_CONTENT:74,CONFIG_END:75,SOLID_OPEN_ARROW:76,DOTTED_OPEN_ARROW:77,SOLID_ARROW:78,BIDIRECTIONAL_SOLID_ARROW:79,DOTTED_ARROW:80,BIDIRECTIONAL_DOTTED_ARROW:81,SOLID_CROSS:82,DOTTED_CROSS:83,SOLID_POINT:84,DOTTED_POINT:85,TXT:86,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",55:"note",58:"over",60:"links",61:"link",62:"properties",63:"details",65:",",66:"left_of",67:"right_of",69:"+",70:"-",71:"ACTOR",73:"CONFIG_START",74:"CONFIG_CONTENT",75:"CONFIG_END",76:"SOLID_OPEN_ARROW",77:"DOTTED_OPEN_ARROW",78:"SOLID_ARROW",79:"BIDIRECTIONAL_SOLID_ARROW",80:"DOTTED_ARROW",81:"BIDIRECTIONAL_DOTTED_ARROW",82:"SOLID_CROSS",83:"DOTTED_CROSS",84:"SOLID_POINT",85:"DOTTED_POINT",86:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[64,2],[64,1],[59,3],[59,1],[56,1],[56,1],[17,5],[17,5],[17,4],[54,2],[72,3],[22,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[57,1]],performAction:o(function(te,Q,le,J,ge,ie,Te){var j=ie.length-1;switch(ge){case 3:return J.apply(ie[j]),ie[j];break;case 4:case 9:this.$=[];break;case 5:case 10:ie[j-1].push(ie[j]),this.$=ie[j-1];break;case 6:case 7:case 11:case 12:this.$=ie[j];break;case 8:case 13:this.$=[];break;case 15:ie[j].type="createParticipant",this.$=ie[j];break;case 16:ie[j-1].unshift({type:"boxStart",boxData:J.parseBoxData(ie[j-2])}),ie[j-1].push({type:"boxEnd",boxText:ie[j-2]}),this.$=ie[j-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(ie[j-2]),sequenceIndexStep:Number(ie[j-1]),sequenceVisible:!0,signalType:J.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(ie[j-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:J.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:J.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:J.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:J.LINETYPE.ACTIVE_START,actor:ie[j-1].actor};break;case 23:this.$={type:"activeEnd",signalType:J.LINETYPE.ACTIVE_END,actor:ie[j-1].actor};break;case 29:J.setDiagramTitle(ie[j].substring(6)),this.$=ie[j].substring(6);break;case 30:J.setDiagramTitle(ie[j].substring(7)),this.$=ie[j].substring(7);break;case 31:this.$=ie[j].trim(),J.setAccTitle(this.$);break;case 32:case 33:this.$=ie[j].trim(),J.setAccDescription(this.$);break;case 34:ie[j-1].unshift({type:"loopStart",loopText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.LOOP_START}),ie[j-1].push({type:"loopEnd",loopText:ie[j-2],signalType:J.LINETYPE.LOOP_END}),this.$=ie[j-1];break;case 35:ie[j-1].unshift({type:"rectStart",color:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.RECT_START}),ie[j-1].push({type:"rectEnd",color:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.RECT_END}),this.$=ie[j-1];break;case 36:ie[j-1].unshift({type:"optStart",optText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.OPT_START}),ie[j-1].push({type:"optEnd",optText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.OPT_END}),this.$=ie[j-1];break;case 37:ie[j-1].unshift({type:"altStart",altText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.ALT_START}),ie[j-1].push({type:"altEnd",signalType:J.LINETYPE.ALT_END}),this.$=ie[j-1];break;case 38:ie[j-1].unshift({type:"parStart",parText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.PAR_START}),ie[j-1].push({type:"parEnd",signalType:J.LINETYPE.PAR_END}),this.$=ie[j-1];break;case 39:ie[j-1].unshift({type:"parStart",parText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.PAR_OVER_START}),ie[j-1].push({type:"parEnd",signalType:J.LINETYPE.PAR_END}),this.$=ie[j-1];break;case 40:ie[j-1].unshift({type:"criticalStart",criticalText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.CRITICAL_START}),ie[j-1].push({type:"criticalEnd",signalType:J.LINETYPE.CRITICAL_END}),this.$=ie[j-1];break;case 41:ie[j-1].unshift({type:"breakStart",breakText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.BREAK_START}),ie[j-1].push({type:"breakEnd",optText:J.parseMessage(ie[j-2]),signalType:J.LINETYPE.BREAK_END}),this.$=ie[j-1];break;case 43:this.$=ie[j-3].concat([{type:"option",optionText:J.parseMessage(ie[j-1]),signalType:J.LINETYPE.CRITICAL_OPTION},ie[j]]);break;case 45:this.$=ie[j-3].concat([{type:"and",parText:J.parseMessage(ie[j-1]),signalType:J.LINETYPE.PAR_AND},ie[j]]);break;case 47:this.$=ie[j-3].concat([{type:"else",altText:J.parseMessage(ie[j-1]),signalType:J.LINETYPE.ALT_ELSE},ie[j]]);break;case 48:ie[j-3].draw="participant",ie[j-3].type="addParticipant",ie[j-3].description=J.parseMessage(ie[j-1]),this.$=ie[j-3];break;case 49:ie[j-1].draw="participant",ie[j-1].type="addParticipant",this.$=ie[j-1];break;case 50:ie[j-3].draw="actor",ie[j-3].type="addParticipant",ie[j-3].description=J.parseMessage(ie[j-1]),this.$=ie[j-3];break;case 51:ie[j-1].draw="actor",ie[j-1].type="addParticipant",this.$=ie[j-1];break;case 52:ie[j-1].type="destroyParticipant",this.$=ie[j-1];break;case 53:ie[j-1].draw="participant",ie[j-1].type="addParticipant",this.$=ie[j-1];break;case 54:this.$=[ie[j-1],{type:"addNote",placement:ie[j-2],actor:ie[j-1].actor,text:ie[j]}];break;case 55:ie[j-2]=[].concat(ie[j-1],ie[j-1]).slice(0,2),ie[j-2][0]=ie[j-2][0].actor,ie[j-2][1]=ie[j-2][1].actor,this.$=[ie[j-1],{type:"addNote",placement:J.PLACEMENT.OVER,actor:ie[j-2].slice(0,2),text:ie[j]}];break;case 56:this.$=[ie[j-1],{type:"addLinks",actor:ie[j-1].actor,text:ie[j]}];break;case 57:this.$=[ie[j-1],{type:"addALink",actor:ie[j-1].actor,text:ie[j]}];break;case 58:this.$=[ie[j-1],{type:"addProperties",actor:ie[j-1].actor,text:ie[j]}];break;case 59:this.$=[ie[j-1],{type:"addDetails",actor:ie[j-1].actor,text:ie[j]}];break;case 62:this.$=[ie[j-2],ie[j]];break;case 63:this.$=ie[j];break;case 64:this.$=J.PLACEMENT.LEFTOF;break;case 65:this.$=J.PLACEMENT.RIGHTOF;break;case 66:this.$=[ie[j-4],ie[j-1],{type:"addMessage",from:ie[j-4].actor,to:ie[j-1].actor,signalType:ie[j-3],msg:ie[j],activate:!0},{type:"activeStart",signalType:J.LINETYPE.ACTIVE_START,actor:ie[j-1].actor}];break;case 67:this.$=[ie[j-4],ie[j-1],{type:"addMessage",from:ie[j-4].actor,to:ie[j-1].actor,signalType:ie[j-3],msg:ie[j]},{type:"activeEnd",signalType:J.LINETYPE.ACTIVE_END,actor:ie[j-4].actor}];break;case 68:this.$=[ie[j-3],ie[j-1],{type:"addMessage",from:ie[j-3].actor,to:ie[j-1].actor,signalType:ie[j-2],msg:ie[j]}];break;case 69:this.$={type:"addParticipant",actor:ie[j-1],config:ie[j]};break;case 70:this.$=ie[j-1].trim();break;case 71:this.$={type:"addParticipant",actor:ie[j]};break;case 72:this.$=J.LINETYPE.SOLID_OPEN;break;case 73:this.$=J.LINETYPE.DOTTED_OPEN;break;case 74:this.$=J.LINETYPE.SOLID;break;case 75:this.$=J.LINETYPE.BIDIRECTIONAL_SOLID;break;case 76:this.$=J.LINETYPE.DOTTED;break;case 77:this.$=J.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 78:this.$=J.LINETYPE.SOLID_CROSS;break;case 79:this.$=J.LINETYPE.DOTTED_CROSS;break;case 80:this.$=J.LINETYPE.SOLID_POINT;break;case 81:this.$=J.LINETYPE.DOTTED_POINT;break;case 82:this.$=J.parseMessage(ie[j].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,55,60,61,62,63,71],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},t(B,[2,5]),{9:47,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},t(B,[2,7]),t(B,[2,8]),t(B,[2,14]),{12:48,50:R,52:O,53:L},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,71:P},{22:55,71:P},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(B,[2,29]),t(B,[2,30]),{32:[1,61]},{34:[1,62]},t(B,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,54:72,71:[1,73]},{22:74,71:P},{22:75,71:P},{68:76,76:[1,77],77:[1,78],78:[1,79],79:[1,80],80:[1,81],81:[1,82],82:[1,83],83:[1,84],84:[1,85],85:[1,86]},{56:87,58:[1,88],66:[1,89],67:[1,90]},{22:91,71:P},{22:92,71:P},{22:93,71:P},{22:94,71:P},t([5,51,65,76,77,78,79,80,81,82,83,84,85,86],F),t(B,[2,6]),t(B,[2,15]),t(G,[2,9],{10:95}),t(B,[2,17]),{5:[1,97],19:[1,96]},{5:[1,98]},t(B,[2,21]),{5:[1,99]},{5:[1,100]},t(B,[2,24]),t(B,[2,25]),t(B,[2,26]),t(B,[2,27]),t(B,[2,28]),t(B,[2,31]),t(B,[2,32]),t($,i,{7:101}),t($,i,{7:102}),t($,i,{7:103}),t(V,i,{40:104,7:105}),t(K,i,{42:106,7:107}),t(K,i,{7:107,42:108}),t(ee,i,{45:109,7:110}),t($,i,{7:111}),{5:[1,113],51:[1,112]},{5:[1,114]},t([5,51],F,{72:115,73:[1,116]}),{5:[1,118],51:[1,117]},{5:[1,119]},{22:122,69:[1,120],70:[1,121],71:P},t(H,[2,72]),t(H,[2,73]),t(H,[2,74]),t(H,[2,75]),t(H,[2,76]),t(H,[2,77]),t(H,[2,78]),t(H,[2,79]),t(H,[2,80]),t(H,[2,81]),{22:123,71:P},{22:125,59:124,71:P},{71:[2,64]},{71:[2,65]},{57:126,86:he},{57:128,86:he},{57:129,86:he},{57:130,86:he},{4:[1,133],5:[1,135],11:132,12:134,16:[1,131],50:R,52:O,53:L},{5:[1,136]},t(B,[2,19]),t(B,[2,20]),t(B,[2,22]),t(B,[2,23]),{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,137],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,138],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,139],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{16:[1,140]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,46],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,49:[1,141],50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{16:[1,142]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,44],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,48:[1,143],50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{16:[1,144]},{16:[1,145]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,42],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,47:[1,146],50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,147],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:T,39:E,41:w,43:k,44:C,46:D,50:R,52:O,53:L,55:S,60:A,61:_,62:N,63:M,71:P},{15:[1,148]},t(B,[2,49]),t(B,[2,53]),{5:[2,69]},{74:[1,149]},{15:[1,150]},t(B,[2,51]),t(B,[2,52]),{22:151,71:P},{22:152,71:P},{57:153,86:he},{57:154,86:he},{57:155,86:he},{65:[1,156],86:[2,63]},{5:[2,56]},{5:[2,82]},{5:[2,57]},{5:[2,58]},{5:[2,59]},t(B,[2,16]),t(G,[2,10]),{12:157,50:R,52:O,53:L},t(G,[2,12]),t(G,[2,13]),t(B,[2,18]),t(B,[2,34]),t(B,[2,35]),t(B,[2,36]),t(B,[2,37]),{15:[1,158]},t(B,[2,38]),{15:[1,159]},t(B,[2,39]),t(B,[2,40]),{15:[1,160]},t(B,[2,41]),{5:[1,161]},{75:[1,162]},{5:[1,163]},{57:164,86:he},{57:165,86:he},{5:[2,68]},{5:[2,54]},{5:[2,55]},{22:166,71:P},t(G,[2,11]),t(V,i,{7:105,40:167}),t(K,i,{7:107,42:168}),t(ee,i,{7:110,45:169}),t(B,[2,48]),{5:[2,70]},t(B,[2,50]),{5:[2,66]},{5:[2,67]},{86:[2,62]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],89:[2,64],90:[2,65],115:[2,69],126:[2,56],127:[2,82],128:[2,57],129:[2,58],130:[2,59],153:[2,68],154:[2,54],155:[2,55],162:[2,70],164:[2,66],165:[2,67],166:[2,62],167:[2,47],168:[2,45],169:[2,43]},parseError:o(function(te,Q){if(Q.recoverable)this.trace(te);else{var le=new Error(te);throw le.hash=Q,le}},"parseError"),parse:o(function(te){var Q=this,le=[0],J=[],ge=[null],ie=[],Te=this.table,j="",Ge=0,ye=0,$e=0,Xe=2,Ue=1,Le=ie.slice.call(arguments,1),Ie=Object.create(this.lexer),Me={yy:{}};for(var Ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ae)&&(Me.yy[Ae]=this.yy[Ae]);Ie.setInput(te,Me.yy),Me.yy.lexer=Ie,Me.yy.parser=this,typeof Ie.yylloc>"u"&&(Ie.yylloc={});var ze=Ie.yylloc;ie.push(ze);var Y=Ie.options&&Ie.options.ranges;typeof Me.yy.parseError=="function"?this.parseError=Me.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ce(je){le.length=le.length-2*je,ge.length=ge.length-je,ie.length=ie.length-je}o(ce,"popStack");function U(){var je;return je=J.pop()||Ie.lex()||Ue,typeof je!="number"&&(je instanceof Array&&(J=je,je=J.pop()),je=Q.symbols_[je]||je),je}o(U,"lex");for(var ue,z,se,oe,be,pe,me={},De,Ce,Fe,Ye;;){if(se=le[le.length-1],this.defaultActions[se]?oe=this.defaultActions[se]:((ue===null||typeof ue>"u")&&(ue=U()),oe=Te[se]&&Te[se][ue]),typeof oe>"u"||!oe.length||!oe[0]){var xt="";Ye=[];for(De in Te[se])this.terminals_[De]&&De>Xe&&Ye.push("'"+this.terminals_[De]+"'");Ie.showPosition?xt="Parse error on line "+(Ge+1)+`: `+Ie.showPosition()+` -Expecting `+Ke.join(", ")+", got '"+(this.terminals_[he]||he)+"'":xt="Parse error on line "+(Ve+1)+": Unexpected "+(he==He?"end of input":"'"+(this.terminals_[he]||he)+"'"),this.parseError(xt,{text:Ie.match,token:this.terminals_[he]||he,line:Ie.yylineno,loc:Fe,expected:Ke})}if(le[0]instanceof Array&&le.length>1)throw new Error("Parse Error: multiple actions possible at state: "+se+", token: "+he);switch(le[0]){case 1:ae.push(he),de.push(Ie.yytext),ne.push(Ie.yylloc),ae.push(le[1]),he=null,z?(he=z,z=null):(pe=Ie.yyleng,W=Ie.yytext,Ve=Ie.yylineno,Fe=Ie.yylloc,Be>0&&Be--);break;case 2:if(_e=this.productions_[le[1]][1],ye.$=de[de.length-_e],ye._$={first_line:ne[ne.length-(_e||1)].first_line,last_line:ne[ne.length-1].last_line,first_column:ne[ne.length-(_e||1)].first_column,last_column:ne[ne.length-1].last_column},fe&&(ye._$.range=[ne[ne.length-(_e||1)].range[0],ne[ne.length-1].range[1]]),ve=this.performAction.apply(ye,[W,pe,Ve,Ne.yy,le[1],de,ne].concat(Le)),typeof ve<"u")return ve;_e&&(ae=ae.slice(0,-1*_e*2),de=de.slice(0,-1*_e),ne=ne.slice(0,-1*_e)),ae.push(this.productions_[le[1]][0]),de.push(ye.$),ne.push(ye._$),ze=Te[ae[ae.length-2]][ae[ae.length-1]],ae.push(ze);break;case 3:return!0}}return!0},"parse")},ue=(function(){var re={EOF:1,parseError:o(function(K,ae){if(this.yy.parser)this.yy.parser.parseError(K,ae);else throw new Error(K)},"parseError"),setInput:o(function(J,K){return this.yy=K||this.yy||{},this._input=J,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var J=this._input[0];this.yytext+=J,this.yyleng++,this.offset++,this.match+=J,this.matched+=J;var K=J.match(/(?:\r\n?|\n).*/g);return K?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),J},"input"),unput:o(function(J){var K=J.length,ae=J.split(/(?:\r\n?|\n)/g);this._input=J+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-K),this.offset-=K;var Z=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ae.length-1&&(this.yylineno-=ae.length-1);var de=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ae?(ae.length===Z.length?this.yylloc.first_column:0)+Z[Z.length-ae.length].length-ae[0].length:this.yylloc.first_column-K},this.options.ranges&&(this.yylloc.range=[de[0],de[0]+this.yyleng-K]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(J){this.unput(this.match.slice(J))},"less"),pastInput:o(function(){var J=this.matched.substr(0,this.matched.length-this.match.length);return(J.length>20?"...":"")+J.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var J=this.match;return J.length<20&&(J+=this._input.substr(0,20-J.length)),(J.substr(0,20)+(J.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var J=this.pastInput(),K=new Array(J.length+1).join("-");return J+this.upcomingInput()+` -`+K+"^"},"showPosition"),test_match:o(function(J,K){var ae,Z,de;if(this.options.backtrack_lexer&&(de={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(de.yylloc.range=this.yylloc.range.slice(0))),Z=J[0].match(/(?:\r\n?|\n).*/g),Z&&(this.yylineno+=Z.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Z?Z[Z.length-1].length-Z[Z.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+J[0].length},this.yytext+=J[0],this.match+=J[0],this.matches=J,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(J[0].length),this.matched+=J[0],ae=this.performAction.call(this,this.yy,this,K,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ae)return ae;if(this._backtrack){for(var ne in de)this[ne]=de[ne];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var J,K,ae,Z;this._more||(this.yytext="",this.match="");for(var de=this._currentRules(),ne=0;neK[0].length)){if(K=ae,Z=ne,this.options.backtrack_lexer){if(J=this.test_match(ae,de[ne]),J!==!1)return J;if(this._backtrack){K=!1;continue}else return!1}else if(!this.options.flex)break}return K?(J=this.test_match(K,de[Z]),J!==!1?J:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var K=this.next();return K||this.lex()},"lex"),begin:o(function(K){this.conditionStack.push(K)},"begin"),popState:o(function(){var K=this.conditionStack.length-1;return K>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(K){return K=this.conditionStack.length-1-Math.abs(K||0),K>=0?this.conditionStack[K]:"INITIAL"},"topState"),pushState:o(function(K){this.begin(K)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(K,ae,Z,de){var ne=de;switch(Z){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("CONFIG"),73;break;case 8:return 74;case 9:return this.popState(),this.popState(),75;break;case 10:return ae.yytext=ae.yytext.trim(),71;break;case 11:return ae.yytext=ae.yytext.trim(),this.begin("ALIAS"),71;break;case 12:return this.begin("LINE"),14;break;case 13:return this.begin("ID"),50;break;case 14:return this.begin("ID"),52;break;case 15:return 13;case 16:return this.begin("ID"),53;break;case 17:return ae.yytext=ae.yytext.trim(),this.begin("ALIAS"),71;break;case 18:return this.popState(),this.popState(),this.begin("LINE"),51;break;case 19:return this.popState(),this.popState(),5;break;case 20:return this.begin("LINE"),36;break;case 21:return this.begin("LINE"),37;break;case 22:return this.begin("LINE"),38;break;case 23:return this.begin("LINE"),39;break;case 24:return this.begin("LINE"),49;break;case 25:return this.begin("LINE"),41;break;case 26:return this.begin("LINE"),43;break;case 27:return this.begin("LINE"),48;break;case 28:return this.begin("LINE"),44;break;case 29:return this.begin("LINE"),47;break;case 30:return this.begin("LINE"),46;break;case 31:return this.popState(),15;break;case 32:return 16;case 33:return 66;case 34:return 67;case 35:return 60;case 36:return 61;case 37:return 62;case 38:return 63;case 39:return 58;case 40:return 55;case 41:return this.begin("ID"),21;break;case 42:return this.begin("ID"),23;break;case 43:return 29;case 44:return 30;case 45:return this.begin("acc_title"),31;break;case 46:return this.popState(),"acc_title_value";break;case 47:return this.begin("acc_descr"),33;break;case 48:return this.popState(),"acc_descr_value";break;case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 6;case 53:return 18;case 54:return 20;case 55:return 65;case 56:return 5;case 57:return ae.yytext=ae.yytext.trim(),71;break;case 58:return 78;case 59:return 79;case 60:return 80;case 61:return 81;case 62:return 76;case 63:return 77;case 64:return 82;case 65:return 83;case 66:return 84;case 67:return 85;case 68:return 86;case 69:return 86;case 70:return 69;case 71:return 70;case 72:return 5;case 73:return"INVALID"}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^\<->\->:\n,;@]+?([\-]*[^\<->\->:\n,;@]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^<\->\->:\n,;]+?([\-]*[^<\->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[50,51],inclusive:!1},acc_descr:{rules:[48],inclusive:!1},acc_title:{rules:[46],inclusive:!1},ID:{rules:[2,3,7,10,11,17],inclusive:!1},ALIAS:{rules:[2,3,18,19],inclusive:!1},LINE:{rules:[2,3,31],inclusive:!1},CONFIG:{rules:[8,9],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,43,44,45,47,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73],inclusive:!0}}};return re})();Q.lexer=ue;function te(){this.yy={}}return o(te,"Parser"),te.prototype=Q,Q.Parser=te,new te})();r$.parser=r$;Fye=r$});var JZe,eJe,tJe,T4,J6,n$=M(()=>{"use strict";Xt();k2();pt();fF();gr();ci();JZe={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},eJe={FILLED:0,OPEN:1},tJe={LEFTOF:0,RIGHTOF:1,OVER:2},T4={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},J6=class{constructor(){this.state=new J1(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0}));this.setAccTitle=Rr;this.setAccDescription=Ir;this.setDiagramTitle=$r;this.getAccTitle=Mr;this.getAccDescription=Or;this.getDiagramTitle=Pr;this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(ge().wrap),this.LINETYPE=JZe,this.ARROWTYPE=eJe,this.PLACEMENT=tJe}static{o(this,"SequenceDB")}addBox(e){this.state.records.boxes.push({name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(e,r,n,i,a){let s=this.state.records.currentBox,l;if(a!==void 0){let h;a.includes(` +Expecting `+Ye.join(", ")+", got '"+(this.terminals_[ue]||ue)+"'":xt="Parse error on line "+(Ge+1)+": Unexpected "+(ue==Ue?"end of input":"'"+(this.terminals_[ue]||ue)+"'"),this.parseError(xt,{text:Ie.match,token:this.terminals_[ue]||ue,line:Ie.yylineno,loc:ze,expected:Ye})}if(oe[0]instanceof Array&&oe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+se+", token: "+ue);switch(oe[0]){case 1:le.push(ue),ge.push(Ie.yytext),ie.push(Ie.yylloc),le.push(oe[1]),ue=null,z?(ue=z,z=null):(ye=Ie.yyleng,j=Ie.yytext,Ge=Ie.yylineno,ze=Ie.yylloc,$e>0&&$e--);break;case 2:if(Ce=this.productions_[oe[1]][1],me.$=ge[ge.length-Ce],me._$={first_line:ie[ie.length-(Ce||1)].first_line,last_line:ie[ie.length-1].last_line,first_column:ie[ie.length-(Ce||1)].first_column,last_column:ie[ie.length-1].last_column},Y&&(me._$.range=[ie[ie.length-(Ce||1)].range[0],ie[ie.length-1].range[1]]),pe=this.performAction.apply(me,[j,ye,Ge,Me.yy,oe[1],ge,ie].concat(Le)),typeof pe<"u")return pe;Ce&&(le=le.slice(0,-1*Ce*2),ge=ge.slice(0,-1*Ce),ie=ie.slice(0,-1*Ce)),le.push(this.productions_[oe[1]][0]),ge.push(me.$),ie.push(me._$),Fe=Te[le[le.length-2]][le[le.length-1]],le.push(Fe);break;case 3:return!0}}return!0},"parse")},de=(function(){var ne={EOF:1,parseError:o(function(Q,le){if(this.yy.parser)this.yy.parser.parseError(Q,le);else throw new Error(Q)},"parseError"),setInput:o(function(te,Q){return this.yy=Q||this.yy||{},this._input=te,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var te=this._input[0];this.yytext+=te,this.yyleng++,this.offset++,this.match+=te,this.matched+=te;var Q=te.match(/(?:\r\n?|\n).*/g);return Q?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),te},"input"),unput:o(function(te){var Q=te.length,le=te.split(/(?:\r\n?|\n)/g);this._input=te+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Q),this.offset-=Q;var J=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),le.length-1&&(this.yylineno-=le.length-1);var ge=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:le?(le.length===J.length?this.yylloc.first_column:0)+J[J.length-le.length].length-le[0].length:this.yylloc.first_column-Q},this.options.ranges&&(this.yylloc.range=[ge[0],ge[0]+this.yyleng-Q]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(te){this.unput(this.match.slice(te))},"less"),pastInput:o(function(){var te=this.matched.substr(0,this.matched.length-this.match.length);return(te.length>20?"...":"")+te.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var te=this.match;return te.length<20&&(te+=this._input.substr(0,20-te.length)),(te.substr(0,20)+(te.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var te=this.pastInput(),Q=new Array(te.length+1).join("-");return te+this.upcomingInput()+` +`+Q+"^"},"showPosition"),test_match:o(function(te,Q){var le,J,ge;if(this.options.backtrack_lexer&&(ge={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ge.yylloc.range=this.yylloc.range.slice(0))),J=te[0].match(/(?:\r\n?|\n).*/g),J&&(this.yylineno+=J.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:J?J[J.length-1].length-J[J.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+te[0].length},this.yytext+=te[0],this.match+=te[0],this.matches=te,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(te[0].length),this.matched+=te[0],le=this.performAction.call(this,this.yy,this,Q,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),le)return le;if(this._backtrack){for(var ie in ge)this[ie]=ge[ie];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var te,Q,le,J;this._more||(this.yytext="",this.match="");for(var ge=this._currentRules(),ie=0;ieQ[0].length)){if(Q=le,J=ie,this.options.backtrack_lexer){if(te=this.test_match(le,ge[ie]),te!==!1)return te;if(this._backtrack){Q=!1;continue}else return!1}else if(!this.options.flex)break}return Q?(te=this.test_match(Q,ge[J]),te!==!1?te:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Q=this.next();return Q||this.lex()},"lex"),begin:o(function(Q){this.conditionStack.push(Q)},"begin"),popState:o(function(){var Q=this.conditionStack.length-1;return Q>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Q){return Q=this.conditionStack.length-1-Math.abs(Q||0),Q>=0?this.conditionStack[Q]:"INITIAL"},"topState"),pushState:o(function(Q){this.begin(Q)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Q,le,J,ge){var ie=ge;switch(J){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("CONFIG"),73;break;case 8:return 74;case 9:return this.popState(),this.popState(),75;break;case 10:return le.yytext=le.yytext.trim(),71;break;case 11:return le.yytext=le.yytext.trim(),this.begin("ALIAS"),71;break;case 12:return this.begin("LINE"),14;break;case 13:return this.begin("ID"),50;break;case 14:return this.begin("ID"),52;break;case 15:return 13;case 16:return this.begin("ID"),53;break;case 17:return le.yytext=le.yytext.trim(),this.begin("ALIAS"),71;break;case 18:return this.popState(),this.popState(),this.begin("LINE"),51;break;case 19:return this.popState(),this.popState(),5;break;case 20:return this.begin("LINE"),36;break;case 21:return this.begin("LINE"),37;break;case 22:return this.begin("LINE"),38;break;case 23:return this.begin("LINE"),39;break;case 24:return this.begin("LINE"),49;break;case 25:return this.begin("LINE"),41;break;case 26:return this.begin("LINE"),43;break;case 27:return this.begin("LINE"),48;break;case 28:return this.begin("LINE"),44;break;case 29:return this.begin("LINE"),47;break;case 30:return this.begin("LINE"),46;break;case 31:return this.popState(),15;break;case 32:return 16;case 33:return 66;case 34:return 67;case 35:return 60;case 36:return 61;case 37:return 62;case 38:return 63;case 39:return 58;case 40:return 55;case 41:return this.begin("ID"),21;break;case 42:return this.begin("ID"),23;break;case 43:return 29;case 44:return 30;case 45:return this.begin("acc_title"),31;break;case 46:return this.popState(),"acc_title_value";break;case 47:return this.begin("acc_descr"),33;break;case 48:return this.popState(),"acc_descr_value";break;case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 6;case 53:return 18;case 54:return 20;case 55:return 65;case 56:return 5;case 57:return le.yytext=le.yytext.trim(),71;break;case 58:return 78;case 59:return 79;case 60:return 80;case 61:return 81;case 62:return 76;case 63:return 77;case 64:return 82;case 65:return 83;case 66:return 84;case 67:return 85;case 68:return 86;case 69:return 86;case 70:return 69;case 71:return 70;case 72:return 5;case 73:return"INVALID"}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^\<->\->:\n,;@]+?([\-]*[^\<->\->:\n,;@]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^<\->\->:\n,;]+?([\-]*[^<\->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[50,51],inclusive:!1},acc_descr:{rules:[48],inclusive:!1},acc_title:{rules:[46],inclusive:!1},ID:{rules:[2,3,7,10,11,17],inclusive:!1},ALIAS:{rules:[2,3,18,19],inclusive:!1},LINE:{rules:[2,3,31],inclusive:!1},CONFIG:{rules:[8,9],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,43,44,45,47,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73],inclusive:!0}}};return ne})();Z.lexer=de;function re(){this.yy={}}return o(re,"Parser"),re.prototype=Z,Z.Parser=re,new re})();zq.parser=zq;U3e=zq});var Jst,eot,tot,n3,_7,Gq=I(()=>{"use strict";Qt();Hx();gt();KV();wr();ki();Jst={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},eot={FILLED:0,OPEN:1},tot={LEFTOF:0,RIGHTOF:1,OVER:2},n3={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},_7=class{constructor(){this.state=new wv(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0}));this.setAccTitle=zr;this.setAccDescription=qr;this.setDiagramTitle=Xr;this.getAccTitle=Vr;this.getAccDescription=Ur;this.getDiagramTitle=Wr;this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(xe().wrap),this.LINETYPE=Jst,this.ARROWTYPE=eot,this.PLACEMENT=tot}static{o(this,"SequenceDB")}addBox(e){this.state.records.boxes.push({name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(e,r,n,i,a){let s=this.state.records.currentBox,l;if(a!==void 0){let h;a.includes(` `)?h=a+` `:h=`{ `+a+` -}`,l=Kh(h,{schema:jh})}i=l?.type??i;let u=this.state.records.actors.get(e);if(u){if(this.state.records.currentBox&&u.box&&this.state.records.currentBox!==u.box)throw new Error(`A same participant should only be defined in one Box: ${u.name} can't be in '${u.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(s=u.box?u.box:this.state.records.currentBox,u.box=s,u&&r===u.name&&n==null)return}if(n?.text==null&&(n={text:r,type:i}),(i==null||n.text==null)&&(n={text:r,type:i}),this.state.records.actors.set(e,{box:s,name:r,description:n.text,wrap:n.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:i??"participant"}),this.state.records.prevActor){let h=this.state.records.actors.get(this.state.records.prevActor);h&&(h.nextActor=e)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(e),this.state.records.prevActor=e}activationCount(e){let r,n=0;if(!e)return 0;for(r=0;r>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},l}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:r,message:n?.text??"",wrap:n?.wrap??this.autoWrap(),type:i,activate:a}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(e=>e.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(e){return this.state.records.actors.get(e)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(e){this.state.records.wrapEnabled=e}extractWrap(e){if(e===void 0)return{};e=e.trim();let r=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(r===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:r}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:ge().sequence?.wrap??!1}clear(){this.state.reset(),Sr()}parseMessage(e){let r=e.trim(),{wrap:n,cleanedText:i}=this.extractWrap(r),a={text:i,wrap:n};return X.debug(`parseMessage: ${JSON.stringify(a)}`),a}parseBoxData(e){let r=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),n=r?.[1]?r[1].trim():"transparent",i=r?.[2]?r[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",n)||(n="transparent",i=e.trim());else{let l=new Option().style;l.color=n,l.color!==n&&(n="transparent",i=e.trim())}let{wrap:a,cleanedText:s}=this.extractWrap(i);return{text:s?sr(s,ge()):void 0,color:n,wrap:a}}addNote(e,r,n){let i={actor:e,placement:r,message:n.text,wrap:n.wrap??this.autoWrap()},a=[].concat(e,e);this.state.records.notes.push(i),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:a[0],to:a[1],message:n.text,wrap:n.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:r})}addLinks(e,r){let n=this.getActor(e);try{let i=sr(r.text,ge());i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let a=JSON.parse(i);this.insertLinks(n,a)}catch(i){X.error("error while parsing actor link text",i)}}addALink(e,r){let n=this.getActor(e);try{let i={},a=sr(r.text,ge()),s=a.indexOf("@");a=a.replace(/=/g,"="),a=a.replace(/&/g,"&");let l=a.slice(0,s-1).trim(),u=a.slice(s+1).trim();i[l]=u,this.insertLinks(n,i)}catch(i){X.error("error while parsing actor link text",i)}}insertLinks(e,r){if(e.links==null)e.links=r;else for(let n in r)e.links[n]=r[n]}addProperties(e,r){let n=this.getActor(e);try{let i=sr(r.text,ge()),a=JSON.parse(i);this.insertProperties(n,a)}catch(i){X.error("error while parsing actor properties text",i)}}insertProperties(e,r){if(e.properties==null)e.properties=r;else for(let n in r)e.properties[n]=r[n]}boxEnd(){this.state.records.currentBox=void 0}addDetails(e,r){let n=this.getActor(e),i=document.getElementById(r.text);try{let a=i.innerHTML,s=JSON.parse(a);s.properties&&this.insertProperties(n,s.properties),s.links&&this.insertLinks(n,s.links)}catch(a){X.error("error while parsing actor details text",a)}}getActorProperty(e,r){if(e?.properties!==void 0)return e.properties[r]}apply(e){if(Array.isArray(e))e.forEach(r=>{this.apply(r)});else switch(e.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(e.actor,e.actor,e.description,e.draw,e.config);break;case"createParticipant":if(this.state.records.actors.has(e.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=e.actor,this.addActor(e.actor,e.actor,e.description,e.draw,e.config),this.state.records.createdActors.set(e.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=e.actor,this.state.records.destroyedActors.set(e.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(e.actor,e.text);break;case"addALink":this.addALink(e.actor,e.text);break;case"addProperties":this.addProperties(e.actor,e.text);break;case"addDetails":this.addDetails(e.actor,e.text);break;case"addMessage":if(this.state.records.lastCreated){if(e.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(e.to!==this.state.records.lastDestroyed&&e.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":Rr(e.text);break;case"parStart":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}getConfig(){return ge().sequence}}});var rJe,zye,Gye=M(()=>{"use strict";rJe=o(t=>`.actor { +}`,l=Wf(h,{schema:Uf})}i=l?.type??i;let u=this.state.records.actors.get(e);if(u){if(this.state.records.currentBox&&u.box&&this.state.records.currentBox!==u.box)throw new Error(`A same participant should only be defined in one Box: ${u.name} can't be in '${u.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(s=u.box?u.box:this.state.records.currentBox,u.box=s,u&&r===u.name&&n==null)return}if(n?.text==null&&(n={text:r,type:i}),(i==null||n.text==null)&&(n={text:r,type:i}),this.state.records.actors.set(e,{box:s,name:r,description:n.text,wrap:n.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:i??"participant"}),this.state.records.prevActor){let h=this.state.records.actors.get(this.state.records.prevActor);h&&(h.nextActor=e)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(e),this.state.records.prevActor=e}activationCount(e){let r,n=0;if(!e)return 0;for(r=0;r>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},l}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:r,message:n?.text??"",wrap:n?.wrap??this.autoWrap(),type:i,activate:a}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(e=>e.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(e){return this.state.records.actors.get(e)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(e){this.state.records.wrapEnabled=e}extractWrap(e){if(e===void 0)return{};e=e.trim();let r=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(r===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:r}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:xe().sequence?.wrap??!1}clear(){this.state.reset(),Mr()}parseMessage(e){let r=e.trim(),{wrap:n,cleanedText:i}=this.extractWrap(r),a={text:i,wrap:n};return X.debug(`parseMessage: ${JSON.stringify(a)}`),a}parseBoxData(e){let r=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),n=r?.[1]?r[1].trim():"transparent",i=r?.[2]?r[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",n)||(n="transparent",i=e.trim());else{let l=new Option().style;l.color=n,l.color!==n&&(n="transparent",i=e.trim())}let{wrap:a,cleanedText:s}=this.extractWrap(i);return{text:s?fr(s,xe()):void 0,color:n,wrap:a}}addNote(e,r,n){let i={actor:e,placement:r,message:n.text,wrap:n.wrap??this.autoWrap()},a=[].concat(e,e);this.state.records.notes.push(i),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:a[0],to:a[1],message:n.text,wrap:n.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:r})}addLinks(e,r){let n=this.getActor(e);try{let i=fr(r.text,xe());i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let a=JSON.parse(i);this.insertLinks(n,a)}catch(i){X.error("error while parsing actor link text",i)}}addALink(e,r){let n=this.getActor(e);try{let i={},a=fr(r.text,xe()),s=a.indexOf("@");a=a.replace(/=/g,"="),a=a.replace(/&/g,"&");let l=a.slice(0,s-1).trim(),u=a.slice(s+1).trim();i[l]=u,this.insertLinks(n,i)}catch(i){X.error("error while parsing actor link text",i)}}insertLinks(e,r){if(e.links==null)e.links=r;else for(let n in r)e.links[n]=r[n]}addProperties(e,r){let n=this.getActor(e);try{let i=fr(r.text,xe()),a=JSON.parse(i);this.insertProperties(n,a)}catch(i){X.error("error while parsing actor properties text",i)}}insertProperties(e,r){if(e.properties==null)e.properties=r;else for(let n in r)e.properties[n]=r[n]}boxEnd(){this.state.records.currentBox=void 0}addDetails(e,r){let n=this.getActor(e),i=document.getElementById(r.text);try{let a=i.innerHTML,s=JSON.parse(a);s.properties&&this.insertProperties(n,s.properties),s.links&&this.insertLinks(n,s.links)}catch(a){X.error("error while parsing actor details text",a)}}getActorProperty(e,r){if(e?.properties!==void 0)return e.properties[r]}apply(e){if(Array.isArray(e))e.forEach(r=>{this.apply(r)});else switch(e.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(e.actor,e.actor,e.description,e.draw,e.config);break;case"createParticipant":if(this.state.records.actors.has(e.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=e.actor,this.addActor(e.actor,e.actor,e.description,e.draw,e.config),this.state.records.createdActors.set(e.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=e.actor,this.state.records.destroyedActors.set(e.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(e.actor,e.text);break;case"addALink":this.addALink(e.actor,e.text);break;case"addProperties":this.addProperties(e.actor,e.text);break;case"addDetails":this.addDetails(e.actor,e.text);break;case"addMessage":if(this.state.records.lastCreated){if(e.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(e.to!==this.state.records.lastDestroyed&&e.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":zr(e.text);break;case"parStart":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}getConfig(){return xe().sequence}}});var rot,H3e,Y3e=I(()=>{"use strict";rot=o(t=>`.actor { stroke: ${t.actorBorder}; fill: ${t.actorBkg}; } @@ -1757,25 +1789,25 @@ Expecting `+Ke.join(", ")+", got '"+(this.terminals_[he]||he)+"'":xt="Parse erro stroke-width: 2px; } -`,"getStyles"),zye=rJe});var i$,Yf,jf,Kf,eC,Xf,w4,nJe,tC,k4,o0,Vye,Fr,a$,iJe,aJe,sJe,oJe,lJe,cJe,uJe,hJe,fJe,dJe,pJe,mJe,gJe,Uye,yJe,vJe,xJe,bJe,TJe,wJe,kJe,Hye,EJe,oh,SJe,mi,qye=M(()=>{"use strict";i$=La(tm(),1);qn();tr();gr();n2();Yf=36,jf="actor-top",Kf="actor-bottom",eC="actor-box",Xf="actor-man",w4=o(function(t,e){return Fd(t,e)},"drawRect"),nJe=o(function(t,e,r,n,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let a=e.links,s=e.actorCnt,l=e.rectData;var u="none";i&&(u="block !important");let h=t.append("g");h.attr("id","actor"+s+"_popup"),h.attr("class","actorPopupMenu"),h.attr("display",u);var f="";l.class!==void 0&&(f=" "+l.class);let d=l.width>r?l.width:r,p=h.append("rect");if(p.attr("class","actorPopupMenuPanel"+f),p.attr("x",l.x),p.attr("y",l.height),p.attr("fill",l.fill),p.attr("stroke",l.stroke),p.attr("width",d),p.attr("height",l.height),p.attr("rx",l.rx),p.attr("ry",l.ry),a!=null){var m=20;for(let v in a){var g=h.append("a"),y=(0,i$.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),SJe(n)(v,g,l.x+10,l.height+m,d,20,{class:"actor"},n),m+=30}}return p.attr("height",m),{height:l.height+m,width:d}},"drawPopup"),tC=o(function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),k4=o(async function(t,e,r=null){let n=t.append("foreignObject"),i=await kh(e.text,Qt()),s=n.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(n.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),e.class==="noteText"){let l=t.node().firstChild;l.setAttribute("height",s.height+2*e.textMargin);let u=l.getBBox();n.attr("x",Math.round(u.x+u.width/2-s.width/2)).attr("y",Math.round(u.y+u.height/2-s.height/2))}else if(r){let{startx:l,stopx:u,starty:h}=r;if(l>u){let f=l;l=u,u=f}n.attr("x",Math.round(l+Math.abs(l-u)/2-s.width/2)),e.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),o0=o(function(t,e){let r=0,n=0,i=e.text.split(tt.lineBreakRegex),[a,s]=vc(e.fontSize),l=[],u=0,h=o(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":h=o(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(e.y+(r+n+e.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(e.y+(r+n+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle";break}for(let[f,d]of i.entries()){e.textMargin!==void 0&&e.textMargin===0&&a!==void 0&&(u=f*a);let p=t.append("text");p.attr("x",e.x),p.attr("y",h()),e.anchor!==void 0&&p.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),e.fontFamily!==void 0&&p.style("font-family",e.fontFamily),s!==void 0&&p.style("font-size",s),e.fontWeight!==void 0&&p.style("font-weight",e.fontWeight),e.fill!==void 0&&p.attr("fill",e.fill),e.class!==void 0&&p.attr("class",e.class),e.dy!==void 0?p.attr("dy",e.dy):u!==0&&p.attr("dy",u);let m=d||BL;if(e.tspan){let g=p.append("tspan");g.attr("x",e.x),e.fill!==void 0&&g.attr("fill",e.fill),g.text(m)}else p.text(m);e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),Vye=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");return n.attr("points",r(e.x,e.y,e.width,e.height,7)),n.attr("class","labelBox"),e.y=e.y+e.height/2,o0(t,e),n},"drawLabel"),Fr=-1,a$=o((t,e,r,n)=>{t.select&&r.forEach(i=>{let a=e.get(i),s=t.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),iJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(Fr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",tC(`actor${Fr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Fr,e.links!=null&&u.attr("id","root-"+Fr));let h=ha();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Kf}`:f+=` ${jf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.rx=3,h.ry=3,h.name=e.name;let d=w4(u,h);if(e.rectData=h,e.properties?.icon){let m=e.properties.icon.trim();m.charAt(0)==="@"?cT(u,h.x+h.width-20,h.y+10,m.substr(1)):lT(u,h.x+h.width-20,h.y+10,m)}oh(r,kn(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${eC}`},r);let p=e.height;if(d.node){let m=d.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),aJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(Fr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",tC(`actor${Fr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Fr,e.links!=null&&u.attr("id","root-"+Fr));let h=ha();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Kf}`:f+=` ${jf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name;let d=6,p={...h,x:h.x+-d,y:h.y+ +d,class:"actor"},m=w4(u,h);if(w4(u,p),e.rectData=h,e.properties?.icon){let y=e.properties.icon.trim();y.charAt(0)==="@"?cT(u,h.x+h.width-20,h.y+10,y.substr(1)):lT(u,h.x+h.width-20,h.y+10,y)}oh(r,kn(e.description))(e.description,u,h.x-d,h.y+d,h.width,h.height,{class:`actor ${eC}`},r);let g=e.height;if(m.node){let y=m.node().getBBox();e.height=y.height,g=y.height}return g},"drawActorTypeCollections"),sJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower(),u=l;n||(Fr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",tC(`actor${Fr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Fr,e.links!=null&&u.attr("id","root-"+Fr));let h=ha(),f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Kf}`:f+=` ${jf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name;let d=h.height/2,p=d/(2.5+h.height/50),m=u.append("g"),g=u.append("g");if(m.append("path").attr("d",`M ${h.x},${h.y+d} +`,"getStyles"),H3e=rot});var Vq,up,fp,dp,D7,hp,i3,not,R7,a3,Um,j3e,jr,qq,iot,aot,sot,oot,lot,cot,uot,hot,fot,dot,pot,mot,got,X3e,yot,vot,xot,bot,Tot,wot,kot,K3e,Sot,tf,Eot,Ri,Q3e=I(()=>{"use strict";Vq=Aa(Fg(),1);ti();sr();wr();Cx();up=36,fp="actor-top",dp="actor-bottom",D7="actor-box",hp="actor-man",i3=o(function(t,e){return t0(t,e)},"drawRect"),not=o(function(t,e,r,n,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let a=e.links,s=e.actorCnt,l=e.rectData;var u="none";i&&(u="block !important");let h=t.append("g");h.attr("id","actor"+s+"_popup"),h.attr("class","actorPopupMenu"),h.attr("display",u);var f="";l.class!==void 0&&(f=" "+l.class);let d=l.width>r?l.width:r,p=h.append("rect");if(p.attr("class","actorPopupMenuPanel"+f),p.attr("x",l.x),p.attr("y",l.height),p.attr("fill",l.fill),p.attr("stroke",l.stroke),p.attr("width",d),p.attr("height",l.height),p.attr("rx",l.rx),p.attr("ry",l.ry),a!=null){var m=20;for(let v in a){var g=h.append("a"),y=(0,Vq.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),Eot(n)(v,g,l.x+10,l.height+m,d,20,{class:"actor"},n),m+=30}}return p.attr("height",m),{height:l.height+m,width:d}},"drawPopup"),R7=o(function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),a3=o(async function(t,e,r=null){let n=t.append("foreignObject"),i=await vf(e.text,tr()),s=n.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(n.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),e.class==="noteText"){let l=t.node().firstChild;l.setAttribute("height",s.height+2*e.textMargin);let u=l.getBBox();n.attr("x",Math.round(u.x+u.width/2-s.width/2)).attr("y",Math.round(u.y+u.height/2-s.height/2))}else if(r){let{startx:l,stopx:u,starty:h}=r;if(l>u){let f=l;l=u,u=f}n.attr("x",Math.round(l+Math.abs(l-u)/2-s.width/2)),e.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),Um=o(function(t,e){let r=0,n=0,i=e.text.split(nt.lineBreakRegex),[a,s]=ru(e.fontSize),l=[],u=0,h=o(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":h=o(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(e.y+(r+n+e.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(e.y+(r+n+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle";break}for(let[f,d]of i.entries()){e.textMargin!==void 0&&e.textMargin===0&&a!==void 0&&(u=f*a);let p=t.append("text");p.attr("x",e.x),p.attr("y",h()),e.anchor!==void 0&&p.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),e.fontFamily!==void 0&&p.style("font-family",e.fontFamily),s!==void 0&&p.style("font-size",s),e.fontWeight!==void 0&&p.style("font-weight",e.fontWeight),e.fill!==void 0&&p.attr("fill",e.fill),e.class!==void 0&&p.attr("class",e.class),e.dy!==void 0?p.attr("dy",e.dy):u!==0&&p.attr("dy",u);let m=d||fN;if(e.tspan){let g=p.append("tspan");g.attr("x",e.x),e.fill!==void 0&&g.attr("fill",e.fill),g.text(m)}else p.text(m);e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),j3e=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");return n.attr("points",r(e.x,e.y,e.width,e.height,7)),n.attr("class","labelBox"),e.y=e.y+e.height/2,Um(t,e),n},"drawLabel"),jr=-1,qq=o((t,e,r,n)=>{t.select&&r.forEach(i=>{let a=e.get(i),s=t.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),iot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(jr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",R7(`actor${jr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=jr,e.links!=null&&u.attr("id","root-"+jr));let h=Na();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${dp}`:f+=` ${fp}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.rx=3,h.ry=3,h.name=e.name;let d=i3(u,h);if(e.rectData=h,e.properties?.icon){let m=e.properties.icon.trim();m.charAt(0)==="@"?H5(u,h.x+h.width-20,h.y+10,m.substr(1)):W5(u,h.x+h.width-20,h.y+10,m)}tf(r,Nn(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${D7}`},r);let p=e.height;if(d.node){let m=d.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),aot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(jr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",R7(`actor${jr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=jr,e.links!=null&&u.attr("id","root-"+jr));let h=Na();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${dp}`:f+=` ${fp}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name;let d=6,p={...h,x:h.x+-d,y:h.y+ +d,class:"actor"},m=i3(u,h);if(i3(u,p),e.rectData=h,e.properties?.icon){let y=e.properties.icon.trim();y.charAt(0)==="@"?H5(u,h.x+h.width-20,h.y+10,y.substr(1)):W5(u,h.x+h.width-20,h.y+10,y)}tf(r,Nn(e.description))(e.description,u,h.x-d,h.y+d,h.width,h.height,{class:`actor ${D7}`},r);let g=e.height;if(m.node){let y=m.node().getBBox();e.height=y.height,g=y.height}return g},"drawActorTypeCollections"),sot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower(),u=l;n||(jr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",R7(`actor${jr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=jr,e.links!=null&&u.attr("id","root-"+jr));let h=Na(),f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${dp}`:f+=` ${fp}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name;let d=h.height/2,p=d/(2.5+h.height/50),m=u.append("g"),g=u.append("g");if(m.append("path").attr("d",`M ${h.x},${h.y+d} a ${p},${d} 0 0 0 0,${h.height} h ${h.width-2*p} a ${p},${d} 0 0 0 0,-${h.height} Z `).attr("class",f),g.append("path").attr("d",`M ${h.x},${h.y+d} - a ${p},${d} 0 0 0 0,${h.height}`).attr("stroke","#666").attr("stroke-width","1px").attr("class",f),m.attr("transform",`translate(${p}, ${-(h.height/2)})`),g.attr("transform",`translate(${h.width-p}, ${-h.height/2})`),e.rectData=h,e.properties?.icon){let x=e.properties.icon.trim(),b=h.x+h.width-20,T=h.y+10;x.charAt(0)==="@"?cT(u,b,T,x.substr(1)):lT(u,b,T,x)}oh(r,kn(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${eC}`},r);let y=e.height,v=m.select("path:last-child");if(v.node()){let x=v.node().getBBox();e.height=x.height,y=x.height}return y},"drawActorTypeQueue"),oJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+75,l=t.append("g").lower();n||(Fr++,l.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Fr);let u=t.append("g"),h=Xf;n?h+=` ${Kf}`:h+=` ${jf}`,u.attr("class",h),u.attr("name",e.name);let f=ha();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor";let d=e.x+e.width/2,p=i+30,m=18;u.append("defs").append("marker").attr("id","filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),u.append("circle").attr("cx",d).attr("cy",p).attr("r",m).attr("fill","#eaeaf7").attr("stroke","#666").attr("stroke-width",1.2),u.append("line").attr("marker-end","url(#filled-head-control)").attr("transform",`translate(${d}, ${p-m})`);let g=u.node().getBBox();return e.height=g.height+2*(r?.sequence?.labelBoxHeight??0),oh(r,kn(e.description))(e.description,u,f.x,f.y+m+(n?5:10),f.width,f.height,{class:`actor ${Xf}`},r),e.height},"drawActorTypeControl"),lJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+75,l=t.append("g").lower(),u=t.append("g"),h=Xf;n?h+=` ${Kf}`:h+=` ${jf}`,u.attr("class",h),u.attr("name",e.name);let f=ha();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor";let d=e.x+e.width/2,p=i+(n?10:25),m=18;u.append("circle").attr("cx",d).attr("cy",p).attr("r",m).attr("width",e.width).attr("height",e.height),u.append("line").attr("x1",d-m).attr("x2",d+m).attr("y1",p+m).attr("y2",p+m).attr("stroke","#333").attr("stroke-width",2);let g=u.node().getBBox();return e.height=g.height+(r?.sequence?.labelBoxHeight??0),n||(Fr++,l.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Fr),oh(r,kn(e.description))(e.description,u,f.x,f.y+(n?(p-i+m-5)/2:(p+m-i)/2),f.width,f.height,{class:`actor ${Xf}`},r),n?u.attr("transform",`translate(0, ${m/2})`):u.attr("transform",`translate(0, ${m/2})`),e.height},"drawActorTypeEntity"),cJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height+2*r.boxTextMargin,l=t.append("g").lower(),u=l;n||(Fr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",tC(`actor${Fr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Fr,e.links!=null&&u.attr("id","root-"+Fr));let h=ha(),f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Kf}`:f+=` ${jf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name,h.x=e.x,h.y=i;let d=h.width/4,p=h.width/4,m=d/2,g=m/(2.5+d/50),y=u.append("g"),v=` + a ${p},${d} 0 0 0 0,${h.height}`).attr("stroke","#666").attr("stroke-width","1px").attr("class",f),m.attr("transform",`translate(${p}, ${-(h.height/2)})`),g.attr("transform",`translate(${h.width-p}, ${-h.height/2})`),e.rectData=h,e.properties?.icon){let x=e.properties.icon.trim(),b=h.x+h.width-20,T=h.y+10;x.charAt(0)==="@"?H5(u,b,T,x.substr(1)):W5(u,b,T,x)}tf(r,Nn(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${D7}`},r);let y=e.height,v=m.select("path:last-child");if(v.node()){let x=v.node().getBBox();e.height=x.height,y=x.height}return y},"drawActorTypeQueue"),oot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+75,l=t.append("g").lower();n||(jr++,l.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=jr);let u=t.append("g"),h=hp;n?h+=` ${dp}`:h+=` ${fp}`,u.attr("class",h),u.attr("name",e.name);let f=Na();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor";let d=e.x+e.width/2,p=i+30,m=18;u.append("defs").append("marker").attr("id","filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),u.append("circle").attr("cx",d).attr("cy",p).attr("r",m).attr("fill","#eaeaf7").attr("stroke","#666").attr("stroke-width",1.2),u.append("line").attr("marker-end","url(#filled-head-control)").attr("transform",`translate(${d}, ${p-m})`);let g=u.node().getBBox();return e.height=g.height+2*(r?.sequence?.labelBoxHeight??0),tf(r,Nn(e.description))(e.description,u,f.x,f.y+m+(n?5:10),f.width,f.height,{class:`actor ${hp}`},r),e.height},"drawActorTypeControl"),lot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+75,l=t.append("g").lower(),u=t.append("g"),h=hp;n?h+=` ${dp}`:h+=` ${fp}`,u.attr("class",h),u.attr("name",e.name);let f=Na();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor";let d=e.x+e.width/2,p=i+(n?10:25),m=18;u.append("circle").attr("cx",d).attr("cy",p).attr("r",m).attr("width",e.width).attr("height",e.height),u.append("line").attr("x1",d-m).attr("x2",d+m).attr("y1",p+m).attr("y2",p+m).attr("stroke","#333").attr("stroke-width",2);let g=u.node().getBBox();return e.height=g.height+(r?.sequence?.labelBoxHeight??0),n||(jr++,l.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=jr),tf(r,Nn(e.description))(e.description,u,f.x,f.y+(n?(p-i+m-5)/2:(p+m-i)/2),f.width,f.height,{class:`actor ${hp}`},r),n?u.attr("transform",`translate(0, ${m/2})`):u.attr("transform",`translate(0, ${m/2})`),e.height},"drawActorTypeEntity"),cot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height+2*r.boxTextMargin,l=t.append("g").lower(),u=l;n||(jr++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",R7(`actor${jr}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=jr,e.links!=null&&u.attr("id","root-"+jr));let h=Na(),f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${dp}`:f+=` ${fp}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name,h.x=e.x,h.y=i;let d=h.width/4,p=h.width/4,m=d/2,g=m/(2.5+d/50),y=u.append("g"),v=` M ${h.x},${h.y+g} a ${m},${g} 0 0 0 ${d},0 a ${m},${g} 0 0 0 -${d},0 l 0,${p-2*g} a ${m},${g} 0 0 0 ${d},0 l 0,-${p-2*g} -`;y.append("path").attr("d",v).attr("fill","#eaeaea").attr("stroke","#000").attr("stroke-width",1).attr("class",f),n?y.attr("transform",`translate(${d*1.5}, ${h.height/4-2*g})`):y.attr("transform",`translate(${d*1.5}, ${(h.height+g)/4})`),e.rectData=h,oh(r,kn(e.description))(e.description,u,h.x,h.y+(n?(h.height+p)/4:(h.height+g)/2),h.width,h.height,{class:`actor ${eC}`},r);let x=y.select("path:last-child");if(x.node()){let b=x.node().getBBox();e.height=b.height+(r.sequence.labelBoxHeight??0)}return e.height},"drawActorTypeDatabase"),uJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=30,u=t.append("g").lower();n||(Fr++,u.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Fr);let h=t.append("g"),f=Xf;n?f+=` ${Kf}`:f+=` ${jf}`,h.attr("class",f),h.attr("name",e.name);let d=ha();d.x=e.x,d.y=i,d.fill="#eaeaea",d.width=e.width,d.height=e.height,d.class="actor",h.append("line").attr("id","actor-man-torso"+Fr).attr("x1",e.x+e.width/2-l*2.5).attr("y1",i+10).attr("x2",e.x+e.width/2-15).attr("y2",i+10),h.append("line").attr("id","actor-man-arms"+Fr).attr("x1",e.x+e.width/2-l*2.5).attr("y1",i+0).attr("x2",e.x+e.width/2-l*2.5).attr("y2",i+20),h.append("circle").attr("cx",e.x+e.width/2).attr("cy",i+10).attr("r",l);let p=h.node().getBBox();return e.height=p.height+(r.sequence.labelBoxHeight??0),oh(r,kn(e.description))(e.description,h,d.x,d.y+(n?l/2-4:l/2+3),d.width,d.height,{class:`actor ${Xf}`},r),n?h.attr("transform",`translate(0,${l/2+7})`):h.attr("transform",`translate(0,${l/2+7})`),e.height},"drawActorTypeBoundary"),hJe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=t.append("g").lower();n||(Fr++,l.append("line").attr("id","actor"+Fr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Fr);let u=t.append("g"),h=Xf;n?h+=` ${Kf}`:h+=` ${jf}`,u.attr("class",h),u.attr("name",e.name);let f=ha();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+Fr).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Fr).attr("x1",a-Yf/2).attr("y1",i+33).attr("x2",a+Yf/2).attr("y2",i+33),u.append("line").attr("x1",a-Yf/2).attr("y1",i+60).attr("x2",a).attr("y2",i+45),u.append("line").attr("x1",a).attr("y1",i+45).attr("x2",a+Yf/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",e.x+e.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",e.width),d.attr("height",e.height);let p=u.node().getBBox();return e.height=p.height,oh(r,kn(e.description))(e.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${Xf}`},r),e.height},"drawActorTypeActor"),fJe=o(async function(t,e,r,n){switch(e.type){case"actor":return await hJe(t,e,r,n);case"participant":return await iJe(t,e,r,n);case"boundary":return await uJe(t,e,r,n);case"control":return await oJe(t,e,r,n);case"entity":return await lJe(t,e,r,n);case"database":return await cJe(t,e,r,n);case"collections":return await aJe(t,e,r,n);case"queue":return await sJe(t,e,r,n)}},"drawActor"),dJe=o(function(t,e,r){let i=t.append("g");Uye(i,e),e.name&&oh(r)(e.name,i,e.x,e.y+r.boxTextMargin+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},r),i.lower()},"drawBox"),pJe=o(function(t){return t.append("g")},"anchorElement"),mJe=o(function(t,e,r,n,i){let a=ha(),s=e.anchored;a.x=e.startx,a.y=e.starty,a.class="activation"+i%3,a.width=e.stopx-e.startx,a.height=r-e.starty,w4(s,a)},"drawActivation"),gJe=o(async function(t,e,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=t.append("g"),p=o(function(y,v,x,b){return d.append("line").attr("x1",y).attr("y1",v).attr("x2",x).attr("y2",b).attr("class","loopLine")},"drawLoopLine");p(e.startx,e.starty,e.stopx,e.starty),p(e.stopx,e.starty,e.stopx,e.stopy),p(e.startx,e.stopy,e.stopx,e.stopy),p(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0&&e.sections.forEach(function(y){p(e.startx,y.y,e.stopx,y.y).style("stroke-dasharray","3, 3")});let m=r2();m.text=r,m.x=e.startx,m.y=e.starty,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.anchor="middle",m.valign="middle",m.tspan=!1,m.width=l||50,m.height=s||20,m.textMargin=a,m.class="labelText",Vye(d,m),m=Hye(),m.text=e.title,m.x=e.startx+l/2+(e.stopx-e.startx)/2,m.y=e.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=kn(m.text)?await k4(d,m,e):o0(d,m);if(e.sectionTitles!==void 0){for(let[y,v]of Object.entries(e.sectionTitles))if(v.message){m.text=v.message,m.x=e.startx+(e.stopx-e.startx)/2,m.y=e.sections[y].y+i+a,m.class="loopText",m.anchor="middle",m.valign="middle",m.tspan=!1,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=e.wrap,kn(m.text)?(e.starty=e.sections[y].y,await k4(d,m,e)):o0(d,m);let x=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,T)=>b+T));e.sections[y].height+=x-(i+a)}}return e.height=Math.round(e.stopy-e.starty),d},"drawLoop"),Uye=o(function(t,e){oT(t,e)},"drawBackgroundRect"),yJe=o(function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),vJe=o(function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),xJe=o(function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),bJe=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),TJe=o(function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),wJe=o(function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),kJe=o(function(t){t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),Hye=o(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),EJe=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),oh=(function(){function t(a,s,l,u,h,f,d){let p=s.append("text").attr("x",l+h/2).attr("y",u+f/2+5).style("text-anchor","middle").text(a);i(p,d)}o(t,"byText");function e(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[v,x]=vc(m),b=a.split(tt.lineBreakRegex);for(let T=0;T{let s=l0(Me),l=a.actorKeys.reduce((d,p)=>d+=t.get(p).width+(t.get(p).margin||0),0),u=Me.boxMargin*8;l+=u,l-=2*Me.boxTextMargin,a.wrap&&(a.name=qt.wrapLabel(a.name,l-2*Me.wrapPadding,s));let h=qt.calculateTextDimensions(a.name,s);i=tt.getMax(h.height,i);let f=tt.getMax(l,h.width+2*Me.wrapPadding);if(a.margin=Me.boxTextMargin,la.textMaxHeight=i),tt.getMax(n,Me.height)}var Me,ot,CJe,l0,sy,s$,_Je,DJe,o$,Yye,Xye,rC,Wye,RJe,MJe,OJe,PJe,BJe,jye,Kye=M(()=>{"use strict";yr();qye();pt();gr();gr();n2();Xt();v0();tr();Ei();n$();Me={},ot={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:o(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(t=>t.height||0))+(this.loops.length===0?0:this.loops.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.messages.length===0?0:this.messages.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.notes.length===0?0:this.notes.map(t=>t.height||0).reduce((t,e)=>t+e))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(t){this.boxes.push(t)},"addBox"),addActor:o(function(t){this.actors.push(t)},"addActor"),addLoop:o(function(t){this.loops.push(t)},"addLoop"),addMessage:o(function(t){this.messages.push(t)},"addMessage"),addNote:o(function(t){this.notes.push(t)},"addNote"),lastActor:o(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:o(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:o(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:o(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:o(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,Xye(ge())},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=this,a=0;function s(l){return o(function(h){a++;let f=i.sequenceItems.length-a+1;i.updateVal(h,"starty",e-f*Me.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Me.boxMargin,Math.max),i.updateVal(ot.data,"startx",t-f*Me.boxMargin,Math.min),i.updateVal(ot.data,"stopx",r+f*Me.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",t-f*Me.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Me.boxMargin,Math.max),i.updateVal(ot.data,"starty",e-f*Me.boxMargin,Math.min),i.updateVal(ot.data,"stopy",n+f*Me.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(t,e,r,n){let i=tt.getMin(t,r),a=tt.getMax(t,r),s=tt.getMin(e,n),l=tt.getMax(e,n);this.updateVal(ot.data,"startx",i,Math.min),this.updateVal(ot.data,"starty",s,Math.min),this.updateVal(ot.data,"stopx",a,Math.max),this.updateVal(ot.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(t,e,r){let n=r.get(t.from),i=rC(t.from).length||0,a=n.x+n.width/2+(i-1)*Me.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Me.activationWidth,stopy:void 0,actor:t.from,anchored:mi.anchorElement(e)})},"newActivation"),endActivation:o(function(t){let e=this.activations.map(function(r){return r.actor}).lastIndexOf(t.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}},"createLoop"),newLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))},"newLoop"),endLoop:o(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:o(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:o(function(t){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:ot.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=tt.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return{bounds:this.data,models:this.models}},"getBounds")},CJe=o(async function(t,e){ot.bumpVerticalPos(Me.boxMargin),e.height=Me.boxMargin,e.starty=ot.getVerticalPos();let r=ha();r.x=e.startx,r.y=e.starty,r.width=e.width||Me.width,r.class="note";let n=t.append("g"),i=mi.drawRect(n,r),a=r2();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=Me.noteFontFamily,a.fontSize=Me.noteFontSize,a.fontWeight=Me.noteFontWeight,a.anchor=Me.noteAlign,a.textMargin=Me.noteMargin,a.valign="center";let s=kn(a.text)?await k4(n,a):o0(n,a),l=Math.round(s.map(u=>(u._groups||u)[0][0].getBBox().height).reduce((u,h)=>u+h));i.attr("height",l+2*Me.noteMargin),e.height+=l+2*Me.noteMargin,ot.bumpVerticalPos(l+2*Me.noteMargin),e.stopy=e.starty+l+2*Me.noteMargin,e.stopx=e.startx+r.width,ot.insert(e.startx,e.starty,e.stopx,e.stopy),ot.models.addNote(e)},"drawNote"),l0=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont"),sy=o(t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),"noteFont"),s$=o(t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}),"actorFont");o(AJe,"boundMessage");_Je=o(async function(t,e,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=e,d=qt.calculateTextDimensions(l,l0(Me)),p=r2();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Me.messageFontFamily,p.fontSize=Me.messageFontSize,p.fontWeight=Me.messageFontWeight,p.anchor=Me.messageAlign,p.valign="center",p.textMargin=Me.wrapPadding,p.tspan=!1,kn(p.text)?await k4(t,p,{startx:i,stopx:a,starty:r}):o0(t,p);let m=d.width,g;i===a?Me.rightAngles?g=t.append("path").attr("d",`M ${i},${r} H ${i+tt.getMax(Me.width/2,m/2)} V ${r+25} H ${i}`):g=t.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=t.append("line"),g.attr("x1",i),g.attr("y1",r),g.attr("x2",a),g.attr("y2",r)),u===n.db.LINETYPE.DOTTED||u===n.db.LINETYPE.DOTTED_CROSS||u===n.db.LINETYPE.DOTTED_POINT||u===n.db.LINETYPE.DOTTED_OPEN||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED?(g.style("stroke-dasharray","3, 3"),g.attr("class","messageLine1")):g.attr("class","messageLine0");let y="";Me.arrowMarkerAbsolute&&(y=md(!0)),g.attr("stroke-width",2),g.attr("stroke","none"),g.style("fill","none"),(u===n.db.LINETYPE.SOLID||u===n.db.LINETYPE.DOTTED)&&g.attr("marker-end","url("+y+"#arrowhead)"),(u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(g.attr("marker-start","url("+y+"#arrowhead)"),g.attr("marker-end","url("+y+"#arrowhead)")),(u===n.db.LINETYPE.SOLID_POINT||u===n.db.LINETYPE.DOTTED_POINT)&&g.attr("marker-end","url("+y+"#filled-head)"),(u===n.db.LINETYPE.SOLID_CROSS||u===n.db.LINETYPE.DOTTED_CROSS)&&g.attr("marker-end","url("+y+"#crosshead)"),(f||Me.showSequenceNumbers)&&((u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(ii&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),Xye=o(function(t){Rn(Me,t),t.fontFamily&&(Me.actorFontFamily=Me.noteFontFamily=Me.messageFontFamily=t.fontFamily),t.fontSize&&(Me.actorFontSize=Me.noteFontSize=Me.messageFontSize=t.fontSize),t.fontWeight&&(Me.actorFontWeight=Me.noteFontWeight=Me.messageFontWeight=t.fontWeight)},"setConf"),rC=o(function(t){return ot.activations.filter(function(e){return e.actor===t})},"actorActivations"),Wye=o(function(t,e){let r=e.get(t),n=rC(t),i=n.reduce(function(s,l){return tt.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return tt.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(ru,"adjustLoopHeightForWrap");o(LJe,"adjustCreatedDestroyedData");RJe=o(async function(t,e,r,n){let{securityLevel:i,sequence:a}=ge();Me=a;let s;i==="sandbox"&&(s=qe("#i"+e));let l=i==="sandbox"?qe(s.nodes()[0].contentDocument.body):qe("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;ot.init(),X.debug(n.db);let h=i==="sandbox"?l.select(`[id="${e}"]`):qe(`[id="${e}"]`),f=n.db.getActors(),d=n.db.getCreatedActors(),p=n.db.getDestroyedActors(),m=n.db.getBoxes(),g=n.db.getActorKeys(),y=n.db.getMessages(),v=n.db.getDiagramTitle(),x=n.db.hasAtLeastOneBox(),b=n.db.hasAtLeastOneBoxWithTitle(),T=await NJe(f,y,n);if(Me.height=await IJe(f,T,m),mi.insertComputerIcon(h),mi.insertDatabaseIcon(h),mi.insertClockIcon(h),x&&(ot.bumpVerticalPos(Me.boxMargin),b&&ot.bumpVerticalPos(m[0].textMaxHeight)),Me.hideUnusedParticipants===!0){let B=new Set;y.forEach(F=>{B.add(F.from),B.add(F.to)}),g=g.filter(F=>B.has(F))}DJe(h,f,d,g,0,y,!1);let S=await BJe(y,f,T,n);mi.insertArrowHead(h),mi.insertArrowCrossHead(h),mi.insertArrowFilledHead(h),mi.insertSequenceNumber(h);function w(B,F){let V=ot.endActivation(B);V.starty+18>F&&(V.starty=F-6,F+=12),mi.drawActivation(h,V,F,Me,rC(B.from).length),ot.insert(V.startx,F-10,V.stopx,F)}o(w,"activeEnd");let k=1,C=1,A=[],L=[],I=0;for(let B of y){let F,V,$;switch(B.type){case n.db.LINETYPE.NOTE:ot.resetVerticalPos(),V=B.noteModel,await CJe(h,V);break;case n.db.LINETYPE.ACTIVE_START:ot.newActivation(B,h,f);break;case n.db.LINETYPE.ACTIVE_END:w(B,ot.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:ru(S,B,Me.boxMargin,Me.boxMargin+Me.boxTextMargin,U=>ot.newLoop(U));break;case n.db.LINETYPE.LOOP_END:F=ot.endLoop(),await mi.drawLoop(h,F,"loop",Me),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos()),ot.models.addLoop(F);break;case n.db.LINETYPE.RECT_START:ru(S,B,Me.boxMargin,Me.boxMargin,U=>ot.newLoop(void 0,U.message));break;case n.db.LINETYPE.RECT_END:F=ot.endLoop(),L.push(F),ot.models.addLoop(F),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos());break;case n.db.LINETYPE.OPT_START:ru(S,B,Me.boxMargin,Me.boxMargin+Me.boxTextMargin,U=>ot.newLoop(U));break;case n.db.LINETYPE.OPT_END:F=ot.endLoop(),await mi.drawLoop(h,F,"opt",Me),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos()),ot.models.addLoop(F);break;case n.db.LINETYPE.ALT_START:ru(S,B,Me.boxMargin,Me.boxMargin+Me.boxTextMargin,U=>ot.newLoop(U));break;case n.db.LINETYPE.ALT_ELSE:ru(S,B,Me.boxMargin+Me.boxTextMargin,Me.boxMargin,U=>ot.addSectionToLoop(U));break;case n.db.LINETYPE.ALT_END:F=ot.endLoop(),await mi.drawLoop(h,F,"alt",Me),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos()),ot.models.addLoop(F);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:ru(S,B,Me.boxMargin,Me.boxMargin+Me.boxTextMargin,U=>ot.newLoop(U)),ot.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:ru(S,B,Me.boxMargin+Me.boxTextMargin,Me.boxMargin,U=>ot.addSectionToLoop(U));break;case n.db.LINETYPE.PAR_END:F=ot.endLoop(),await mi.drawLoop(h,F,"par",Me),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos()),ot.models.addLoop(F);break;case n.db.LINETYPE.AUTONUMBER:k=B.message.start||k,C=B.message.step||C,B.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:ru(S,B,Me.boxMargin,Me.boxMargin+Me.boxTextMargin,U=>ot.newLoop(U));break;case n.db.LINETYPE.CRITICAL_OPTION:ru(S,B,Me.boxMargin+Me.boxTextMargin,Me.boxMargin,U=>ot.addSectionToLoop(U));break;case n.db.LINETYPE.CRITICAL_END:F=ot.endLoop(),await mi.drawLoop(h,F,"critical",Me),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos()),ot.models.addLoop(F);break;case n.db.LINETYPE.BREAK_START:ru(S,B,Me.boxMargin,Me.boxMargin+Me.boxTextMargin,U=>ot.newLoop(U));break;case n.db.LINETYPE.BREAK_END:F=ot.endLoop(),await mi.drawLoop(h,F,"break",Me),ot.bumpVerticalPos(F.stopy-ot.getVerticalPos()),ot.models.addLoop(F);break;default:try{$=B.msgModel,$.starty=ot.getVerticalPos(),$.sequenceIndex=k,$.sequenceVisible=n.db.showSequenceNumbers();let U=await AJe(h,$);LJe(B,$,U,I,f,d,p),A.push({messageModel:$,lineStartY:U}),ot.models.addMessage($)}catch(U){X.error("error while drawing message",U)}}[n.db.LINETYPE.SOLID_OPEN,n.db.LINETYPE.DOTTED_OPEN,n.db.LINETYPE.SOLID,n.db.LINETYPE.DOTTED,n.db.LINETYPE.SOLID_CROSS,n.db.LINETYPE.DOTTED_CROSS,n.db.LINETYPE.SOLID_POINT,n.db.LINETYPE.DOTTED_POINT,n.db.LINETYPE.BIDIRECTIONAL_SOLID,n.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(B.type)&&(k=k+C),I++}X.debug("createdActors",d),X.debug("destroyedActors",p),await o$(h,f,g,!1);for(let B of A)await _Je(h,B.messageModel,B.lineStartY,n);Me.mirrorActors&&await o$(h,f,g,!0),L.forEach(B=>mi.drawBackgroundRect(h,B)),a$(h,f,g,Me);for(let B of ot.models.boxes){B.height=ot.getVerticalPos()-B.y,ot.insert(B.x,B.y,B.x+B.width,B.height);let F=Me.boxMargin*2;B.startx=B.x-F,B.starty=B.y-F*.25,B.stopx=B.startx+B.width+2*F,B.stopy=B.starty+B.height+F*.75,B.stroke="rgb(0,0,0, 0.5)",mi.drawBox(h,B,Me)}x&&ot.bumpVerticalPos(Me.boxMargin);let R=Yye(h,f,g,u),{bounds:E}=ot.getBounds();E.startx===void 0&&(E.startx=0),E.starty===void 0&&(E.starty=0),E.stopx===void 0&&(E.stopx=0),E.stopy===void 0&&(E.stopy=0);let _=E.stopy-E.starty;_2,d=o(y=>l?-y:y,"adjustValue");t.from===t.to?h=u:(t.activate&&!f&&(h+=d(Me.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);t.wrap&&t.message&&(t.message=qt.wrapLabel(t.message,tt.getMax(m+2*Me.wrapPadding,Me.width),l0(Me)));let g=qt.calculateTextDimensions(t.message,l0(Me));return{width:tt.getMax(t.wrap?0:g.width+2*Me.wrapPadding,m+2*Me.wrapPadding,Me.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),BJe=o(async function(t,e,r,n){let i={},a=[],s,l,u;for(let h of t){switch(h.type){case n.db.LINETYPE.LOOP_START:case n.db.LINETYPE.ALT_START:case n.db.LINETYPE.OPT_START:case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:case n.db.LINETYPE.CRITICAL_START:case n.db.LINETYPE.BREAK_START:a.push({id:h.id,msg:h.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case n.db.LINETYPE.ALT_ELSE:case n.db.LINETYPE.PAR_AND:case n.db.LINETYPE.CRITICAL_OPTION:h.message&&(s=a.pop(),i[s.id]=s,i[h.id]=s,a.push(s));break;case n.db.LINETYPE.LOOP_END:case n.db.LINETYPE.ALT_END:case n.db.LINETYPE.OPT_END:case n.db.LINETYPE.PAR_END:case n.db.LINETYPE.CRITICAL_END:case n.db.LINETYPE.BREAK_END:s=a.pop(),i[s.id]=s;break;case n.db.LINETYPE.ACTIVE_START:{let d=e.get(h.from?h.from:h.to.actor),p=rC(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Me.activationWidth/2,g={startx:m,stopx:m+Me.activationWidth,actor:h.from,enabled:!0};ot.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=ot.activations.map(p=>p.actor).lastIndexOf(h.from);ot.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await OJe(h,e,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=tt.getMin(s.from,l.startx),s.to=tt.getMax(s.to,l.startx+l.width),s.width=tt.getMax(s.width,Math.abs(s.from-s.to))-Me.labelBoxWidth})):(u=PJe(h,e,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=e.get(h.from),m=e.get(h.to);s.from=tt.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=tt.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=tt.getMax(s.width,Math.abs(s.to-s.from))-Me.labelBoxWidth}else s.from=tt.getMin(u.startx,s.from),s.to=tt.getMax(u.stopx,s.to),s.width=tt.getMax(s.width,u.width)-Me.labelBoxWidth}))}return ot.activations=[],X.debug("Loop type widths:",i),i},"calculateLoopBounds"),jye={bounds:ot,drawActors:o$,drawActorsPopup:Yye,setConf:Xye,draw:RJe}});var Qye={};dr(Qye,{diagram:()=>FJe});var FJe,Zye=M(()=>{"use strict";$ye();n$();Gye();Xt();Kye();FJe={parser:Fye,get db(){return new J6},renderer:jye,styles:zye,init:o(t=>{t.sequence||(t.sequence={}),t.wrap&&(t.sequence.wrap=t.wrap,iv({sequence:{wrap:t.wrap}}))},"init")}});var l$,nC,c$=M(()=>{"use strict";l$=(function(){var t=o(function(Ie,Ne,Ce,Fe){for(Ce=Ce||{},Fe=Ie.length;Fe--;Ce[Ie[Fe]]=Ne);return Ce},"o"),e=[1,18],r=[1,19],n=[1,20],i=[1,41],a=[1,42],s=[1,26],l=[1,24],u=[1,25],h=[1,32],f=[1,33],d=[1,34],p=[1,45],m=[1,35],g=[1,36],y=[1,37],v=[1,38],x=[1,27],b=[1,28],T=[1,29],S=[1,30],w=[1,31],k=[1,44],C=[1,46],A=[1,43],L=[1,47],I=[1,9],R=[1,8,9],E=[1,58],_=[1,59],D=[1,60],O=[1,61],N=[1,62],P=[1,63],B=[1,64],F=[1,8,9,41],V=[1,76],$=[1,8,9,12,13,22,39,41,44,68,69,70,71,72,73,74,79,81],U=[1,8,9,12,13,18,20,22,39,41,44,50,60,68,69,70,71,72,73,74,79,81,86,100,102,103],j=[13,60,86,100,102,103],ee=[13,60,73,74,86,100,102,103],q=[13,60,68,69,70,71,72,86,100,102,103],oe=[1,100],Q=[1,117],ue=[1,113],te=[1,109],re=[1,115],J=[1,110],K=[1,111],ae=[1,112],Z=[1,114],de=[1,116],ne=[22,48,60,61,82,86,87,88,89,90],Te=[1,8,9,39,41,44],W=[1,8,9,22],Ve=[1,145],pe=[1,8,9,61],Be=[1,8,9,22,48,60,61,82,86,87,88,89,90],Ye={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,emptyBody:47,SPACE:48,ANNOTATION_START:49,ANNOTATION_END:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",48:"SPACE",49:"ANNOTATION_START",50:"ANNOTATION_END",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[43,2],[43,3],[47,0],[47,2],[47,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:o(function(Ne,Ce,Fe,fe,xe,Y,he){var z=Y.length-1;switch(xe){case 8:this.$=Y[z-1];break;case 9:case 10:case 13:case 15:this.$=Y[z];break;case 11:case 14:this.$=Y[z-2]+"."+Y[z];break;case 12:case 16:this.$=Y[z-1]+Y[z];break;case 17:case 18:this.$=Y[z-1]+"~"+Y[z]+"~";break;case 19:fe.addRelation(Y[z]);break;case 20:Y[z-1].title=fe.cleanupLabel(Y[z]),fe.addRelation(Y[z-1]);break;case 31:this.$=Y[z].trim(),fe.setAccTitle(this.$);break;case 32:case 33:this.$=Y[z].trim(),fe.setAccDescription(this.$);break;case 34:fe.addClassesToNamespace(Y[z-3],Y[z-1]);break;case 35:fe.addClassesToNamespace(Y[z-4],Y[z-1]);break;case 36:this.$=Y[z],fe.addNamespace(Y[z]);break;case 37:this.$=[Y[z]];break;case 38:this.$=[Y[z-1]];break;case 39:Y[z].unshift(Y[z-2]),this.$=Y[z];break;case 41:fe.setCssClass(Y[z-2],Y[z]);break;case 42:fe.addMembers(Y[z-3],Y[z-1]);break;case 44:fe.setCssClass(Y[z-5],Y[z-3]),fe.addMembers(Y[z-5],Y[z-1]);break;case 45:this.$=Y[z],fe.addClass(Y[z]);break;case 46:this.$=Y[z-1],fe.addClass(Y[z-1]),fe.setClassLabel(Y[z-1],Y[z]);break;case 50:fe.addAnnotation(Y[z],Y[z-2]);break;case 51:case 64:this.$=[Y[z]];break;case 52:Y[z].push(Y[z-1]),this.$=Y[z];break;case 53:break;case 54:fe.addMember(Y[z-1],fe.cleanupLabel(Y[z]));break;case 55:break;case 56:break;case 57:this.$={id1:Y[z-2],id2:Y[z],relation:Y[z-1],relationTitle1:"none",relationTitle2:"none"};break;case 58:this.$={id1:Y[z-3],id2:Y[z],relation:Y[z-1],relationTitle1:Y[z-2],relationTitle2:"none"};break;case 59:this.$={id1:Y[z-3],id2:Y[z],relation:Y[z-2],relationTitle1:"none",relationTitle2:Y[z-1]};break;case 60:this.$={id1:Y[z-4],id2:Y[z],relation:Y[z-2],relationTitle1:Y[z-3],relationTitle2:Y[z-1]};break;case 61:fe.addNote(Y[z],Y[z-1]);break;case 62:fe.addNote(Y[z]);break;case 63:this.$=Y[z-2],fe.defineClass(Y[z-1],Y[z]);break;case 65:this.$=Y[z-2].concat([Y[z]]);break;case 66:fe.setDirection("TB");break;case 67:fe.setDirection("BT");break;case 68:fe.setDirection("RL");break;case 69:fe.setDirection("LR");break;case 70:this.$={type1:Y[z-2],type2:Y[z],lineType:Y[z-1]};break;case 71:this.$={type1:"none",type2:Y[z],lineType:Y[z-1]};break;case 72:this.$={type1:Y[z-1],type2:"none",lineType:Y[z]};break;case 73:this.$={type1:"none",type2:"none",lineType:Y[z]};break;case 74:this.$=fe.relationType.AGGREGATION;break;case 75:this.$=fe.relationType.EXTENSION;break;case 76:this.$=fe.relationType.COMPOSITION;break;case 77:this.$=fe.relationType.DEPENDENCY;break;case 78:this.$=fe.relationType.LOLLIPOP;break;case 79:this.$=fe.lineType.LINE;break;case 80:this.$=fe.lineType.DOTTED_LINE;break;case 81:case 87:this.$=Y[z-2],fe.setClickEvent(Y[z-1],Y[z]);break;case 82:case 88:this.$=Y[z-3],fe.setClickEvent(Y[z-2],Y[z-1]),fe.setTooltip(Y[z-2],Y[z]);break;case 83:this.$=Y[z-2],fe.setLink(Y[z-1],Y[z]);break;case 84:this.$=Y[z-3],fe.setLink(Y[z-2],Y[z-1],Y[z]);break;case 85:this.$=Y[z-3],fe.setLink(Y[z-2],Y[z-1]),fe.setTooltip(Y[z-2],Y[z]);break;case 86:this.$=Y[z-4],fe.setLink(Y[z-3],Y[z-2],Y[z]),fe.setTooltip(Y[z-3],Y[z-1]);break;case 89:this.$=Y[z-3],fe.setClickEvent(Y[z-2],Y[z-1],Y[z]);break;case 90:this.$=Y[z-4],fe.setClickEvent(Y[z-3],Y[z-2],Y[z-1]),fe.setTooltip(Y[z-3],Y[z]);break;case 91:this.$=Y[z-3],fe.setLink(Y[z-2],Y[z]);break;case 92:this.$=Y[z-4],fe.setLink(Y[z-3],Y[z-1],Y[z]);break;case 93:this.$=Y[z-4],fe.setLink(Y[z-3],Y[z-1]),fe.setTooltip(Y[z-3],Y[z]);break;case 94:this.$=Y[z-5],fe.setLink(Y[z-4],Y[z-2],Y[z]),fe.setTooltip(Y[z-4],Y[z-1]);break;case 95:this.$=Y[z-2],fe.setCssStyle(Y[z-1],Y[z]);break;case 96:fe.setCssClass(Y[z-1],Y[z]);break;case 97:this.$=[Y[z]];break;case 98:Y[z-2].push(Y[z]),this.$=Y[z-2];break;case 100:this.$=Y[z-1]+Y[z];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:v,75:x,76:b,78:T,82:S,83:w,86:k,100:C,102:A,103:L},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(I,[2,5],{8:[1,48]}),{8:[1,49]},t(R,[2,19],{22:[1,50]}),t(R,[2,21]),t(R,[2,22]),t(R,[2,23]),t(R,[2,24]),t(R,[2,25]),t(R,[2,26]),t(R,[2,27]),t(R,[2,28]),t(R,[2,29]),t(R,[2,30]),{34:[1,51]},{36:[1,52]},t(R,[2,33]),t(R,[2,53],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:E,69:_,70:D,71:O,72:N,73:P,74:B}),{39:[1,65]},t(F,[2,40],{39:[1,67],44:[1,66]}),t(R,[2,55]),t(R,[2,56]),{16:68,60:p,86:k,100:C,102:A},{16:39,17:40,19:69,60:p,86:k,100:C,102:A,103:L},{16:39,17:40,19:70,60:p,86:k,100:C,102:A,103:L},{16:39,17:40,19:71,60:p,86:k,100:C,102:A,103:L},{60:[1,72]},{13:[1,73]},{16:39,17:40,19:74,60:p,86:k,100:C,102:A,103:L},{13:V,55:75},{58:77,60:[1,78]},t(R,[2,66]),t(R,[2,67]),t(R,[2,68]),t(R,[2,69]),t($,[2,13],{16:39,17:40,19:80,18:[1,79],20:[1,81],60:p,86:k,100:C,102:A,103:L}),t($,[2,15],{20:[1,82]}),{15:83,16:84,17:85,60:p,86:k,100:C,102:A,103:L},{16:39,17:40,19:86,60:p,86:k,100:C,102:A,103:L},t(U,[2,123]),t(U,[2,124]),t(U,[2,125]),t(U,[2,126]),t([1,8,9,12,13,20,22,39,41,44,68,69,70,71,72,73,74,79,81],[2,127]),t(I,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:87,33:e,35:r,37:n,42:i,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:v,75:x,76:b,78:T,82:S,83:w,86:k,100:C,102:A,103:L}),{5:88,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:v,75:x,76:b,78:T,82:S,83:w,86:k,100:C,102:A,103:L},t(R,[2,20]),t(R,[2,31]),t(R,[2,32]),{13:[1,90],16:39,17:40,19:89,60:p,86:k,100:C,102:A,103:L},{53:91,66:56,67:57,68:E,69:_,70:D,71:O,72:N,73:P,74:B},t(R,[2,54]),{67:92,73:P,74:B},t(j,[2,73],{66:93,68:E,69:_,70:D,71:O,72:N}),t(ee,[2,74]),t(ee,[2,75]),t(ee,[2,76]),t(ee,[2,77]),t(ee,[2,78]),t(q,[2,79]),t(q,[2,80]),{8:[1,95],24:96,40:94,43:23,46:a},{16:97,60:p,86:k,100:C,102:A},{41:[1,99],45:98,51:oe},{50:[1,101]},{13:[1,102]},{13:[1,103]},{79:[1,104],81:[1,105]},{22:Q,48:ue,59:106,60:te,82:re,84:107,85:108,86:J,87:K,88:ae,89:Z,90:de},{60:[1,118]},{13:V,55:119},t(R,[2,62]),t(R,[2,128]),{22:Q,48:ue,59:120,60:te,61:[1,121],82:re,84:107,85:108,86:J,87:K,88:ae,89:Z,90:de},t(ne,[2,64]),{16:39,17:40,19:122,60:p,86:k,100:C,102:A,103:L},t($,[2,16]),t($,[2,17]),t($,[2,18]),{39:[2,36]},{15:124,16:84,17:85,18:[1,123],39:[2,9],60:p,86:k,100:C,102:A,103:L},{39:[2,10]},t(Te,[2,45],{11:125,12:[1,126]}),t(I,[2,7]),{9:[1,127]},t(W,[2,57]),{16:39,17:40,19:128,60:p,86:k,100:C,102:A,103:L},{13:[1,130],16:39,17:40,19:129,60:p,86:k,100:C,102:A,103:L},t(j,[2,72],{66:131,68:E,69:_,70:D,71:O,72:N}),t(j,[2,71]),{41:[1,132]},{24:96,40:133,43:23,46:a},{8:[1,134],41:[2,37]},t(F,[2,41],{39:[1,135]}),{41:[1,136]},t(F,[2,43]),{41:[2,51],45:137,51:oe},{16:39,17:40,19:138,60:p,86:k,100:C,102:A,103:L},t(R,[2,81],{13:[1,139]}),t(R,[2,83],{13:[1,141],77:[1,140]}),t(R,[2,87],{13:[1,142],80:[1,143]}),{13:[1,144]},t(R,[2,95],{61:Ve}),t(pe,[2,97],{85:146,22:Q,48:ue,60:te,82:re,86:J,87:K,88:ae,89:Z,90:de}),t(Be,[2,99]),t(Be,[2,101]),t(Be,[2,102]),t(Be,[2,103]),t(Be,[2,104]),t(Be,[2,105]),t(Be,[2,106]),t(Be,[2,107]),t(Be,[2,108]),t(Be,[2,109]),t(R,[2,96]),t(R,[2,61]),t(R,[2,63],{61:Ve}),{60:[1,147]},t($,[2,14]),{15:148,16:84,17:85,60:p,86:k,100:C,102:A,103:L},{39:[2,12]},t(Te,[2,46]),{13:[1,149]},{1:[2,4]},t(W,[2,59]),t(W,[2,58]),{16:39,17:40,19:150,60:p,86:k,100:C,102:A,103:L},t(j,[2,70]),t(R,[2,34]),{41:[1,151]},{24:96,40:152,41:[2,38],43:23,46:a},{45:153,51:oe},t(F,[2,42]),{41:[2,52]},t(R,[2,50]),t(R,[2,82]),t(R,[2,84]),t(R,[2,85],{77:[1,154]}),t(R,[2,88]),t(R,[2,89],{13:[1,155]}),t(R,[2,91],{13:[1,157],77:[1,156]}),{22:Q,48:ue,60:te,82:re,84:158,85:108,86:J,87:K,88:ae,89:Z,90:de},t(Be,[2,100]),t(ne,[2,65]),{39:[2,11]},{14:[1,159]},t(W,[2,60]),t(R,[2,35]),{41:[2,39]},{41:[1,160]},t(R,[2,86]),t(R,[2,90]),t(R,[2,92]),t(R,[2,93],{77:[1,161]}),t(pe,[2,98],{85:146,22:Q,48:ue,60:te,82:re,86:J,87:K,88:ae,89:Z,90:de}),t(Te,[2,8]),t(F,[2,44]),t(R,[2,94])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,36],85:[2,10],124:[2,12],127:[2,4],137:[2,52],148:[2,11],152:[2,39]},parseError:o(function(Ne,Ce){if(Ce.recoverable)this.trace(Ne);else{var Fe=new Error(Ne);throw Fe.hash=Ce,Fe}},"parseError"),parse:o(function(Ne){var Ce=this,Fe=[0],fe=[],xe=[null],Y=[],he=this.table,z="",se=0,le=0,ke=0,ve=2,ye=1,Re=Y.slice.call(arguments,1),_e=Object.create(this.lexer),ze={yy:{}};for(var Ke in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ke)&&(ze.yy[Ke]=this.yy[Ke]);_e.setInput(Ne,ze.yy),ze.yy.lexer=_e,ze.yy.parser=this,typeof _e.yylloc>"u"&&(_e.yylloc={});var xt=_e.yylloc;Y.push(xt);var We=_e.options&&_e.options.ranges;typeof ze.yy.parseError=="function"?this.parseError=ze.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Oe(_t){Fe.length=Fe.length-2*_t,xe.length=xe.length-_t,Y.length=Y.length-_t}o(Oe,"popStack");function et(){var _t;return _t=fe.pop()||_e.lex()||ye,typeof _t!="number"&&(_t instanceof Array&&(fe=_t,_t=fe.pop()),_t=Ce.symbols_[_t]||_t),_t}o(et,"lex");for(var Ue,lt,Gt,vt,Lt,dt,nt={},bt,wt,yt,ft;;){if(Gt=Fe[Fe.length-1],this.defaultActions[Gt]?vt=this.defaultActions[Gt]:((Ue===null||typeof Ue>"u")&&(Ue=et()),vt=he[Gt]&&he[Gt][Ue]),typeof vt>"u"||!vt.length||!vt[0]){var Ur="";ft=[];for(bt in he[Gt])this.terminals_[bt]&&bt>ve&&ft.push("'"+this.terminals_[bt]+"'");_e.showPosition?Ur="Parse error on line "+(se+1)+`: -`+_e.showPosition()+` -Expecting `+ft.join(", ")+", got '"+(this.terminals_[Ue]||Ue)+"'":Ur="Parse error on line "+(se+1)+": Unexpected "+(Ue==ye?"end of input":"'"+(this.terminals_[Ue]||Ue)+"'"),this.parseError(Ur,{text:_e.match,token:this.terminals_[Ue]||Ue,line:_e.yylineno,loc:xt,expected:ft})}if(vt[0]instanceof Array&&vt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Gt+", token: "+Ue);switch(vt[0]){case 1:Fe.push(Ue),xe.push(_e.yytext),Y.push(_e.yylloc),Fe.push(vt[1]),Ue=null,lt?(Ue=lt,lt=null):(le=_e.yyleng,z=_e.yytext,se=_e.yylineno,xt=_e.yylloc,ke>0&&ke--);break;case 2:if(wt=this.productions_[vt[1]][1],nt.$=xe[xe.length-wt],nt._$={first_line:Y[Y.length-(wt||1)].first_line,last_line:Y[Y.length-1].last_line,first_column:Y[Y.length-(wt||1)].first_column,last_column:Y[Y.length-1].last_column},We&&(nt._$.range=[Y[Y.length-(wt||1)].range[0],Y[Y.length-1].range[1]]),dt=this.performAction.apply(nt,[z,le,se,ze.yy,vt[1],xe,Y].concat(Re)),typeof dt<"u")return dt;wt&&(Fe=Fe.slice(0,-1*wt*2),xe=xe.slice(0,-1*wt),Y=Y.slice(0,-1*wt)),Fe.push(this.productions_[vt[1]][0]),xe.push(nt.$),Y.push(nt._$),yt=he[Fe[Fe.length-2]][Fe[Fe.length-1]],Fe.push(yt);break;case 3:return!0}}return!0},"parse")},He=(function(){var Ie={EOF:1,parseError:o(function(Ce,Fe){if(this.yy.parser)this.yy.parser.parseError(Ce,Fe);else throw new Error(Ce)},"parseError"),setInput:o(function(Ne,Ce){return this.yy=Ce||this.yy||{},this._input=Ne,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var Ne=this._input[0];this.yytext+=Ne,this.yyleng++,this.offset++,this.match+=Ne,this.matched+=Ne;var Ce=Ne.match(/(?:\r\n?|\n).*/g);return Ce?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ne},"input"),unput:o(function(Ne){var Ce=Ne.length,Fe=Ne.split(/(?:\r\n?|\n)/g);this._input=Ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ce),this.offset-=Ce;var fe=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Fe.length-1&&(this.yylineno-=Fe.length-1);var xe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Fe?(Fe.length===fe.length?this.yylloc.first_column:0)+fe[fe.length-Fe.length].length-Fe[0].length:this.yylloc.first_column-Ce},this.options.ranges&&(this.yylloc.range=[xe[0],xe[0]+this.yyleng-Ce]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Ne){this.unput(this.match.slice(Ne))},"less"),pastInput:o(function(){var Ne=this.matched.substr(0,this.matched.length-this.match.length);return(Ne.length>20?"...":"")+Ne.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Ne=this.match;return Ne.length<20&&(Ne+=this._input.substr(0,20-Ne.length)),(Ne.substr(0,20)+(Ne.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Ne=this.pastInput(),Ce=new Array(Ne.length+1).join("-");return Ne+this.upcomingInput()+` -`+Ce+"^"},"showPosition"),test_match:o(function(Ne,Ce){var Fe,fe,xe;if(this.options.backtrack_lexer&&(xe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(xe.yylloc.range=this.yylloc.range.slice(0))),fe=Ne[0].match(/(?:\r\n?|\n).*/g),fe&&(this.yylineno+=fe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:fe?fe[fe.length-1].length-fe[fe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ne[0].length},this.yytext+=Ne[0],this.match+=Ne[0],this.matches=Ne,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ne[0].length),this.matched+=Ne[0],Fe=this.performAction.call(this,this.yy,this,Ce,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Fe)return Fe;if(this._backtrack){for(var Y in xe)this[Y]=xe[Y];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ne,Ce,Fe,fe;this._more||(this.yytext="",this.match="");for(var xe=this._currentRules(),Y=0;YCe[0].length)){if(Ce=Fe,fe=Y,this.options.backtrack_lexer){if(Ne=this.test_match(Fe,xe[Y]),Ne!==!1)return Ne;if(this._backtrack){Ce=!1;continue}else return!1}else if(!this.options.flex)break}return Ce?(Ne=this.test_match(Ce,xe[fe]),Ne!==!1?Ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ce=this.next();return Ce||this.lex()},"lex"),begin:o(function(Ce){this.conditionStack.push(Ce)},"begin"),popState:o(function(){var Ce=this.conditionStack.length-1;return Ce>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ce){return Ce=this.conditionStack.length-1-Math.abs(Ce||0),Ce>=0?this.conditionStack[Ce]:"INITIAL"},"topState"),pushState:o(function(Ce){this.begin(Ce)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ce,Fe,fe,xe){var Y=xe;switch(fe){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),46;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 83;case 50:return 75;case 51:return 76;case 52:return 78;case 53:return 54;case 54:return 56;case 55:return 49;case 56:return 50;case 57:return 81;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 77;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 69;case 69:return 69;case 70:return 71;case 71:return 71;case 72:return 70;case 73:return 68;case 74:return 72;case 75:return 73;case 76:return 74;case 77:return 22;case 78:return 44;case 79:return 100;case 80:return 18;case 81:return"PLUS";case 82:return 87;case 83:return 61;case 84:return 89;case 85:return 89;case 86:return 90;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 60;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 86;case 94:return 102;case 95:return 48;case 96:return 48;case 97:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return Ie})();Ye.lexer=He;function Le(){this.yy={}}return o(Le,"Parser"),Le.prototype=Ye,Ye.Parser=Le,new Le})();l$.parser=l$;nC=l$});var tve,E4,rve=M(()=>{"use strict";Xt();gr();tve=["#","+","~","-",""],E4=class{static{o(this,"ClassMember")}constructor(e,r){this.memberType=r,this.visibility="",this.classifier="",this.text="";let n=sr(e,ge());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+rc(this.id);this.memberType==="method"&&(e+=`(${rc(this.parameters.trim())})`,this.returnType&&(e+=" : "+rc(this.returnType))),e=e.trim();let r=this.parseClassifier();return{displayText:e,cssStyle:r}}parseMember(e){let r="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let s=a[1]?a[1].trim():"";if(tve.includes(s)&&(this.visibility=s),this.id=a[2],this.parameters=a[3]?a[3].trim():"",r=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",r===""){let l=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(l)&&(r=l,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let i=e.length,a=e.substring(0,1),s=e.substring(i-1);tve.includes(a)&&(this.visibility=a),/[$*]/.exec(s)&&(r=s),this.id=e.substring(this.visibility===""?0:1,r===""?i:i-1)}this.classifier=r,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${rc(this.id)}${this.memberType==="method"?`(${rc(this.parameters)})${this.returnType?" : "+rc(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});var iC,nve,c0,oy,u$=M(()=>{"use strict";yr();pt();Xt();gr();tr();ci();rve();iC="classId-",nve=0,c0=o(t=>tt.sanitizeText(t,ge()),"sanitizeText"),oy=class{constructor(){this.relations=[];this.classes=new Map;this.styleClasses=new Map;this.notes=[];this.interfaces=[];this.namespaces=new Map;this.namespaceCounter=0;this.functions=[];this.lineType={LINE:0,DOTTED_LINE:1};this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4};this.setupToolTips=o(e=>{let r=qe(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=qe("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),qe(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=qe(a.currentTarget);if(s.attr("title")===null)return;let u=this.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.top-14+document.body.scrollTop+"px"),r.html(r.html().replace(/<br\/>/g,"
    ")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),qe(a.currentTarget).classed("hover",!1)})},"setupToolTips");this.direction="TB";this.setAccTitle=Rr;this.getAccTitle=Mr;this.setAccDescription=Ir;this.getAccDescription=Or;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.getConfig=o(()=>ge().class,"getConfig");this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{o(this,"ClassDB")}splitClassNameAndType(e){let r=tt.sanitizeText(e,ge()),n="",i=r;if(r.indexOf("~")>0){let a=r.split("~");i=c0(a[0]),n=c0(a[1])}return{className:i,type:n}}setClassLabel(e,r){let n=tt.sanitizeText(e,ge());r&&(r=c0(r));let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).label=r,this.classes.get(i).text=`${r}${this.classes.get(i).type?`<${this.classes.get(i).type}>`:""}`}addClass(e){let r=tt.sanitizeText(e,ge()),{className:n,type:i}=this.splitClassNameAndType(r);if(this.classes.has(n))return;let a=tt.sanitizeText(n,ge());this.classes.set(a,{id:a,type:i,label:a,text:`${a}${i?`<${i}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:iC+a+"-"+nve}),nve++}addInterface(e,r){let n={id:`interface${this.interfaces.length}`,label:e,classId:r};this.interfaces.push(n)}lookUpDomId(e){let r=tt.sanitizeText(e,ge());if(this.classes.has(r))return this.classes.get(r).domId;throw new Error("Class not found: "+r)}clear(){this.relations=[],this.classes=new Map,this.notes=[],this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.direction="TB",Sr()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNotes(){return this.notes}addRelation(e){X.debug("Adding relation: "+JSON.stringify(e));let r=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];e.relation.type1===this.relationType.LOLLIPOP&&!r.includes(e.relation.type2)?(this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`):e.relation.type2===this.relationType.LOLLIPOP&&!r.includes(e.relation.type1)?(this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`):(this.addClass(e.id1),this.addClass(e.id2)),e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=tt.sanitizeText(e.relationTitle1.trim(),ge()),e.relationTitle2=tt.sanitizeText(e.relationTitle2.trim(),ge()),this.relations.push(e)}addAnnotation(e,r){let n=this.splitClassNameAndType(e).className;this.classes.get(n).annotations.push(r)}addMember(e,r){this.addClass(e);let n=this.splitClassNameAndType(e).className,i=this.classes.get(n);if(typeof r=="string"){let a=r.trim();a.startsWith("<<")&&a.endsWith(">>")?i.annotations.push(c0(a.substring(2,a.length-2))):a.indexOf(")")>0?i.methods.push(new E4(a,"method")):a&&i.members.push(new E4(a,"attribute"))}}addMembers(e,r){Array.isArray(r)&&(r.reverse(),r.forEach(n=>this.addMember(e,n)))}addNote(e,r){let n={id:`note${this.notes.length}`,class:r,text:e};this.notes.push(n)}cleanupLabel(e){return e.startsWith(":")&&(e=e.substring(1)),c0(e.trim())}setCssClass(e,r){e.split(",").forEach(n=>{let i=n;/\d/.exec(n[0])&&(i=iC+i);let a=this.classes.get(i);a&&(a.cssClasses+=" "+r)})}defineClass(e,r){for(let n of e){let i=this.styleClasses.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.styleClasses.set(n,i)),r&&r.forEach(a=>{if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.classes.forEach(a=>{a.cssClasses.includes(n)&&a.styles.push(...r.flatMap(s=>s.split(",")))})}}setTooltip(e,r){e.split(",").forEach(n=>{r!==void 0&&(this.classes.get(n).tooltip=c0(r))})}getTooltip(e,r){return r&&this.namespaces.has(r)?this.namespaces.get(r).classes.get(e).tooltip:this.classes.get(e).tooltip}setLink(e,r,n){let i=ge();e.split(",").forEach(a=>{let s=a;/\d/.exec(a[0])&&(s=iC+s);let l=this.classes.get(s);l&&(l.link=qt.formatUrl(r,i),i.securityLevel==="sandbox"?l.linkTarget="_top":typeof n=="string"?l.linkTarget=c0(n):l.linkTarget="_blank")}),this.setCssClass(e,"clickable")}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFunc(i,r,n),this.classes.get(i).haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,r,n){let i=tt.sanitizeText(e,ge());if(ge().securityLevel!=="loose"||r===void 0)return;let s=i;if(this.classes.has(s)){let l=this.lookUpDomId(s),u=[];if(typeof n=="string"){u=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let h=0;h{let h=document.querySelector(`[id="${l}"]`);h!==null&&h.addEventListener("click",()=>{qt.runFunc(r,...u)},!1)})}}bindFunctions(e){this.functions.forEach(r=>{r(e)})}getDirection(){return this.direction}setDirection(e){this.direction=e}addNamespace(e){this.namespaces.has(e)||(this.namespaces.set(e,{id:e,classes:new Map,children:{},domId:iC+e+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,r){if(this.namespaces.has(e))for(let n of r){let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).parent=e,this.namespaces.get(e).classes.set(i,this.classes.get(i))}}setCssStyle(e,r){let n=this.classes.get(e);if(!(!r||!n))for(let i of r)i.includes(",")?n.styles.push(...i.split(",")):n.styles.push(i)}getArrowMarker(e){let r;switch(e){case 0:r="aggregation";break;case 1:r="extension";break;case 2:r="composition";break;case 3:r="dependency";break;case 4:r="lollipop";break;default:r="none"}return r}getData(){let e=[],r=[],n=ge();for(let a of this.namespaces.keys()){let s=this.namespaces.get(a);if(s){let l={id:s.id,label:s.id,isGroup:!0,padding:n.class.padding??16,shape:"rect",cssStyles:["fill: none","stroke: black"],look:n.look};e.push(l)}}for(let a of this.classes.keys()){let s=this.classes.get(a);if(s){let l=s;l.parentId=s.parent,l.look=n.look,e.push(l)}}let i=0;for(let a of this.notes){i++;let s={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:n.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${n.themeVariables.noteBkgColor}`,`stroke: ${n.themeVariables.noteBorderColor}`],look:n.look};e.push(s);let l=this.classes.get(a.class)?.id??"";if(l){let u={id:`edgeNote${i}`,start:a.id,end:l,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:n.look};r.push(u)}}for(let a of this.interfaces){let s={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:n.look};e.push(s)}i=0;for(let a of this.relations){i++;let s={id:xc(a.id1,a.id2,{prefix:"id",counter:i}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:this.getDirection()}}}});var VJe,aC,h$=M(()=>{"use strict";yg();VJe=o(t=>`g.classGroup text { +`;y.append("path").attr("d",v).attr("fill","#eaeaea").attr("stroke","#000").attr("stroke-width",1).attr("class",f),n?y.attr("transform",`translate(${d*1.5}, ${h.height/4-2*g})`):y.attr("transform",`translate(${d*1.5}, ${(h.height+g)/4})`),e.rectData=h,tf(r,Nn(e.description))(e.description,u,h.x,h.y+(n?(h.height+p)/4:(h.height+g)/2),h.width,h.height,{class:`actor ${D7}`},r);let x=y.select("path:last-child");if(x.node()){let b=x.node().getBBox();e.height=b.height+(r.sequence.labelBoxHeight??0)}return e.height},"drawActorTypeDatabase"),uot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=30,u=t.append("g").lower();n||(jr++,u.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=jr);let h=t.append("g"),f=hp;n?f+=` ${dp}`:f+=` ${fp}`,h.attr("class",f),h.attr("name",e.name);let d=Na();d.x=e.x,d.y=i,d.fill="#eaeaea",d.width=e.width,d.height=e.height,d.class="actor",h.append("line").attr("id","actor-man-torso"+jr).attr("x1",e.x+e.width/2-l*2.5).attr("y1",i+10).attr("x2",e.x+e.width/2-15).attr("y2",i+10),h.append("line").attr("id","actor-man-arms"+jr).attr("x1",e.x+e.width/2-l*2.5).attr("y1",i+0).attr("x2",e.x+e.width/2-l*2.5).attr("y2",i+20),h.append("circle").attr("cx",e.x+e.width/2).attr("cy",i+10).attr("r",l);let p=h.node().getBBox();return e.height=p.height+(r.sequence.labelBoxHeight??0),tf(r,Nn(e.description))(e.description,h,d.x,d.y+(n?l/2-4:l/2+3),d.width,d.height,{class:`actor ${hp}`},r),n?h.attr("transform",`translate(0,${l/2+7})`):h.attr("transform",`translate(0,${l/2+7})`),e.height},"drawActorTypeBoundary"),hot=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=t.append("g").lower();n||(jr++,l.append("line").attr("id","actor"+jr).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=jr);let u=t.append("g"),h=hp;n?h+=` ${dp}`:h+=` ${fp}`,u.attr("class",h),u.attr("name",e.name);let f=Na();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+jr).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+jr).attr("x1",a-up/2).attr("y1",i+33).attr("x2",a+up/2).attr("y2",i+33),u.append("line").attr("x1",a-up/2).attr("y1",i+60).attr("x2",a).attr("y2",i+45),u.append("line").attr("x1",a).attr("y1",i+45).attr("x2",a+up/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",e.x+e.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",e.width),d.attr("height",e.height);let p=u.node().getBBox();return e.height=p.height,tf(r,Nn(e.description))(e.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${hp}`},r),e.height},"drawActorTypeActor"),fot=o(async function(t,e,r,n){switch(e.type){case"actor":return await hot(t,e,r,n);case"participant":return await iot(t,e,r,n);case"boundary":return await uot(t,e,r,n);case"control":return await oot(t,e,r,n);case"entity":return await lot(t,e,r,n);case"database":return await cot(t,e,r,n);case"collections":return await aot(t,e,r,n);case"queue":return await sot(t,e,r,n)}},"drawActor"),dot=o(function(t,e,r){let i=t.append("g");X3e(i,e),e.name&&tf(r)(e.name,i,e.x,e.y+r.boxTextMargin+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},r),i.lower()},"drawBox"),pot=o(function(t){return t.append("g")},"anchorElement"),mot=o(function(t,e,r,n,i){let a=Na(),s=e.anchored;a.x=e.startx,a.y=e.starty,a.class="activation"+i%3,a.width=e.stopx-e.startx,a.height=r-e.starty,i3(s,a)},"drawActivation"),got=o(async function(t,e,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=t.append("g"),p=o(function(y,v,x,b){return d.append("line").attr("x1",y).attr("y1",v).attr("x2",x).attr("y2",b).attr("class","loopLine")},"drawLoopLine");p(e.startx,e.starty,e.stopx,e.starty),p(e.stopx,e.starty,e.stopx,e.stopy),p(e.startx,e.stopy,e.stopx,e.stopy),p(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0&&e.sections.forEach(function(y){p(e.startx,y.y,e.stopx,y.y).style("stroke-dasharray","3, 3")});let m=Ex();m.text=r,m.x=e.startx,m.y=e.starty,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.anchor="middle",m.valign="middle",m.tspan=!1,m.width=l||50,m.height=s||20,m.textMargin=a,m.class="labelText",j3e(d,m),m=K3e(),m.text=e.title,m.x=e.startx+l/2+(e.stopx-e.startx)/2,m.y=e.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=Nn(m.text)?await a3(d,m,e):Um(d,m);if(e.sectionTitles!==void 0){for(let[y,v]of Object.entries(e.sectionTitles))if(v.message){m.text=v.message,m.x=e.startx+(e.stopx-e.startx)/2,m.y=e.sections[y].y+i+a,m.class="loopText",m.anchor="middle",m.valign="middle",m.tspan=!1,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=e.wrap,Nn(m.text)?(e.starty=e.sections[y].y,await a3(d,m,e)):Um(d,m);let x=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,T)=>b+T));e.sections[y].height+=x-(i+a)}}return e.height=Math.round(e.stopy-e.starty),d},"drawLoop"),X3e=o(function(t,e){U5(t,e)},"drawBackgroundRect"),yot=o(function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),vot=o(function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),xot=o(function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),bot=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),Tot=o(function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),wot=o(function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),kot=o(function(t){t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),K3e=o(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),Sot=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),tf=(function(){function t(a,s,l,u,h,f,d){let p=s.append("text").attr("x",l+h/2).attr("y",u+f/2+5).style("text-anchor","middle").text(a);i(p,d)}o(t,"byText");function e(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[v,x]=ru(m),b=a.split(nt.lineBreakRegex);for(let T=0;T{let s=Wm(Oe),l=a.actorKeys.reduce((d,p)=>d+=t.get(p).width+(t.get(p).margin||0),0),u=Oe.boxMargin*8;l+=u,l-=2*Oe.boxTextMargin,a.wrap&&(a.name=jt.wrapLabel(a.name,l-2*Oe.wrapPadding,s));let h=jt.calculateTextDimensions(a.name,s);i=nt.getMax(h.height,i);let f=nt.getMax(l,h.width+2*Oe.wrapPadding);if(a.margin=Oe.boxTextMargin,la.textMaxHeight=i),nt.getMax(n,Oe.height)}var Oe,ct,Cot,Wm,Dv,Uq,_ot,Dot,Wq,J3e,ewe,L7,Z3e,Lot,Mot,Oot,Pot,Bot,twe,rwe=I(()=>{"use strict";kr();Q3e();gt();wr();wr();Cx();Qt();tg();sr();Fi();Gq();Oe={},ct={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:o(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(t=>t.height||0))+(this.loops.length===0?0:this.loops.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.messages.length===0?0:this.messages.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.notes.length===0?0:this.notes.map(t=>t.height||0).reduce((t,e)=>t+e))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(t){this.boxes.push(t)},"addBox"),addActor:o(function(t){this.actors.push(t)},"addActor"),addLoop:o(function(t){this.loops.push(t)},"addLoop"),addMessage:o(function(t){this.messages.push(t)},"addMessage"),addNote:o(function(t){this.notes.push(t)},"addNote"),lastActor:o(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:o(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:o(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:o(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:o(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,ewe(xe())},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=this,a=0;function s(l){return o(function(h){a++;let f=i.sequenceItems.length-a+1;i.updateVal(h,"starty",e-f*Oe.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Oe.boxMargin,Math.max),i.updateVal(ct.data,"startx",t-f*Oe.boxMargin,Math.min),i.updateVal(ct.data,"stopx",r+f*Oe.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",t-f*Oe.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Oe.boxMargin,Math.max),i.updateVal(ct.data,"starty",e-f*Oe.boxMargin,Math.min),i.updateVal(ct.data,"stopy",n+f*Oe.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(t,e,r,n){let i=nt.getMin(t,r),a=nt.getMax(t,r),s=nt.getMin(e,n),l=nt.getMax(e,n);this.updateVal(ct.data,"startx",i,Math.min),this.updateVal(ct.data,"starty",s,Math.min),this.updateVal(ct.data,"stopx",a,Math.max),this.updateVal(ct.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(t,e,r){let n=r.get(t.from),i=L7(t.from).length||0,a=n.x+n.width/2+(i-1)*Oe.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Oe.activationWidth,stopy:void 0,actor:t.from,anchored:Ri.anchorElement(e)})},"newActivation"),endActivation:o(function(t){let e=this.activations.map(function(r){return r.actor}).lastIndexOf(t.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}},"createLoop"),newLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))},"newLoop"),endLoop:o(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:o(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:o(function(t){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:ct.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=nt.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return{bounds:this.data,models:this.models}},"getBounds")},Cot=o(async function(t,e){ct.bumpVerticalPos(Oe.boxMargin),e.height=Oe.boxMargin,e.starty=ct.getVerticalPos();let r=Na();r.x=e.startx,r.y=e.starty,r.width=e.width||Oe.width,r.class="note";let n=t.append("g"),i=Ri.drawRect(n,r),a=Ex();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=Oe.noteFontFamily,a.fontSize=Oe.noteFontSize,a.fontWeight=Oe.noteFontWeight,a.anchor=Oe.noteAlign,a.textMargin=Oe.noteMargin,a.valign="center";let s=Nn(a.text)?await a3(n,a):Um(n,a),l=Math.round(s.map(u=>(u._groups||u)[0][0].getBBox().height).reduce((u,h)=>u+h));i.attr("height",l+2*Oe.noteMargin),e.height+=l+2*Oe.noteMargin,ct.bumpVerticalPos(l+2*Oe.noteMargin),e.stopy=e.starty+l+2*Oe.noteMargin,e.stopx=e.startx+r.width,ct.insert(e.startx,e.starty,e.stopx,e.stopy),ct.models.addNote(e)},"drawNote"),Wm=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont"),Dv=o(t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),"noteFont"),Uq=o(t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}),"actorFont");o(Aot,"boundMessage");_ot=o(async function(t,e,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=e,d=jt.calculateTextDimensions(l,Wm(Oe)),p=Ex();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Oe.messageFontFamily,p.fontSize=Oe.messageFontSize,p.fontWeight=Oe.messageFontWeight,p.anchor=Oe.messageAlign,p.valign="center",p.textMargin=Oe.wrapPadding,p.tspan=!1,Nn(p.text)?await a3(t,p,{startx:i,stopx:a,starty:r}):Um(t,p);let m=d.width,g;i===a?Oe.rightAngles?g=t.append("path").attr("d",`M ${i},${r} H ${i+nt.getMax(Oe.width/2,m/2)} V ${r+25} H ${i}`):g=t.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=t.append("line"),g.attr("x1",i),g.attr("y1",r),g.attr("x2",a),g.attr("y2",r)),u===n.db.LINETYPE.DOTTED||u===n.db.LINETYPE.DOTTED_CROSS||u===n.db.LINETYPE.DOTTED_POINT||u===n.db.LINETYPE.DOTTED_OPEN||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED?(g.style("stroke-dasharray","3, 3"),g.attr("class","messageLine1")):g.attr("class","messageLine0");let y="";Oe.arrowMarkerAbsolute&&(y=Np(!0)),g.attr("stroke-width",2),g.attr("stroke","none"),g.style("fill","none"),(u===n.db.LINETYPE.SOLID||u===n.db.LINETYPE.DOTTED)&&g.attr("marker-end","url("+y+"#arrowhead)"),(u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(g.attr("marker-start","url("+y+"#arrowhead)"),g.attr("marker-end","url("+y+"#arrowhead)")),(u===n.db.LINETYPE.SOLID_POINT||u===n.db.LINETYPE.DOTTED_POINT)&&g.attr("marker-end","url("+y+"#filled-head)"),(u===n.db.LINETYPE.SOLID_CROSS||u===n.db.LINETYPE.DOTTED_CROSS)&&g.attr("marker-end","url("+y+"#crosshead)"),(f||Oe.showSequenceNumbers)&&((u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(ii&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),ewe=o(function(t){$n(Oe,t),t.fontFamily&&(Oe.actorFontFamily=Oe.noteFontFamily=Oe.messageFontFamily=t.fontFamily),t.fontSize&&(Oe.actorFontSize=Oe.noteFontSize=Oe.messageFontSize=t.fontSize),t.fontWeight&&(Oe.actorFontWeight=Oe.noteFontWeight=Oe.messageFontWeight=t.fontWeight)},"setConf"),L7=o(function(t){return ct.activations.filter(function(e){return e.actor===t})},"actorActivations"),Z3e=o(function(t,e){let r=e.get(t),n=L7(t),i=n.reduce(function(s,l){return nt.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return nt.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(Wu,"adjustLoopHeightForWrap");o(Rot,"adjustCreatedDestroyedData");Lot=o(async function(t,e,r,n){let{securityLevel:i,sequence:a}=xe();Oe=a;let s;i==="sandbox"&&(s=He("#i"+e));let l=i==="sandbox"?He(s.nodes()[0].contentDocument.body):He("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;ct.init(),X.debug(n.db);let h=i==="sandbox"?l.select(`[id="${e}"]`):He(`[id="${e}"]`),f=n.db.getActors(),d=n.db.getCreatedActors(),p=n.db.getDestroyedActors(),m=n.db.getBoxes(),g=n.db.getActorKeys(),y=n.db.getMessages(),v=n.db.getDiagramTitle(),x=n.db.hasAtLeastOneBox(),b=n.db.hasAtLeastOneBoxWithTitle(),T=await Not(f,y,n);if(Oe.height=await Iot(f,T,m),Ri.insertComputerIcon(h),Ri.insertDatabaseIcon(h),Ri.insertClockIcon(h),x&&(ct.bumpVerticalPos(Oe.boxMargin),b&&ct.bumpVerticalPos(m[0].textMaxHeight)),Oe.hideUnusedParticipants===!0){let B=new Set;y.forEach(F=>{B.add(F.from),B.add(F.to)}),g=g.filter(F=>B.has(F))}Dot(h,f,d,g,0,y,!1);let E=await Bot(y,f,T,n);Ri.insertArrowHead(h),Ri.insertArrowCrossHead(h),Ri.insertArrowFilledHead(h),Ri.insertSequenceNumber(h);function w(B,F){let G=ct.endActivation(B);G.starty+18>F&&(G.starty=F-6,F+=12),Ri.drawActivation(h,G,F,Oe,L7(B.from).length),ct.insert(G.startx,F-10,G.stopx,F)}o(w,"activeEnd");let k=1,C=1,D=[],R=[],O=0;for(let B of y){let F,G,$;switch(B.type){case n.db.LINETYPE.NOTE:ct.resetVerticalPos(),G=B.noteModel,await Cot(h,G);break;case n.db.LINETYPE.ACTIVE_START:ct.newActivation(B,h,f);break;case n.db.LINETYPE.ACTIVE_END:w(B,ct.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin+Oe.boxTextMargin,V=>ct.newLoop(V));break;case n.db.LINETYPE.LOOP_END:F=ct.endLoop(),await Ri.drawLoop(h,F,"loop",Oe),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos()),ct.models.addLoop(F);break;case n.db.LINETYPE.RECT_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin,V=>ct.newLoop(void 0,V.message));break;case n.db.LINETYPE.RECT_END:F=ct.endLoop(),R.push(F),ct.models.addLoop(F),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos());break;case n.db.LINETYPE.OPT_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin+Oe.boxTextMargin,V=>ct.newLoop(V));break;case n.db.LINETYPE.OPT_END:F=ct.endLoop(),await Ri.drawLoop(h,F,"opt",Oe),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos()),ct.models.addLoop(F);break;case n.db.LINETYPE.ALT_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin+Oe.boxTextMargin,V=>ct.newLoop(V));break;case n.db.LINETYPE.ALT_ELSE:Wu(E,B,Oe.boxMargin+Oe.boxTextMargin,Oe.boxMargin,V=>ct.addSectionToLoop(V));break;case n.db.LINETYPE.ALT_END:F=ct.endLoop(),await Ri.drawLoop(h,F,"alt",Oe),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos()),ct.models.addLoop(F);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin+Oe.boxTextMargin,V=>ct.newLoop(V)),ct.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:Wu(E,B,Oe.boxMargin+Oe.boxTextMargin,Oe.boxMargin,V=>ct.addSectionToLoop(V));break;case n.db.LINETYPE.PAR_END:F=ct.endLoop(),await Ri.drawLoop(h,F,"par",Oe),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos()),ct.models.addLoop(F);break;case n.db.LINETYPE.AUTONUMBER:k=B.message.start||k,C=B.message.step||C,B.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin+Oe.boxTextMargin,V=>ct.newLoop(V));break;case n.db.LINETYPE.CRITICAL_OPTION:Wu(E,B,Oe.boxMargin+Oe.boxTextMargin,Oe.boxMargin,V=>ct.addSectionToLoop(V));break;case n.db.LINETYPE.CRITICAL_END:F=ct.endLoop(),await Ri.drawLoop(h,F,"critical",Oe),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos()),ct.models.addLoop(F);break;case n.db.LINETYPE.BREAK_START:Wu(E,B,Oe.boxMargin,Oe.boxMargin+Oe.boxTextMargin,V=>ct.newLoop(V));break;case n.db.LINETYPE.BREAK_END:F=ct.endLoop(),await Ri.drawLoop(h,F,"break",Oe),ct.bumpVerticalPos(F.stopy-ct.getVerticalPos()),ct.models.addLoop(F);break;default:try{$=B.msgModel,$.starty=ct.getVerticalPos(),$.sequenceIndex=k,$.sequenceVisible=n.db.showSequenceNumbers();let V=await Aot(h,$);Rot(B,$,V,O,f,d,p),D.push({messageModel:$,lineStartY:V}),ct.models.addMessage($)}catch(V){X.error("error while drawing message",V)}}[n.db.LINETYPE.SOLID_OPEN,n.db.LINETYPE.DOTTED_OPEN,n.db.LINETYPE.SOLID,n.db.LINETYPE.DOTTED,n.db.LINETYPE.SOLID_CROSS,n.db.LINETYPE.DOTTED_CROSS,n.db.LINETYPE.SOLID_POINT,n.db.LINETYPE.DOTTED_POINT,n.db.LINETYPE.BIDIRECTIONAL_SOLID,n.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(B.type)&&(k=k+C),O++}X.debug("createdActors",d),X.debug("destroyedActors",p),await Wq(h,f,g,!1);for(let B of D)await _ot(h,B.messageModel,B.lineStartY,n);Oe.mirrorActors&&await Wq(h,f,g,!0),R.forEach(B=>Ri.drawBackgroundRect(h,B)),qq(h,f,g,Oe);for(let B of ct.models.boxes){B.height=ct.getVerticalPos()-B.y,ct.insert(B.x,B.y,B.x+B.width,B.height);let F=Oe.boxMargin*2;B.startx=B.x-F,B.starty=B.y-F*.25,B.stopx=B.startx+B.width+2*F,B.stopy=B.starty+B.height+F*.75,B.stroke="rgb(0,0,0, 0.5)",Ri.drawBox(h,B,Oe)}x&&ct.bumpVerticalPos(Oe.boxMargin);let L=J3e(h,f,g,u),{bounds:S}=ct.getBounds();S.startx===void 0&&(S.startx=0),S.starty===void 0&&(S.starty=0),S.stopx===void 0&&(S.stopx=0),S.stopy===void 0&&(S.stopy=0);let A=S.stopy-S.starty;A2,d=o(y=>l?-y:y,"adjustValue");t.from===t.to?h=u:(t.activate&&!f&&(h+=d(Oe.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);t.wrap&&t.message&&(t.message=jt.wrapLabel(t.message,nt.getMax(m+2*Oe.wrapPadding,Oe.width),Wm(Oe)));let g=jt.calculateTextDimensions(t.message,Wm(Oe));return{width:nt.getMax(t.wrap?0:g.width+2*Oe.wrapPadding,m+2*Oe.wrapPadding,Oe.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),Bot=o(async function(t,e,r,n){let i={},a=[],s,l,u;for(let h of t){switch(h.type){case n.db.LINETYPE.LOOP_START:case n.db.LINETYPE.ALT_START:case n.db.LINETYPE.OPT_START:case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:case n.db.LINETYPE.CRITICAL_START:case n.db.LINETYPE.BREAK_START:a.push({id:h.id,msg:h.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case n.db.LINETYPE.ALT_ELSE:case n.db.LINETYPE.PAR_AND:case n.db.LINETYPE.CRITICAL_OPTION:h.message&&(s=a.pop(),i[s.id]=s,i[h.id]=s,a.push(s));break;case n.db.LINETYPE.LOOP_END:case n.db.LINETYPE.ALT_END:case n.db.LINETYPE.OPT_END:case n.db.LINETYPE.PAR_END:case n.db.LINETYPE.CRITICAL_END:case n.db.LINETYPE.BREAK_END:s=a.pop(),i[s.id]=s;break;case n.db.LINETYPE.ACTIVE_START:{let d=e.get(h.from?h.from:h.to.actor),p=L7(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Oe.activationWidth/2,g={startx:m,stopx:m+Oe.activationWidth,actor:h.from,enabled:!0};ct.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=ct.activations.map(p=>p.actor).lastIndexOf(h.from);ct.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await Oot(h,e,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=nt.getMin(s.from,l.startx),s.to=nt.getMax(s.to,l.startx+l.width),s.width=nt.getMax(s.width,Math.abs(s.from-s.to))-Oe.labelBoxWidth})):(u=Pot(h,e,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=e.get(h.from),m=e.get(h.to);s.from=nt.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=nt.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=nt.getMax(s.width,Math.abs(s.to-s.from))-Oe.labelBoxWidth}else s.from=nt.getMin(u.startx,s.from),s.to=nt.getMax(u.stopx,s.to),s.width=nt.getMax(s.width,u.width)-Oe.labelBoxWidth}))}return ct.activations=[],X.debug("Loop type widths:",i),i},"calculateLoopBounds"),twe={bounds:ct,drawActors:Wq,drawActorsPopup:J3e,setConf:ewe,draw:Lot}});var nwe={};vr(nwe,{diagram:()=>Fot});var Fot,iwe=I(()=>{"use strict";W3e();Gq();Y3e();Qt();rwe();Fot={parser:U3e,get db(){return new _7},renderer:twe,styles:H3e,init:o(t=>{t.sequence||(t.sequence={}),t.wrap&&(t.sequence.wrap=t.wrap,A2({sequence:{wrap:t.wrap}}))},"init")}});var Hq,N7,Yq=I(()=>{"use strict";Hq=(function(){var t=o(function(Ie,Me,Ae,ze){for(Ae=Ae||{},ze=Ie.length;ze--;Ae[Ie[ze]]=Me);return Ae},"o"),e=[1,18],r=[1,19],n=[1,20],i=[1,41],a=[1,42],s=[1,26],l=[1,24],u=[1,25],h=[1,32],f=[1,33],d=[1,34],p=[1,45],m=[1,35],g=[1,36],y=[1,37],v=[1,38],x=[1,27],b=[1,28],T=[1,29],E=[1,30],w=[1,31],k=[1,44],C=[1,46],D=[1,43],R=[1,47],O=[1,9],L=[1,8,9],S=[1,58],A=[1,59],_=[1,60],N=[1,61],M=[1,62],P=[1,63],B=[1,64],F=[1,8,9,41],G=[1,76],$=[1,8,9,12,13,22,39,41,44,68,69,70,71,72,73,74,79,81],V=[1,8,9,12,13,18,20,22,39,41,44,50,60,68,69,70,71,72,73,74,79,81,86,100,102,103],K=[13,60,86,100,102,103],ee=[13,60,73,74,86,100,102,103],H=[13,60,68,69,70,71,72,86,100,102,103],he=[1,100],Z=[1,117],de=[1,113],re=[1,109],ne=[1,115],te=[1,110],Q=[1,111],le=[1,112],J=[1,114],ge=[1,116],ie=[22,48,60,61,82,86,87,88,89,90],Te=[1,8,9,39,41,44],j=[1,8,9,22],Ge=[1,145],ye=[1,8,9,61],$e=[1,8,9,22,48,60,61,82,86,87,88,89,90],Xe={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,emptyBody:47,SPACE:48,ANNOTATION_START:49,ANNOTATION_END:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",48:"SPACE",49:"ANNOTATION_START",50:"ANNOTATION_END",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[43,2],[43,3],[47,0],[47,2],[47,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:o(function(Me,Ae,ze,Y,ce,U,ue){var z=U.length-1;switch(ce){case 8:this.$=U[z-1];break;case 9:case 10:case 13:case 15:this.$=U[z];break;case 11:case 14:this.$=U[z-2]+"."+U[z];break;case 12:case 16:this.$=U[z-1]+U[z];break;case 17:case 18:this.$=U[z-1]+"~"+U[z]+"~";break;case 19:Y.addRelation(U[z]);break;case 20:U[z-1].title=Y.cleanupLabel(U[z]),Y.addRelation(U[z-1]);break;case 31:this.$=U[z].trim(),Y.setAccTitle(this.$);break;case 32:case 33:this.$=U[z].trim(),Y.setAccDescription(this.$);break;case 34:Y.addClassesToNamespace(U[z-3],U[z-1]);break;case 35:Y.addClassesToNamespace(U[z-4],U[z-1]);break;case 36:this.$=U[z],Y.addNamespace(U[z]);break;case 37:this.$=[U[z]];break;case 38:this.$=[U[z-1]];break;case 39:U[z].unshift(U[z-2]),this.$=U[z];break;case 41:Y.setCssClass(U[z-2],U[z]);break;case 42:Y.addMembers(U[z-3],U[z-1]);break;case 44:Y.setCssClass(U[z-5],U[z-3]),Y.addMembers(U[z-5],U[z-1]);break;case 45:this.$=U[z],Y.addClass(U[z]);break;case 46:this.$=U[z-1],Y.addClass(U[z-1]),Y.setClassLabel(U[z-1],U[z]);break;case 50:Y.addAnnotation(U[z],U[z-2]);break;case 51:case 64:this.$=[U[z]];break;case 52:U[z].push(U[z-1]),this.$=U[z];break;case 53:break;case 54:Y.addMember(U[z-1],Y.cleanupLabel(U[z]));break;case 55:break;case 56:break;case 57:this.$={id1:U[z-2],id2:U[z],relation:U[z-1],relationTitle1:"none",relationTitle2:"none"};break;case 58:this.$={id1:U[z-3],id2:U[z],relation:U[z-1],relationTitle1:U[z-2],relationTitle2:"none"};break;case 59:this.$={id1:U[z-3],id2:U[z],relation:U[z-2],relationTitle1:"none",relationTitle2:U[z-1]};break;case 60:this.$={id1:U[z-4],id2:U[z],relation:U[z-2],relationTitle1:U[z-3],relationTitle2:U[z-1]};break;case 61:Y.addNote(U[z],U[z-1]);break;case 62:Y.addNote(U[z]);break;case 63:this.$=U[z-2],Y.defineClass(U[z-1],U[z]);break;case 65:this.$=U[z-2].concat([U[z]]);break;case 66:Y.setDirection("TB");break;case 67:Y.setDirection("BT");break;case 68:Y.setDirection("RL");break;case 69:Y.setDirection("LR");break;case 70:this.$={type1:U[z-2],type2:U[z],lineType:U[z-1]};break;case 71:this.$={type1:"none",type2:U[z],lineType:U[z-1]};break;case 72:this.$={type1:U[z-1],type2:"none",lineType:U[z]};break;case 73:this.$={type1:"none",type2:"none",lineType:U[z]};break;case 74:this.$=Y.relationType.AGGREGATION;break;case 75:this.$=Y.relationType.EXTENSION;break;case 76:this.$=Y.relationType.COMPOSITION;break;case 77:this.$=Y.relationType.DEPENDENCY;break;case 78:this.$=Y.relationType.LOLLIPOP;break;case 79:this.$=Y.lineType.LINE;break;case 80:this.$=Y.lineType.DOTTED_LINE;break;case 81:case 87:this.$=U[z-2],Y.setClickEvent(U[z-1],U[z]);break;case 82:case 88:this.$=U[z-3],Y.setClickEvent(U[z-2],U[z-1]),Y.setTooltip(U[z-2],U[z]);break;case 83:this.$=U[z-2],Y.setLink(U[z-1],U[z]);break;case 84:this.$=U[z-3],Y.setLink(U[z-2],U[z-1],U[z]);break;case 85:this.$=U[z-3],Y.setLink(U[z-2],U[z-1]),Y.setTooltip(U[z-2],U[z]);break;case 86:this.$=U[z-4],Y.setLink(U[z-3],U[z-2],U[z]),Y.setTooltip(U[z-3],U[z-1]);break;case 89:this.$=U[z-3],Y.setClickEvent(U[z-2],U[z-1],U[z]);break;case 90:this.$=U[z-4],Y.setClickEvent(U[z-3],U[z-2],U[z-1]),Y.setTooltip(U[z-3],U[z]);break;case 91:this.$=U[z-3],Y.setLink(U[z-2],U[z]);break;case 92:this.$=U[z-4],Y.setLink(U[z-3],U[z-1],U[z]);break;case 93:this.$=U[z-4],Y.setLink(U[z-3],U[z-1]),Y.setTooltip(U[z-3],U[z]);break;case 94:this.$=U[z-5],Y.setLink(U[z-4],U[z-2],U[z]),Y.setTooltip(U[z-4],U[z-1]);break;case 95:this.$=U[z-2],Y.setCssStyle(U[z-1],U[z]);break;case 96:Y.setCssClass(U[z-1],U[z]);break;case 97:this.$=[U[z]];break;case 98:U[z-2].push(U[z]),this.$=U[z-2];break;case 100:this.$=U[z-1]+U[z];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:v,75:x,76:b,78:T,82:E,83:w,86:k,100:C,102:D,103:R},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(O,[2,5],{8:[1,48]}),{8:[1,49]},t(L,[2,19],{22:[1,50]}),t(L,[2,21]),t(L,[2,22]),t(L,[2,23]),t(L,[2,24]),t(L,[2,25]),t(L,[2,26]),t(L,[2,27]),t(L,[2,28]),t(L,[2,29]),t(L,[2,30]),{34:[1,51]},{36:[1,52]},t(L,[2,33]),t(L,[2,53],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:S,69:A,70:_,71:N,72:M,73:P,74:B}),{39:[1,65]},t(F,[2,40],{39:[1,67],44:[1,66]}),t(L,[2,55]),t(L,[2,56]),{16:68,60:p,86:k,100:C,102:D},{16:39,17:40,19:69,60:p,86:k,100:C,102:D,103:R},{16:39,17:40,19:70,60:p,86:k,100:C,102:D,103:R},{16:39,17:40,19:71,60:p,86:k,100:C,102:D,103:R},{60:[1,72]},{13:[1,73]},{16:39,17:40,19:74,60:p,86:k,100:C,102:D,103:R},{13:G,55:75},{58:77,60:[1,78]},t(L,[2,66]),t(L,[2,67]),t(L,[2,68]),t(L,[2,69]),t($,[2,13],{16:39,17:40,19:80,18:[1,79],20:[1,81],60:p,86:k,100:C,102:D,103:R}),t($,[2,15],{20:[1,82]}),{15:83,16:84,17:85,60:p,86:k,100:C,102:D,103:R},{16:39,17:40,19:86,60:p,86:k,100:C,102:D,103:R},t(V,[2,123]),t(V,[2,124]),t(V,[2,125]),t(V,[2,126]),t([1,8,9,12,13,20,22,39,41,44,68,69,70,71,72,73,74,79,81],[2,127]),t(O,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:87,33:e,35:r,37:n,42:i,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:v,75:x,76:b,78:T,82:E,83:w,86:k,100:C,102:D,103:R}),{5:88,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:v,75:x,76:b,78:T,82:E,83:w,86:k,100:C,102:D,103:R},t(L,[2,20]),t(L,[2,31]),t(L,[2,32]),{13:[1,90],16:39,17:40,19:89,60:p,86:k,100:C,102:D,103:R},{53:91,66:56,67:57,68:S,69:A,70:_,71:N,72:M,73:P,74:B},t(L,[2,54]),{67:92,73:P,74:B},t(K,[2,73],{66:93,68:S,69:A,70:_,71:N,72:M}),t(ee,[2,74]),t(ee,[2,75]),t(ee,[2,76]),t(ee,[2,77]),t(ee,[2,78]),t(H,[2,79]),t(H,[2,80]),{8:[1,95],24:96,40:94,43:23,46:a},{16:97,60:p,86:k,100:C,102:D},{41:[1,99],45:98,51:he},{50:[1,101]},{13:[1,102]},{13:[1,103]},{79:[1,104],81:[1,105]},{22:Z,48:de,59:106,60:re,82:ne,84:107,85:108,86:te,87:Q,88:le,89:J,90:ge},{60:[1,118]},{13:G,55:119},t(L,[2,62]),t(L,[2,128]),{22:Z,48:de,59:120,60:re,61:[1,121],82:ne,84:107,85:108,86:te,87:Q,88:le,89:J,90:ge},t(ie,[2,64]),{16:39,17:40,19:122,60:p,86:k,100:C,102:D,103:R},t($,[2,16]),t($,[2,17]),t($,[2,18]),{39:[2,36]},{15:124,16:84,17:85,18:[1,123],39:[2,9],60:p,86:k,100:C,102:D,103:R},{39:[2,10]},t(Te,[2,45],{11:125,12:[1,126]}),t(O,[2,7]),{9:[1,127]},t(j,[2,57]),{16:39,17:40,19:128,60:p,86:k,100:C,102:D,103:R},{13:[1,130],16:39,17:40,19:129,60:p,86:k,100:C,102:D,103:R},t(K,[2,72],{66:131,68:S,69:A,70:_,71:N,72:M}),t(K,[2,71]),{41:[1,132]},{24:96,40:133,43:23,46:a},{8:[1,134],41:[2,37]},t(F,[2,41],{39:[1,135]}),{41:[1,136]},t(F,[2,43]),{41:[2,51],45:137,51:he},{16:39,17:40,19:138,60:p,86:k,100:C,102:D,103:R},t(L,[2,81],{13:[1,139]}),t(L,[2,83],{13:[1,141],77:[1,140]}),t(L,[2,87],{13:[1,142],80:[1,143]}),{13:[1,144]},t(L,[2,95],{61:Ge}),t(ye,[2,97],{85:146,22:Z,48:de,60:re,82:ne,86:te,87:Q,88:le,89:J,90:ge}),t($e,[2,99]),t($e,[2,101]),t($e,[2,102]),t($e,[2,103]),t($e,[2,104]),t($e,[2,105]),t($e,[2,106]),t($e,[2,107]),t($e,[2,108]),t($e,[2,109]),t(L,[2,96]),t(L,[2,61]),t(L,[2,63],{61:Ge}),{60:[1,147]},t($,[2,14]),{15:148,16:84,17:85,60:p,86:k,100:C,102:D,103:R},{39:[2,12]},t(Te,[2,46]),{13:[1,149]},{1:[2,4]},t(j,[2,59]),t(j,[2,58]),{16:39,17:40,19:150,60:p,86:k,100:C,102:D,103:R},t(K,[2,70]),t(L,[2,34]),{41:[1,151]},{24:96,40:152,41:[2,38],43:23,46:a},{45:153,51:he},t(F,[2,42]),{41:[2,52]},t(L,[2,50]),t(L,[2,82]),t(L,[2,84]),t(L,[2,85],{77:[1,154]}),t(L,[2,88]),t(L,[2,89],{13:[1,155]}),t(L,[2,91],{13:[1,157],77:[1,156]}),{22:Z,48:de,60:re,82:ne,84:158,85:108,86:te,87:Q,88:le,89:J,90:ge},t($e,[2,100]),t(ie,[2,65]),{39:[2,11]},{14:[1,159]},t(j,[2,60]),t(L,[2,35]),{41:[2,39]},{41:[1,160]},t(L,[2,86]),t(L,[2,90]),t(L,[2,92]),t(L,[2,93],{77:[1,161]}),t(ye,[2,98],{85:146,22:Z,48:de,60:re,82:ne,86:te,87:Q,88:le,89:J,90:ge}),t(Te,[2,8]),t(F,[2,44]),t(L,[2,94])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,36],85:[2,10],124:[2,12],127:[2,4],137:[2,52],148:[2,11],152:[2,39]},parseError:o(function(Me,Ae){if(Ae.recoverable)this.trace(Me);else{var ze=new Error(Me);throw ze.hash=Ae,ze}},"parseError"),parse:o(function(Me){var Ae=this,ze=[0],Y=[],ce=[null],U=[],ue=this.table,z="",se=0,oe=0,be=0,pe=2,me=1,De=U.slice.call(arguments,1),Ce=Object.create(this.lexer),Fe={yy:{}};for(var Ye in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ye)&&(Fe.yy[Ye]=this.yy[Ye]);Ce.setInput(Me,Fe.yy),Fe.yy.lexer=Ce,Fe.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var xt=Ce.yylloc;U.push(xt);var je=Ce.options&&Ce.options.ranges;typeof Fe.yy.parseError=="function"?this.parseError=Fe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pe(Lt){ze.length=ze.length-2*Lt,ce.length=ce.length-Lt,U.length=U.length-Lt}o(Pe,"popStack");function rt(){var Lt;return Lt=Y.pop()||Ce.lex()||me,typeof Lt!="number"&&(Lt instanceof Array&&(Y=Lt,Lt=Y.pop()),Lt=Ae.symbols_[Lt]||Lt),Lt}o(rt,"lex");for(var We,ut,Ut,Tt,Mt,mt,at={},wt,St,bt,pt;;){if(Ut=ze[ze.length-1],this.defaultActions[Ut]?Tt=this.defaultActions[Ut]:((We===null||typeof We>"u")&&(We=rt()),Tt=ue[Ut]&&ue[Ut][We]),typeof Tt>"u"||!Tt.length||!Tt[0]){var Zr="";pt=[];for(wt in ue[Ut])this.terminals_[wt]&&wt>pe&&pt.push("'"+this.terminals_[wt]+"'");Ce.showPosition?Zr="Parse error on line "+(se+1)+`: +`+Ce.showPosition()+` +Expecting `+pt.join(", ")+", got '"+(this.terminals_[We]||We)+"'":Zr="Parse error on line "+(se+1)+": Unexpected "+(We==me?"end of input":"'"+(this.terminals_[We]||We)+"'"),this.parseError(Zr,{text:Ce.match,token:this.terminals_[We]||We,line:Ce.yylineno,loc:xt,expected:pt})}if(Tt[0]instanceof Array&&Tt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ut+", token: "+We);switch(Tt[0]){case 1:ze.push(We),ce.push(Ce.yytext),U.push(Ce.yylloc),ze.push(Tt[1]),We=null,ut?(We=ut,ut=null):(oe=Ce.yyleng,z=Ce.yytext,se=Ce.yylineno,xt=Ce.yylloc,be>0&&be--);break;case 2:if(St=this.productions_[Tt[1]][1],at.$=ce[ce.length-St],at._$={first_line:U[U.length-(St||1)].first_line,last_line:U[U.length-1].last_line,first_column:U[U.length-(St||1)].first_column,last_column:U[U.length-1].last_column},je&&(at._$.range=[U[U.length-(St||1)].range[0],U[U.length-1].range[1]]),mt=this.performAction.apply(at,[z,oe,se,Fe.yy,Tt[1],ce,U].concat(De)),typeof mt<"u")return mt;St&&(ze=ze.slice(0,-1*St*2),ce=ce.slice(0,-1*St),U=U.slice(0,-1*St)),ze.push(this.productions_[Tt[1]][0]),ce.push(at.$),U.push(at._$),bt=ue[ze[ze.length-2]][ze[ze.length-1]],ze.push(bt);break;case 3:return!0}}return!0},"parse")},Ue=(function(){var Ie={EOF:1,parseError:o(function(Ae,ze){if(this.yy.parser)this.yy.parser.parseError(Ae,ze);else throw new Error(Ae)},"parseError"),setInput:o(function(Me,Ae){return this.yy=Ae||this.yy||{},this._input=Me,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var Me=this._input[0];this.yytext+=Me,this.yyleng++,this.offset++,this.match+=Me,this.matched+=Me;var Ae=Me.match(/(?:\r\n?|\n).*/g);return Ae?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Me},"input"),unput:o(function(Me){var Ae=Me.length,ze=Me.split(/(?:\r\n?|\n)/g);this._input=Me+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ae),this.offset-=Ae;var Y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ze.length-1&&(this.yylineno-=ze.length-1);var ce=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ze?(ze.length===Y.length?this.yylloc.first_column:0)+Y[Y.length-ze.length].length-ze[0].length:this.yylloc.first_column-Ae},this.options.ranges&&(this.yylloc.range=[ce[0],ce[0]+this.yyleng-Ae]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Me){this.unput(this.match.slice(Me))},"less"),pastInput:o(function(){var Me=this.matched.substr(0,this.matched.length-this.match.length);return(Me.length>20?"...":"")+Me.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Me=this.match;return Me.length<20&&(Me+=this._input.substr(0,20-Me.length)),(Me.substr(0,20)+(Me.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Me=this.pastInput(),Ae=new Array(Me.length+1).join("-");return Me+this.upcomingInput()+` +`+Ae+"^"},"showPosition"),test_match:o(function(Me,Ae){var ze,Y,ce;if(this.options.backtrack_lexer&&(ce={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ce.yylloc.range=this.yylloc.range.slice(0))),Y=Me[0].match(/(?:\r\n?|\n).*/g),Y&&(this.yylineno+=Y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Y?Y[Y.length-1].length-Y[Y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Me[0].length},this.yytext+=Me[0],this.match+=Me[0],this.matches=Me,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Me[0].length),this.matched+=Me[0],ze=this.performAction.call(this,this.yy,this,Ae,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ze)return ze;if(this._backtrack){for(var U in ce)this[U]=ce[U];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Me,Ae,ze,Y;this._more||(this.yytext="",this.match="");for(var ce=this._currentRules(),U=0;UAe[0].length)){if(Ae=ze,Y=U,this.options.backtrack_lexer){if(Me=this.test_match(ze,ce[U]),Me!==!1)return Me;if(this._backtrack){Ae=!1;continue}else return!1}else if(!this.options.flex)break}return Ae?(Me=this.test_match(Ae,ce[Y]),Me!==!1?Me:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ae=this.next();return Ae||this.lex()},"lex"),begin:o(function(Ae){this.conditionStack.push(Ae)},"begin"),popState:o(function(){var Ae=this.conditionStack.length-1;return Ae>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Ae){return Ae=this.conditionStack.length-1-Math.abs(Ae||0),Ae>=0?this.conditionStack[Ae]:"INITIAL"},"topState"),pushState:o(function(Ae){this.begin(Ae)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ae,ze,Y,ce){var U=ce;switch(Y){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),46;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 83;case 50:return 75;case 51:return 76;case 52:return 78;case 53:return 54;case 54:return 56;case 55:return 49;case 56:return 50;case 57:return 81;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 77;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 69;case 69:return 69;case 70:return 71;case 71:return 71;case 72:return 70;case 73:return 68;case 74:return 72;case 75:return 73;case 76:return 74;case 77:return 22;case 78:return 44;case 79:return 100;case 80:return 18;case 81:return"PLUS";case 82:return 87;case 83:return 61;case 84:return 89;case 85:return 89;case 86:return 90;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 60;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 86;case 94:return 102;case 95:return 48;case 96:return 48;case 97:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return Ie})();Xe.lexer=Ue;function Le(){this.yy={}}return o(Le,"Parser"),Le.prototype=Xe,Xe.Parser=Le,new Le})();Hq.parser=Hq;N7=Hq});var owe,s3,lwe=I(()=>{"use strict";Qt();wr();owe=["#","+","~","-",""],s3=class{static{o(this,"ClassMember")}constructor(e,r){this.memberType=r,this.visibility="",this.classifier="",this.text="";let n=fr(e,xe());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+zc(this.id);this.memberType==="method"&&(e+=`(${zc(this.parameters.trim())})`,this.returnType&&(e+=" : "+zc(this.returnType))),e=e.trim();let r=this.parseClassifier();return{displayText:e,cssStyle:r}}parseMember(e){let r="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let s=a[1]?a[1].trim():"";if(owe.includes(s)&&(this.visibility=s),this.id=a[2],this.parameters=a[3]?a[3].trim():"",r=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",r===""){let l=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(l)&&(r=l,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let i=e.length,a=e.substring(0,1),s=e.substring(i-1);owe.includes(a)&&(this.visibility=a),/[$*]/.exec(s)&&(r=s),this.id=e.substring(this.visibility===""?0:1,r===""?i:i-1)}this.classifier=r,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${zc(this.id)}${this.memberType==="method"?`(${zc(this.parameters)})${this.returnType?" : "+zc(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});var M7,cwe,Hm,Rv,jq=I(()=>{"use strict";kr();gt();Qt();wr();sr();ki();lwe();M7="classId-",cwe=0,Hm=o(t=>nt.sanitizeText(t,xe()),"sanitizeText"),Rv=class{constructor(){this.relations=[];this.classes=new Map;this.styleClasses=new Map;this.notes=[];this.interfaces=[];this.namespaces=new Map;this.namespaceCounter=0;this.functions=[];this.lineType={LINE:0,DOTTED_LINE:1};this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4};this.setupToolTips=o(e=>{let r=He(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=He("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),He(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=He(a.currentTarget);if(s.attr("title")===null)return;let u=this.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.top-14+document.body.scrollTop+"px"),r.html(r.html().replace(/<br\/>/g,"
    ")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),He(a.currentTarget).classed("hover",!1)})},"setupToolTips");this.direction="TB";this.setAccTitle=zr;this.getAccTitle=Vr;this.setAccDescription=qr;this.getAccDescription=Ur;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.getConfig=o(()=>xe().class,"getConfig");this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{o(this,"ClassDB")}splitClassNameAndType(e){let r=nt.sanitizeText(e,xe()),n="",i=r;if(r.indexOf("~")>0){let a=r.split("~");i=Hm(a[0]),n=Hm(a[1])}return{className:i,type:n}}setClassLabel(e,r){let n=nt.sanitizeText(e,xe());r&&(r=Hm(r));let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).label=r,this.classes.get(i).text=`${r}${this.classes.get(i).type?`<${this.classes.get(i).type}>`:""}`}addClass(e){let r=nt.sanitizeText(e,xe()),{className:n,type:i}=this.splitClassNameAndType(r);if(this.classes.has(n))return;let a=nt.sanitizeText(n,xe());this.classes.set(a,{id:a,type:i,label:a,text:`${a}${i?`<${i}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:M7+a+"-"+cwe}),cwe++}addInterface(e,r){let n={id:`interface${this.interfaces.length}`,label:e,classId:r};this.interfaces.push(n)}lookUpDomId(e){let r=nt.sanitizeText(e,xe());if(this.classes.has(r))return this.classes.get(r).domId;throw new Error("Class not found: "+r)}clear(){this.relations=[],this.classes=new Map,this.notes=[],this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.direction="TB",Mr()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNotes(){return this.notes}addRelation(e){X.debug("Adding relation: "+JSON.stringify(e));let r=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];e.relation.type1===this.relationType.LOLLIPOP&&!r.includes(e.relation.type2)?(this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`):e.relation.type2===this.relationType.LOLLIPOP&&!r.includes(e.relation.type1)?(this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`):(this.addClass(e.id1),this.addClass(e.id2)),e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=nt.sanitizeText(e.relationTitle1.trim(),xe()),e.relationTitle2=nt.sanitizeText(e.relationTitle2.trim(),xe()),this.relations.push(e)}addAnnotation(e,r){let n=this.splitClassNameAndType(e).className;this.classes.get(n).annotations.push(r)}addMember(e,r){this.addClass(e);let n=this.splitClassNameAndType(e).className,i=this.classes.get(n);if(typeof r=="string"){let a=r.trim();a.startsWith("<<")&&a.endsWith(">>")?i.annotations.push(Hm(a.substring(2,a.length-2))):a.indexOf(")")>0?i.methods.push(new s3(a,"method")):a&&i.members.push(new s3(a,"attribute"))}}addMembers(e,r){Array.isArray(r)&&(r.reverse(),r.forEach(n=>this.addMember(e,n)))}addNote(e,r){let n={id:`note${this.notes.length}`,class:r,text:e};this.notes.push(n)}cleanupLabel(e){return e.startsWith(":")&&(e=e.substring(1)),Hm(e.trim())}setCssClass(e,r){e.split(",").forEach(n=>{let i=n;/\d/.exec(n[0])&&(i=M7+i);let a=this.classes.get(i);a&&(a.cssClasses+=" "+r)})}defineClass(e,r){for(let n of e){let i=this.styleClasses.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.styleClasses.set(n,i)),r&&r.forEach(a=>{if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.classes.forEach(a=>{a.cssClasses.includes(n)&&a.styles.push(...r.flatMap(s=>s.split(",")))})}}setTooltip(e,r){e.split(",").forEach(n=>{r!==void 0&&(this.classes.get(n).tooltip=Hm(r))})}getTooltip(e,r){return r&&this.namespaces.has(r)?this.namespaces.get(r).classes.get(e).tooltip:this.classes.get(e).tooltip}setLink(e,r,n){let i=xe();e.split(",").forEach(a=>{let s=a;/\d/.exec(a[0])&&(s=M7+s);let l=this.classes.get(s);l&&(l.link=jt.formatUrl(r,i),i.securityLevel==="sandbox"?l.linkTarget="_top":typeof n=="string"?l.linkTarget=Hm(n):l.linkTarget="_blank")}),this.setCssClass(e,"clickable")}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFunc(i,r,n),this.classes.get(i).haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,r,n){let i=nt.sanitizeText(e,xe());if(xe().securityLevel!=="loose"||r===void 0)return;let s=i;if(this.classes.has(s)){let l=this.lookUpDomId(s),u=[];if(typeof n=="string"){u=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let h=0;h{let h=document.querySelector(`[id="${l}"]`);h!==null&&h.addEventListener("click",()=>{jt.runFunc(r,...u)},!1)})}}bindFunctions(e){this.functions.forEach(r=>{r(e)})}getDirection(){return this.direction}setDirection(e){this.direction=e}addNamespace(e){this.namespaces.has(e)||(this.namespaces.set(e,{id:e,classes:new Map,children:{},domId:M7+e+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,r){if(this.namespaces.has(e))for(let n of r){let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).parent=e,this.namespaces.get(e).classes.set(i,this.classes.get(i))}}setCssStyle(e,r){let n=this.classes.get(e);if(!(!r||!n))for(let i of r)i.includes(",")?n.styles.push(...i.split(",")):n.styles.push(i)}getArrowMarker(e){let r;switch(e){case 0:r="aggregation";break;case 1:r="extension";break;case 2:r="composition";break;case 3:r="dependency";break;case 4:r="lollipop";break;default:r="none"}return r}getData(){let e=[],r=[],n=xe();for(let a of this.namespaces.keys()){let s=this.namespaces.get(a);if(s){let l={id:s.id,label:s.id,isGroup:!0,padding:n.class.padding??16,shape:"rect",cssStyles:["fill: none","stroke: black"],look:n.look};e.push(l)}}for(let a of this.classes.keys()){let s=this.classes.get(a);if(s){let l=s;l.parentId=s.parent,l.look=n.look,e.push(l)}}let i=0;for(let a of this.notes){i++;let s={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:n.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${n.themeVariables.noteBkgColor}`,`stroke: ${n.themeVariables.noteBorderColor}`],look:n.look};e.push(s);let l=this.classes.get(a.class)?.id??"";if(l){let u={id:`edgeNote${i}`,start:a.id,end:l,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:n.look};r.push(u)}}for(let a of this.interfaces){let s={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:n.look};e.push(s)}i=0;for(let a of this.relations){i++;let s={id:nu(a.id1,a.id2,{prefix:"id",counter:i}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:this.getDirection()}}}});var Vot,I7,Xq=I(()=>{"use strict";ey();Vot=o(t=>`g.classGroup text { fill: ${t.nodeBorder||t.classText}; stroke: none; font-family: ${t.fontFamily}; @@ -1933,13 +1965,13 @@ g.classGroup line { font-size: 18px; fill: ${t.textColor}; } - ${zc()} -`,"getStyles"),aC=VJe});var UJe,HJe,qJe,sC,f$=M(()=>{"use strict";Xt();pt();ep();Nf();Mf();tr();UJe=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),HJe=o(function(t,e){return e.db.getClasses()},"getClasses"),qJe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:a,layout:s}=ge(),l=n.db.getData(),u=Vo(e,i);l.type=n.type,l.layoutAlgorithm=$c(s),l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["aggregation","extension","composition","dependency","lollipop"],l.diagramId=e,await Qo(l,u);let h=8;qt.insertTitle(u,"classDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ws(u,h,"classDiagram",a?.useMaxWidth??!0)},"draw"),sC={getClasses:HJe,draw:qJe,getDir:UJe}});var ive={};dr(ive,{diagram:()=>WJe});var WJe,ave=M(()=>{"use strict";c$();u$();h$();f$();WJe={parser:nC,get db(){return new oy},renderer:sC,styles:aC,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var lve={};dr(lve,{diagram:()=>KJe});var KJe,cve=M(()=>{"use strict";c$();u$();h$();f$();KJe={parser:nC,get db(){return new oy},renderer:sC,styles:aC,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var d$,oC,p$=M(()=>{"use strict";d$=(function(){var t=o(function(F,V,$,U){for($=$||{},U=F.length;U--;$[F[U]]=V);return $},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,16],u=[1,17],h=[1,18],f=[1,19],d=[1,33],p=[1,20],m=[1,21],g=[1,22],y=[1,23],v=[1,24],x=[1,26],b=[1,27],T=[1,28],S=[1,29],w=[1,30],k=[1,31],C=[1,32],A=[1,35],L=[1,36],I=[1,37],R=[1,38],E=[1,34],_=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],D=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],O=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],N={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:o(function(V,$,U,j,ee,q,oe){var Q=q.length-1;switch(ee){case 3:return j.setRootDoc(q[Q]),q[Q];break;case 4:this.$=[];break;case 5:q[Q]!="nl"&&(q[Q-1].push(q[Q]),this.$=q[Q-1]);break;case 6:case 7:this.$=q[Q];break;case 8:this.$="nl";break;case 12:this.$=q[Q];break;case 13:let J=q[Q-1];J.description=j.trimColon(q[Q]),this.$=J;break;case 14:this.$={stmt:"relation",state1:q[Q-2],state2:q[Q]};break;case 15:let K=j.trimColon(q[Q]);this.$={stmt:"relation",state1:q[Q-3],state2:q[Q-1],description:K};break;case 19:this.$={stmt:"state",id:q[Q-3],type:"default",description:"",doc:q[Q-1]};break;case 20:var ue=q[Q],te=q[Q-2].trim();if(q[Q].match(":")){var re=q[Q].split(":");ue=re[0],te=[te,re[1]]}this.$={stmt:"state",id:ue,type:"default",description:te};break;case 21:this.$={stmt:"state",id:q[Q-3],type:"default",description:q[Q-5],doc:q[Q-1]};break;case 22:this.$={stmt:"state",id:q[Q],type:"fork"};break;case 23:this.$={stmt:"state",id:q[Q],type:"join"};break;case 24:this.$={stmt:"state",id:q[Q],type:"choice"};break;case 25:this.$={stmt:"state",id:j.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:q[Q-1].trim(),note:{position:q[Q-2].trim(),text:q[Q].trim()}};break;case 29:this.$=q[Q].trim(),j.setAccTitle(this.$);break;case 30:case 31:this.$=q[Q].trim(),j.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:q[Q-3],url:q[Q-2],tooltip:q[Q-1]};break;case 33:this.$={stmt:"click",id:q[Q-3],url:q[Q-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:q[Q-1].trim(),classes:q[Q].trim()};break;case 36:this.$={stmt:"style",id:q[Q-1].trim(),styleClass:q[Q].trim()};break;case 37:this.$={stmt:"applyClass",id:q[Q-1].trim(),styleClass:q[Q].trim()};break;case 38:j.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:j.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:j.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:j.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:q[Q].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:q[Q-2].trim(),classes:[q[Q].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:q[Q-2].trim(),classes:[q[Q].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:S,41:w,45:k,48:C,51:A,52:L,53:I,54:R,57:E},t(_,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:S,41:w,45:k,48:C,51:A,52:L,53:I,54:R,57:E},t(_,[2,7]),t(_,[2,8]),t(_,[2,9]),t(_,[2,10]),t(_,[2,11]),t(_,[2,12],{14:[1,40],15:[1,41]}),t(_,[2,16]),{18:[1,42]},t(_,[2,18],{20:[1,43]}),{23:[1,44]},t(_,[2,22]),t(_,[2,23]),t(_,[2,24]),t(_,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(_,[2,28]),{34:[1,49]},{36:[1,50]},t(_,[2,31]),{13:51,24:d,57:E},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(D,[2,44],{58:[1,56]}),t(D,[2,45],{58:[1,57]}),t(_,[2,38]),t(_,[2,39]),t(_,[2,40]),t(_,[2,41]),t(_,[2,6]),t(_,[2,13]),{13:58,24:d,57:E},t(_,[2,17]),t(O,i,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(_,[2,29]),t(_,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(_,[2,14],{14:[1,71]}),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,72],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:S,41:w,45:k,48:C,51:A,52:L,53:I,54:R,57:E},t(_,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(_,[2,34]),t(_,[2,35]),t(_,[2,36]),t(_,[2,37]),t(D,[2,46]),t(D,[2,47]),t(_,[2,15]),t(_,[2,19]),t(O,i,{7:78}),t(_,[2,26]),t(_,[2,27]),{5:[1,79]},{5:[1,80]},{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,81],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:S,41:w,45:k,48:C,51:A,52:L,53:I,54:R,57:E},t(_,[2,32]),t(_,[2,33]),t(_,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:o(function(V,$){if($.recoverable)this.trace(V);else{var U=new Error(V);throw U.hash=$,U}},"parseError"),parse:o(function(V){var $=this,U=[0],j=[],ee=[null],q=[],oe=this.table,Q="",ue=0,te=0,re=0,J=2,K=1,ae=q.slice.call(arguments,1),Z=Object.create(this.lexer),de={yy:{}};for(var ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ne)&&(de.yy[ne]=this.yy[ne]);Z.setInput(V,de.yy),de.yy.lexer=Z,de.yy.parser=this,typeof Z.yylloc>"u"&&(Z.yylloc={});var Te=Z.yylloc;q.push(Te);var W=Z.options&&Z.options.ranges;typeof de.yy.parseError=="function"?this.parseError=de.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ve(z){U.length=U.length-2*z,ee.length=ee.length-z,q.length=q.length-z}o(Ve,"popStack");function pe(){var z;return z=j.pop()||Z.lex()||K,typeof z!="number"&&(z instanceof Array&&(j=z,z=j.pop()),z=$.symbols_[z]||z),z}o(pe,"lex");for(var Be,Ye,He,Le,Ie,Ne,Ce={},Fe,fe,xe,Y;;){if(He=U[U.length-1],this.defaultActions[He]?Le=this.defaultActions[He]:((Be===null||typeof Be>"u")&&(Be=pe()),Le=oe[He]&&oe[He][Be]),typeof Le>"u"||!Le.length||!Le[0]){var he="";Y=[];for(Fe in oe[He])this.terminals_[Fe]&&Fe>J&&Y.push("'"+this.terminals_[Fe]+"'");Z.showPosition?he="Parse error on line "+(ue+1)+`: -`+Z.showPosition()+` -Expecting `+Y.join(", ")+", got '"+(this.terminals_[Be]||Be)+"'":he="Parse error on line "+(ue+1)+": Unexpected "+(Be==K?"end of input":"'"+(this.terminals_[Be]||Be)+"'"),this.parseError(he,{text:Z.match,token:this.terminals_[Be]||Be,line:Z.yylineno,loc:Te,expected:Y})}if(Le[0]instanceof Array&&Le.length>1)throw new Error("Parse Error: multiple actions possible at state: "+He+", token: "+Be);switch(Le[0]){case 1:U.push(Be),ee.push(Z.yytext),q.push(Z.yylloc),U.push(Le[1]),Be=null,Ye?(Be=Ye,Ye=null):(te=Z.yyleng,Q=Z.yytext,ue=Z.yylineno,Te=Z.yylloc,re>0&&re--);break;case 2:if(fe=this.productions_[Le[1]][1],Ce.$=ee[ee.length-fe],Ce._$={first_line:q[q.length-(fe||1)].first_line,last_line:q[q.length-1].last_line,first_column:q[q.length-(fe||1)].first_column,last_column:q[q.length-1].last_column},W&&(Ce._$.range=[q[q.length-(fe||1)].range[0],q[q.length-1].range[1]]),Ne=this.performAction.apply(Ce,[Q,te,ue,de.yy,Le[1],ee,q].concat(ae)),typeof Ne<"u")return Ne;fe&&(U=U.slice(0,-1*fe*2),ee=ee.slice(0,-1*fe),q=q.slice(0,-1*fe)),U.push(this.productions_[Le[1]][0]),ee.push(Ce.$),q.push(Ce._$),xe=oe[U[U.length-2]][U[U.length-1]],U.push(xe);break;case 3:return!0}}return!0},"parse")},P=(function(){var F={EOF:1,parseError:o(function($,U){if(this.yy.parser)this.yy.parser.parseError($,U);else throw new Error($)},"parseError"),setInput:o(function(V,$){return this.yy=$||this.yy||{},this._input=V,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var V=this._input[0];this.yytext+=V,this.yyleng++,this.offset++,this.match+=V,this.matched+=V;var $=V.match(/(?:\r\n?|\n).*/g);return $?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),V},"input"),unput:o(function(V){var $=V.length,U=V.split(/(?:\r\n?|\n)/g);this._input=V+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-$),this.offset-=$;var j=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),U.length-1&&(this.yylineno-=U.length-1);var ee=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:U?(U.length===j.length?this.yylloc.first_column:0)+j[j.length-U.length].length-U[0].length:this.yylloc.first_column-$},this.options.ranges&&(this.yylloc.range=[ee[0],ee[0]+this.yyleng-$]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(V){this.unput(this.match.slice(V))},"less"),pastInput:o(function(){var V=this.matched.substr(0,this.matched.length-this.match.length);return(V.length>20?"...":"")+V.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var V=this.match;return V.length<20&&(V+=this._input.substr(0,20-V.length)),(V.substr(0,20)+(V.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var V=this.pastInput(),$=new Array(V.length+1).join("-");return V+this.upcomingInput()+` -`+$+"^"},"showPosition"),test_match:o(function(V,$){var U,j,ee;if(this.options.backtrack_lexer&&(ee={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ee.yylloc.range=this.yylloc.range.slice(0))),j=V[0].match(/(?:\r\n?|\n).*/g),j&&(this.yylineno+=j.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:j?j[j.length-1].length-j[j.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+V[0].length},this.yytext+=V[0],this.match+=V[0],this.matches=V,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(V[0].length),this.matched+=V[0],U=this.performAction.call(this,this.yy,this,$,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),U)return U;if(this._backtrack){for(var q in ee)this[q]=ee[q];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var V,$,U,j;this._more||(this.yytext="",this.match="");for(var ee=this._currentRules(),q=0;q$[0].length)){if($=U,j=q,this.options.backtrack_lexer){if(V=this.test_match(U,ee[q]),V!==!1)return V;if(this._backtrack){$=!1;continue}else return!1}else if(!this.options.flex)break}return $?(V=this.test_match($,ee[j]),V!==!1?V:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var $=this.next();return $||this.lex()},"lex"),begin:o(function($){this.conditionStack.push($)},"begin"),popState:o(function(){var $=this.conditionStack.length-1;return $>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function($){return $=this.conditionStack.length-1-Math.abs($||0),$>=0?this.conditionStack[$]:"INITIAL"},"topState"),pushState:o(function($){this.begin($)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function($,U,j,ee){var q=ee;switch(j){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:break;case 9:break;case 10:return 5;case 11:break;case 12:break;case 13:break;case 14:break;case 15:return this.pushState("SCALE"),17;break;case 16:return 18;case 17:this.popState();break;case 18:return this.begin("acc_title"),33;break;case 19:return this.popState(),"acc_title_value";break;case 20:return this.begin("acc_descr"),35;break;case 21:return this.popState(),"acc_descr_value";break;case 22:this.begin("acc_descr_multiline");break;case 23:this.popState();break;case 24:return"acc_descr_multiline_value";case 25:return this.pushState("CLASSDEF"),41;break;case 26:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 27:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 28:return this.popState(),43;break;case 29:return this.pushState("CLASS"),48;break;case 30:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 31:return this.popState(),50;break;case 32:return this.pushState("STYLE"),45;break;case 33:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 34:return this.popState(),47;break;case 35:return this.pushState("SCALE"),17;break;case 36:return 18;case 37:this.popState();break;case 38:this.pushState("STATE");break;case 39:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),U.yytext=U.yytext.slice(0,-10).trim(),27;break;case 42:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),25;break;case 43:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),26;break;case 44:return this.popState(),U.yytext=U.yytext.slice(0,-10).trim(),27;break;case 45:return 51;case 46:return 52;case 47:return 53;case 48:return 54;case 49:this.pushState("STATE_STRING");break;case 50:return this.pushState("STATE_ID"),"AS";break;case 51:return this.popState(),"ID";break;case 52:this.popState();break;case 53:return"STATE_DESCR";case 54:return 19;case 55:this.popState();break;case 56:return this.popState(),this.pushState("struct"),20;break;case 57:break;case 58:return this.popState(),21;break;case 59:break;case 60:return this.begin("NOTE"),29;break;case 61:return this.popState(),this.pushState("NOTE_ID"),59;break;case 62:return this.popState(),this.pushState("NOTE_ID"),60;break;case 63:this.popState(),this.pushState("FLOATING_NOTE");break;case 64:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 65:break;case 66:return"NOTE_TEXT";case 67:return this.popState(),"ID";break;case 68:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 69:return this.popState(),U.yytext=U.yytext.substr(2).trim(),31;break;case 70:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),31;break;case 71:return 6;case 72:return 6;case 73:return 16;case 74:return 57;case 75:return 24;case 76:return U.yytext=U.yytext.trim(),14;break;case 77:return 15;case 78:return 28;case 79:return 58;case 80:return 5;case 81:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[12,13],inclusive:!1},struct:{rules:[12,13,25,29,32,38,45,46,47,48,57,58,59,60,74,75,76,77,78],inclusive:!1},FLOATING_NOTE_ID:{rules:[67],inclusive:!1},FLOATING_NOTE:{rules:[64,65,66],inclusive:!1},NOTE_TEXT:{rules:[69,70],inclusive:!1},NOTE_ID:{rules:[68],inclusive:!1},NOTE:{rules:[61,62,63],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[34],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[33],inclusive:!1},CLASS_STYLE:{rules:[31],inclusive:!1},CLASS:{rules:[30],inclusive:!1},CLASSDEFID:{rules:[28],inclusive:!1},CLASSDEF:{rules:[26,27],inclusive:!1},acc_descr_multiline:{rules:[23,24],inclusive:!1},acc_descr:{rules:[21],inclusive:!1},acc_title:{rules:[19],inclusive:!1},SCALE:{rules:[16,17,36,37],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[51],inclusive:!1},STATE_STRING:{rules:[52,53],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[12,13,39,40,41,42,43,44,49,50,54,55,56],inclusive:!1},ID:{rules:[12,13],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,18,20,22,25,29,32,35,38,56,60,71,72,73,74,75,76,77,79,80,81],inclusive:!0}}};return F})();N.lexer=P;function B(){this.yy={}}return o(B,"Parser"),B.prototype=N,N.Parser=B,new B})();d$.parser=d$;oC=d$});var Qf,u0,S4,fve,dve,pve,h0,lC,m$,g$,y$,v$,cC,uC,mve,gve,x$,b$,yve,vve,ly,eet,xve,T$,tet,ret,bve,Tve,net,wve,iet,kve,w$,k$,Eve,hC,Sve,E$,fC=M(()=>{"use strict";Qf="state",u0="root",S4="relation",fve="classDef",dve="style",pve="applyClass",h0="default",lC="divider",m$="fill:none",g$="fill: #333",y$="text",v$="normal",cC="rect",uC="rectWithTitle",mve="stateStart",gve="stateEnd",x$="divider",b$="roundedWithTitle",yve="note",vve="noteGroup",ly="statediagram",eet="state",xve=`${ly}-${eet}`,T$="transition",tet="note",ret="note-edge",bve=`${T$} ${ret}`,Tve=`${ly}-${tet}`,net="cluster",wve=`${ly}-${net}`,iet="cluster-alt",kve=`${ly}-${iet}`,w$="parent",k$="note",Eve="state",hC="----",Sve=`${hC}${k$}`,E$=`${hC}${w$}`});function S$(t="",e=0,r="",n=hC){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${Eve}-${t}${i}-${e}`}function dC(t,e,r){if(!e.id||e.id===""||e.id==="")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(i=>{let a=r.get(i);a&&(e.cssCompiledStyles=[...e.cssCompiledStyles??[],...a.styles])}));let n=t.find(i=>i.id===e.id);n?Object.assign(n,e):t.push(e)}function set(t){return t?.classes?.join(" ")??""}function oet(t){return t?.styles??[]}var pC,Zf,aet,Cve,cy,_ve,Dve=M(()=>{"use strict";Xt();pt();gr();fC();pC=new Map,Zf=0;o(S$,"stateDomId");aet=o((t,e,r,n,i,a,s,l)=>{X.trace("items",e),e.forEach(u=>{switch(u.stmt){case Qf:cy(t,u,r,n,i,a,s,l);break;case h0:cy(t,u,r,n,i,a,s,l);break;case S4:{cy(t,u.state1,r,n,i,a,s,l),cy(t,u.state2,r,n,i,a,s,l);let h={id:"edge"+Zf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:m$,labelStyle:"",label:tt.sanitizeText(u.description??"",ge()),arrowheadStyle:g$,labelpos:"c",labelType:y$,thickness:v$,classes:T$,look:s};i.push(h),Zf++}break}})},"setupDoc"),Cve=o((t,e="TB")=>{let r=e;if(t.doc)for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(dC,"insertOrUpdateNode");o(set,"getClassesFromDbInfo");o(oet,"getStylesFromDbInfo");cy=o((t,e,r,n,i,a,s,l)=>{let u=e.id,h=r.get(u),f=set(h),d=oet(h),p=ge();if(X.info("dataFetcher parsedItem",e,h,d),u!=="root"){let m=cC;e.start===!0?m=mve:e.start===!1&&(m=gve),e.type!==h0&&(m=e.type),pC.get(u)||pC.set(u,{id:u,shape:m,description:tt.sanitizeText(u,p),cssClasses:`${f} ${xve}`,cssStyles:d});let g=pC.get(u);e.description&&(Array.isArray(g.description)?(g.shape=uC,g.description.push(e.description)):g.description?.length&&g.description.length>0?(g.shape=uC,g.description===u?g.description=[e.description]:g.description=[g.description,e.description]):(g.shape=cC,g.description=e.description),g.description=tt.sanitizeTextOrArray(g.description,p)),g.description?.length===1&&g.shape===uC&&(g.type==="group"?g.shape=b$:g.shape=cC),!g.type&&e.doc&&(X.info("Setting cluster for XCX",u,Cve(e)),g.type="group",g.isGroup=!0,g.dir=Cve(e),g.shape=e.type===lC?x$:b$,g.cssClasses=`${g.cssClasses} ${wve} ${a?kve:""}`);let y={labelStyle:"",shape:g.shape,label:g.description,cssClasses:g.cssClasses,cssCompiledStyles:[],cssStyles:g.cssStyles,id:u,dir:g.dir,domId:S$(u,Zf),type:g.type,isGroup:g.type==="group",padding:8,rx:10,ry:10,look:s};if(y.shape===x$&&(y.label=""),t&&t.id!=="root"&&(X.trace("Setting node ",u," to be child of its parent ",t.id),y.parentId=t.id),y.centerLabel=!0,e.note){let v={labelStyle:"",shape:yve,label:e.note.text,cssClasses:Tve,cssStyles:[],cssCompiledStyles:[],id:u+Sve+"-"+Zf,domId:S$(u,Zf,k$),type:g.type,isGroup:g.type==="group",padding:p.flowchart?.padding,look:s,position:e.note.position},x=u+E$,b={labelStyle:"",shape:vve,label:e.note.text,cssClasses:g.cssClasses,cssStyles:[],id:u+E$,domId:S$(u,Zf,w$),type:"group",isGroup:!0,padding:16,look:s,position:e.note.position};Zf++,b.id=x,v.parentId=x,dC(n,b,l),dC(n,v,l),dC(n,y,l);let T=u,S=v.id;e.note.position==="left of"&&(T=v.id,S=u),i.push({id:T+"-"+S,start:T,end:S,arrowhead:"none",arrowTypeEnd:"",style:m$,labelStyle:"",classes:bve,arrowheadStyle:g$,labelpos:"c",labelType:y$,thickness:v$,look:s})}else dC(n,y,l)}e.doc&&(X.trace("Adding nodes children "),aet(e,e.doc,r,n,i,!a,s,l))},"dataFetcher"),_ve=o(()=>{pC.clear(),Zf=0},"reset")});var A$,cet,uet,Lve,_$=M(()=>{"use strict";Xt();pt();ep();Nf();Mf();tr();fC();A$=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),cet=o(function(t,e){return e.db.getClasses()},"getClasses"),uet=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:a,layout:s}=ge();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=Vo(e,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=e,await Qo(l,u);let h=8;try{(typeof n.db.getLinks=="function"?n.db.getLinks():new Map).forEach((d,p)=>{let m=typeof p=="string"?p:typeof p?.id=="string"?p.id:"";if(!m){X.warn("\u26A0\uFE0F Invalid or missing stateId from key:",JSON.stringify(p));return}let g=u.node()?.querySelectorAll("g"),y;if(g?.forEach(T=>{T.textContent?.trim()===m&&(y=T)}),!y){X.warn("\u26A0\uFE0F Could not find node matching text:",m);return}let v=y.parentNode;if(!v){X.warn("\u26A0\uFE0F Node has no parent, cannot wrap:",m);return}let x=document.createElementNS("http://www.w3.org/2000/svg","a"),b=d.url.replace(/^"+|"+$/g,"");if(x.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",b),x.setAttribute("target","_blank"),d.tooltip){let T=d.tooltip.replace(/^"+|"+$/g,"");x.setAttribute("title",T)}v.replaceChild(x,y),x.appendChild(y),X.info("\u{1F517} Wrapped node in
    tag for:",m,d.url)})}catch(f){X.error("\u274C Error injecting clickable links:",f)}qt.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Ws(u,h,ly,a?.useMaxWidth??!0)},"draw"),Lve={getClasses:cet,draw:uet,getDir:A$}});var ws,Nve,Mve,mC,al,gC=M(()=>{"use strict";Xt();pt();tr();gr();ci();Dve();_$();fC();ws={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},Nve=o(()=>new Map,"newClassesList"),Mve=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),mC=o(t=>JSON.parse(JSON.stringify(t)),"clone"),al=class{constructor(e){this.version=e;this.nodes=[];this.edges=[];this.rootDoc=[];this.classes=Nve();this.documents={root:Mve()};this.currentDocument=this.documents.root;this.startEndCount=0;this.dividerCnt=0;this.links=new Map;this.getAccTitle=Mr;this.setAccTitle=Rr;this.getAccDescription=Or;this.setAccDescription=Ir;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this)}static{o(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let i of Array.isArray(e)?e:e.doc)switch(i.stmt){case Qf:this.addState(i.id.trim(),i.type,i.doc,i.description,i.note);break;case S4:this.addRelation(i.state1,i.state2,i.description);break;case fve:this.addStyleClass(i.id.trim(),i.classes);break;case dve:this.handleStyleDef(i);break;case pve:this.setCssClass(i.id.trim(),i.styleClass);break;case"click":this.addLink(i.id,i.url,i.tooltip);break}let r=this.getStates(),n=ge();_ve(),cy(void 0,this.getRootDocV2(),r,this.nodes,this.edges,!0,n.look,this.classes);for(let i of this.nodes)if(Array.isArray(i.label)){if(i.description=i.label.slice(1),i.isGroup&&i.description.length>0)throw new Error(`Group nodes can only have label. Remove the additional description for node [${i.id}]`);i.label=i.label[0]}}handleStyleDef(e){let r=e.id.trim().split(","),n=e.styleClass.split(",");for(let i of r){let a=this.getState(i);if(!a){let s=i.trim();this.addState(s),a=this.getState(s)}a&&(a.styles=n.map(s=>s.replace(/;/g,"")?.trim()))}}setRootDoc(e){X.info("Setting root doc",e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,r,n){if(r.stmt===S4){this.docTranslator(e,r.state1,!0),this.docTranslator(e,r.state2,!1);return}if(r.stmt===Qf&&(r.id===ws.START_NODE?(r.id=e.id+(n?"_start":"_end"),r.start=n):r.id=r.id.trim()),r.stmt!==u0&&r.stmt!==Qf||!r.doc)return;let i=[],a=[];for(let s of r.doc)if(s.type===lC){let l=mC(s);l.doc=mC(a),i.push(l),a=[]}else a.push(s);if(i.length>0&&a.length>0){let s={stmt:Qf,id:GL(),type:"divider",doc:mC(a)};i.push(mC(s)),r.doc=i}r.doc.forEach(s=>this.docTranslator(r,s,!0))}getRootDocV2(){return this.docTranslator({id:u0,stmt:u0},{id:u0,stmt:u0,doc:this.rootDoc},!0),{id:u0,doc:this.rootDoc}}addState(e,r=h0,n=void 0,i=void 0,a=void 0,s=void 0,l=void 0,u=void 0){let h=e?.trim();if(!this.currentDocument.states.has(h))X.info("Adding state ",h,i),this.currentDocument.states.set(h,{stmt:Qf,id:h,descriptions:[],type:r,doc:n,note:a,classes:[],styles:[],textStyles:[]});else{let f=this.currentDocument.states.get(h);if(!f)throw new Error(`State not found: ${h}`);f.doc||(f.doc=n),f.type||(f.type=r)}if(i&&(X.info("Setting state description",h,i),(Array.isArray(i)?i:[i]).forEach(d=>this.addDescription(h,d.trim()))),a){let f=this.currentDocument.states.get(h);if(!f)throw new Error(`State not found: ${h}`);f.note=a,f.note.text=tt.sanitizeText(f.note.text,ge())}s&&(X.info("Setting state classes",h,s),(Array.isArray(s)?s:[s]).forEach(d=>this.setCssClass(h,d.trim()))),l&&(X.info("Setting state styles",h,l),(Array.isArray(l)?l:[l]).forEach(d=>this.setStyle(h,d.trim()))),u&&(X.info("Setting state styles",h,l),(Array.isArray(u)?u:[u]).forEach(d=>this.setTextStyle(h,d.trim())))}clear(e){this.nodes=[],this.edges=[],this.documents={root:Mve()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Nve(),e||(this.links=new Map,Sr())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){X.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,r,n){this.links.set(e,{url:r,tooltip:n}),X.warn("Adding link",e,r,n)}getLinks(){return this.links}startIdIfNeeded(e=""){return e===ws.START_NODE?(this.startEndCount++,`${ws.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e="",r=h0){return e===ws.START_NODE?ws.START_TYPE:r}endIdIfNeeded(e=""){return e===ws.END_NODE?(this.startEndCount++,`${ws.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e="",r=h0){return e===ws.END_NODE?ws.END_TYPE:r}addRelationObjs(e,r,n=""){let i=this.startIdIfNeeded(e.id.trim()),a=this.startTypeIfNeeded(e.id.trim(),e.type),s=this.startIdIfNeeded(r.id.trim()),l=this.startTypeIfNeeded(r.id.trim(),r.type);this.addState(i,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(s,l,r.doc,r.description,r.note,r.classes,r.styles,r.textStyles),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:tt.sanitizeText(n,ge())})}addRelation(e,r,n){if(typeof e=="object"&&typeof r=="object")this.addRelationObjs(e,r,n);else if(typeof e=="string"&&typeof r=="string"){let i=this.startIdIfNeeded(e.trim()),a=this.startTypeIfNeeded(e),s=this.endIdIfNeeded(r.trim()),l=this.endTypeIfNeeded(r);this.addState(i,a),this.addState(s,l),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:n?tt.sanitizeText(n,ge()):void 0})}}addDescription(e,r){let n=this.currentDocument.states.get(e),i=r.startsWith(":")?r.replace(":","").trim():r;n?.descriptions?.push(tt.sanitizeText(i,ge()))}cleanupLabel(e){return e.startsWith(":")?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,r=""){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let n=this.classes.get(e);r&&n&&r.split(ws.STYLECLASS_SEP).forEach(i=>{let a=i.replace(/([^;]*);/,"$1").trim();if(RegExp(ws.COLOR_KEYWORD).exec(i)){let l=a.replace(ws.FILL_KEYWORD,ws.BG_FILL).replace(ws.COLOR_KEYWORD,ws.FILL_KEYWORD);n.textStyles.push(l)}n.styles.push(a)})}getClasses(){return this.classes}setCssClass(e,r){e.split(",").forEach(n=>{let i=this.getState(n);if(!i){let a=n.trim();this.addState(a),i=this.getState(a)}i?.classes?.push(r)})}setStyle(e,r){this.getState(e)?.styles?.push(r)}setTextStyle(e,r){this.getState(e)?.textStyles?.push(r)}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt==="dir")}getDirection(){return this.getDirectionStatement()?.value??"TB"}setDirection(e){let r=this.getDirectionStatement();r?r.value=e:this.rootDoc.unshift({stmt:"dir",value:e})}trimColon(e){return e.startsWith(":")?e.slice(1).trim():e.trim()}getData(){let e=ge();return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:A$(this.getRootDocV2())}}getConfig(){return ge().state}}});var fet,yC,D$=M(()=>{"use strict";fet=o(t=>` + ${Su()} +`,"getStyles"),I7=Vot});var qot,Uot,Wot,O7,Kq=I(()=>{"use strict";Qt();gt();y0();Cd();Ad();sr();qot=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),Uot=o(function(t,e){return e.db.getClasses()},"getClasses"),Wot=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:a,layout:s}=xe(),l=n.db.getData(),u=xl(e,i);l.type=n.type,l.layoutAlgorithm=ku(s),l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["aggregation","extension","composition","dependency","lollipop"],l.diagramId=e,await _l(l,u);let h=8;jt.insertTitle(u,"classDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),mo(u,h,"classDiagram",a?.useMaxWidth??!0)},"draw"),O7={getClasses:Uot,draw:Wot,getDir:qot}});var uwe={};vr(uwe,{diagram:()=>Hot});var Hot,hwe=I(()=>{"use strict";Yq();jq();Xq();Kq();Hot={parser:N7,get db(){return new Rv},renderer:O7,styles:I7,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var pwe={};vr(pwe,{diagram:()=>Kot});var Kot,mwe=I(()=>{"use strict";Yq();jq();Xq();Kq();Kot={parser:N7,get db(){return new Rv},renderer:O7,styles:I7,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var Qq,P7,Zq=I(()=>{"use strict";Qq=(function(){var t=o(function(F,G,$,V){for($=$||{},V=F.length;V--;$[F[V]]=G);return $},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,16],u=[1,17],h=[1,18],f=[1,19],d=[1,33],p=[1,20],m=[1,21],g=[1,22],y=[1,23],v=[1,24],x=[1,26],b=[1,27],T=[1,28],E=[1,29],w=[1,30],k=[1,31],C=[1,32],D=[1,35],R=[1,36],O=[1,37],L=[1,38],S=[1,34],A=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],_=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],N=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],M={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:o(function(G,$,V,K,ee,H,he){var Z=H.length-1;switch(ee){case 3:return K.setRootDoc(H[Z]),H[Z];break;case 4:this.$=[];break;case 5:H[Z]!="nl"&&(H[Z-1].push(H[Z]),this.$=H[Z-1]);break;case 6:case 7:this.$=H[Z];break;case 8:this.$="nl";break;case 12:this.$=H[Z];break;case 13:let te=H[Z-1];te.description=K.trimColon(H[Z]),this.$=te;break;case 14:this.$={stmt:"relation",state1:H[Z-2],state2:H[Z]};break;case 15:let Q=K.trimColon(H[Z]);this.$={stmt:"relation",state1:H[Z-3],state2:H[Z-1],description:Q};break;case 19:this.$={stmt:"state",id:H[Z-3],type:"default",description:"",doc:H[Z-1]};break;case 20:var de=H[Z],re=H[Z-2].trim();if(H[Z].match(":")){var ne=H[Z].split(":");de=ne[0],re=[re,ne[1]]}this.$={stmt:"state",id:de,type:"default",description:re};break;case 21:this.$={stmt:"state",id:H[Z-3],type:"default",description:H[Z-5],doc:H[Z-1]};break;case 22:this.$={stmt:"state",id:H[Z],type:"fork"};break;case 23:this.$={stmt:"state",id:H[Z],type:"join"};break;case 24:this.$={stmt:"state",id:H[Z],type:"choice"};break;case 25:this.$={stmt:"state",id:K.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:H[Z-1].trim(),note:{position:H[Z-2].trim(),text:H[Z].trim()}};break;case 29:this.$=H[Z].trim(),K.setAccTitle(this.$);break;case 30:case 31:this.$=H[Z].trim(),K.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:H[Z-3],url:H[Z-2],tooltip:H[Z-1]};break;case 33:this.$={stmt:"click",id:H[Z-3],url:H[Z-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:H[Z-1].trim(),classes:H[Z].trim()};break;case 36:this.$={stmt:"style",id:H[Z-1].trim(),styleClass:H[Z].trim()};break;case 37:this.$={stmt:"applyClass",id:H[Z-1].trim(),styleClass:H[Z].trim()};break;case 38:K.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:K.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:K.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:K.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:H[Z].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:H[Z-2].trim(),classes:[H[Z].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:H[Z-2].trim(),classes:[H[Z].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:E,41:w,45:k,48:C,51:D,52:R,53:O,54:L,57:S},t(A,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:E,41:w,45:k,48:C,51:D,52:R,53:O,54:L,57:S},t(A,[2,7]),t(A,[2,8]),t(A,[2,9]),t(A,[2,10]),t(A,[2,11]),t(A,[2,12],{14:[1,40],15:[1,41]}),t(A,[2,16]),{18:[1,42]},t(A,[2,18],{20:[1,43]}),{23:[1,44]},t(A,[2,22]),t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(A,[2,28]),{34:[1,49]},{36:[1,50]},t(A,[2,31]),{13:51,24:d,57:S},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(_,[2,44],{58:[1,56]}),t(_,[2,45],{58:[1,57]}),t(A,[2,38]),t(A,[2,39]),t(A,[2,40]),t(A,[2,41]),t(A,[2,6]),t(A,[2,13]),{13:58,24:d,57:S},t(A,[2,17]),t(N,i,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(A,[2,29]),t(A,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(A,[2,14],{14:[1,71]}),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,72],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:E,41:w,45:k,48:C,51:D,52:R,53:O,54:L,57:S},t(A,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(A,[2,34]),t(A,[2,35]),t(A,[2,36]),t(A,[2,37]),t(_,[2,46]),t(_,[2,47]),t(A,[2,15]),t(A,[2,19]),t(N,i,{7:78}),t(A,[2,26]),t(A,[2,27]),{5:[1,79]},{5:[1,80]},{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,81],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:T,38:E,41:w,45:k,48:C,51:D,52:R,53:O,54:L,57:S},t(A,[2,32]),t(A,[2,33]),t(A,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:o(function(G,$){if($.recoverable)this.trace(G);else{var V=new Error(G);throw V.hash=$,V}},"parseError"),parse:o(function(G){var $=this,V=[0],K=[],ee=[null],H=[],he=this.table,Z="",de=0,re=0,ne=0,te=2,Q=1,le=H.slice.call(arguments,1),J=Object.create(this.lexer),ge={yy:{}};for(var ie in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ie)&&(ge.yy[ie]=this.yy[ie]);J.setInput(G,ge.yy),ge.yy.lexer=J,ge.yy.parser=this,typeof J.yylloc>"u"&&(J.yylloc={});var Te=J.yylloc;H.push(Te);var j=J.options&&J.options.ranges;typeof ge.yy.parseError=="function"?this.parseError=ge.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ge(z){V.length=V.length-2*z,ee.length=ee.length-z,H.length=H.length-z}o(Ge,"popStack");function ye(){var z;return z=K.pop()||J.lex()||Q,typeof z!="number"&&(z instanceof Array&&(K=z,z=K.pop()),z=$.symbols_[z]||z),z}o(ye,"lex");for(var $e,Xe,Ue,Le,Ie,Me,Ae={},ze,Y,ce,U;;){if(Ue=V[V.length-1],this.defaultActions[Ue]?Le=this.defaultActions[Ue]:(($e===null||typeof $e>"u")&&($e=ye()),Le=he[Ue]&&he[Ue][$e]),typeof Le>"u"||!Le.length||!Le[0]){var ue="";U=[];for(ze in he[Ue])this.terminals_[ze]&&ze>te&&U.push("'"+this.terminals_[ze]+"'");J.showPosition?ue="Parse error on line "+(de+1)+`: +`+J.showPosition()+` +Expecting `+U.join(", ")+", got '"+(this.terminals_[$e]||$e)+"'":ue="Parse error on line "+(de+1)+": Unexpected "+($e==Q?"end of input":"'"+(this.terminals_[$e]||$e)+"'"),this.parseError(ue,{text:J.match,token:this.terminals_[$e]||$e,line:J.yylineno,loc:Te,expected:U})}if(Le[0]instanceof Array&&Le.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ue+", token: "+$e);switch(Le[0]){case 1:V.push($e),ee.push(J.yytext),H.push(J.yylloc),V.push(Le[1]),$e=null,Xe?($e=Xe,Xe=null):(re=J.yyleng,Z=J.yytext,de=J.yylineno,Te=J.yylloc,ne>0&&ne--);break;case 2:if(Y=this.productions_[Le[1]][1],Ae.$=ee[ee.length-Y],Ae._$={first_line:H[H.length-(Y||1)].first_line,last_line:H[H.length-1].last_line,first_column:H[H.length-(Y||1)].first_column,last_column:H[H.length-1].last_column},j&&(Ae._$.range=[H[H.length-(Y||1)].range[0],H[H.length-1].range[1]]),Me=this.performAction.apply(Ae,[Z,re,de,ge.yy,Le[1],ee,H].concat(le)),typeof Me<"u")return Me;Y&&(V=V.slice(0,-1*Y*2),ee=ee.slice(0,-1*Y),H=H.slice(0,-1*Y)),V.push(this.productions_[Le[1]][0]),ee.push(Ae.$),H.push(Ae._$),ce=he[V[V.length-2]][V[V.length-1]],V.push(ce);break;case 3:return!0}}return!0},"parse")},P=(function(){var F={EOF:1,parseError:o(function($,V){if(this.yy.parser)this.yy.parser.parseError($,V);else throw new Error($)},"parseError"),setInput:o(function(G,$){return this.yy=$||this.yy||{},this._input=G,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var G=this._input[0];this.yytext+=G,this.yyleng++,this.offset++,this.match+=G,this.matched+=G;var $=G.match(/(?:\r\n?|\n).*/g);return $?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),G},"input"),unput:o(function(G){var $=G.length,V=G.split(/(?:\r\n?|\n)/g);this._input=G+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-$),this.offset-=$;var K=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),V.length-1&&(this.yylineno-=V.length-1);var ee=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:V?(V.length===K.length?this.yylloc.first_column:0)+K[K.length-V.length].length-V[0].length:this.yylloc.first_column-$},this.options.ranges&&(this.yylloc.range=[ee[0],ee[0]+this.yyleng-$]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(G){this.unput(this.match.slice(G))},"less"),pastInput:o(function(){var G=this.matched.substr(0,this.matched.length-this.match.length);return(G.length>20?"...":"")+G.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var G=this.match;return G.length<20&&(G+=this._input.substr(0,20-G.length)),(G.substr(0,20)+(G.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var G=this.pastInput(),$=new Array(G.length+1).join("-");return G+this.upcomingInput()+` +`+$+"^"},"showPosition"),test_match:o(function(G,$){var V,K,ee;if(this.options.backtrack_lexer&&(ee={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ee.yylloc.range=this.yylloc.range.slice(0))),K=G[0].match(/(?:\r\n?|\n).*/g),K&&(this.yylineno+=K.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:K?K[K.length-1].length-K[K.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+G[0].length},this.yytext+=G[0],this.match+=G[0],this.matches=G,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(G[0].length),this.matched+=G[0],V=this.performAction.call(this,this.yy,this,$,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),V)return V;if(this._backtrack){for(var H in ee)this[H]=ee[H];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var G,$,V,K;this._more||(this.yytext="",this.match="");for(var ee=this._currentRules(),H=0;H$[0].length)){if($=V,K=H,this.options.backtrack_lexer){if(G=this.test_match(V,ee[H]),G!==!1)return G;if(this._backtrack){$=!1;continue}else return!1}else if(!this.options.flex)break}return $?(G=this.test_match($,ee[K]),G!==!1?G:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var $=this.next();return $||this.lex()},"lex"),begin:o(function($){this.conditionStack.push($)},"begin"),popState:o(function(){var $=this.conditionStack.length-1;return $>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function($){return $=this.conditionStack.length-1-Math.abs($||0),$>=0?this.conditionStack[$]:"INITIAL"},"topState"),pushState:o(function($){this.begin($)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function($,V,K,ee){var H=ee;switch(K){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:break;case 9:break;case 10:return 5;case 11:break;case 12:break;case 13:break;case 14:break;case 15:return this.pushState("SCALE"),17;break;case 16:return 18;case 17:this.popState();break;case 18:return this.begin("acc_title"),33;break;case 19:return this.popState(),"acc_title_value";break;case 20:return this.begin("acc_descr"),35;break;case 21:return this.popState(),"acc_descr_value";break;case 22:this.begin("acc_descr_multiline");break;case 23:this.popState();break;case 24:return"acc_descr_multiline_value";case 25:return this.pushState("CLASSDEF"),41;break;case 26:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 27:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 28:return this.popState(),43;break;case 29:return this.pushState("CLASS"),48;break;case 30:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 31:return this.popState(),50;break;case 32:return this.pushState("STYLE"),45;break;case 33:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 34:return this.popState(),47;break;case 35:return this.pushState("SCALE"),17;break;case 36:return 18;case 37:this.popState();break;case 38:this.pushState("STATE");break;case 39:return this.popState(),V.yytext=V.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),V.yytext=V.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),V.yytext=V.yytext.slice(0,-10).trim(),27;break;case 42:return this.popState(),V.yytext=V.yytext.slice(0,-8).trim(),25;break;case 43:return this.popState(),V.yytext=V.yytext.slice(0,-8).trim(),26;break;case 44:return this.popState(),V.yytext=V.yytext.slice(0,-10).trim(),27;break;case 45:return 51;case 46:return 52;case 47:return 53;case 48:return 54;case 49:this.pushState("STATE_STRING");break;case 50:return this.pushState("STATE_ID"),"AS";break;case 51:return this.popState(),"ID";break;case 52:this.popState();break;case 53:return"STATE_DESCR";case 54:return 19;case 55:this.popState();break;case 56:return this.popState(),this.pushState("struct"),20;break;case 57:break;case 58:return this.popState(),21;break;case 59:break;case 60:return this.begin("NOTE"),29;break;case 61:return this.popState(),this.pushState("NOTE_ID"),59;break;case 62:return this.popState(),this.pushState("NOTE_ID"),60;break;case 63:this.popState(),this.pushState("FLOATING_NOTE");break;case 64:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 65:break;case 66:return"NOTE_TEXT";case 67:return this.popState(),"ID";break;case 68:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 69:return this.popState(),V.yytext=V.yytext.substr(2).trim(),31;break;case 70:return this.popState(),V.yytext=V.yytext.slice(0,-8).trim(),31;break;case 71:return 6;case 72:return 6;case 73:return 16;case 74:return 57;case 75:return 24;case 76:return V.yytext=V.yytext.trim(),14;break;case 77:return 15;case 78:return 28;case 79:return 58;case 80:return 5;case 81:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[12,13],inclusive:!1},struct:{rules:[12,13,25,29,32,38,45,46,47,48,57,58,59,60,74,75,76,77,78],inclusive:!1},FLOATING_NOTE_ID:{rules:[67],inclusive:!1},FLOATING_NOTE:{rules:[64,65,66],inclusive:!1},NOTE_TEXT:{rules:[69,70],inclusive:!1},NOTE_ID:{rules:[68],inclusive:!1},NOTE:{rules:[61,62,63],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[34],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[33],inclusive:!1},CLASS_STYLE:{rules:[31],inclusive:!1},CLASS:{rules:[30],inclusive:!1},CLASSDEFID:{rules:[28],inclusive:!1},CLASSDEF:{rules:[26,27],inclusive:!1},acc_descr_multiline:{rules:[23,24],inclusive:!1},acc_descr:{rules:[21],inclusive:!1},acc_title:{rules:[19],inclusive:!1},SCALE:{rules:[16,17,36,37],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[51],inclusive:!1},STATE_STRING:{rules:[52,53],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[12,13,39,40,41,42,43,44,49,50,54,55,56],inclusive:!1},ID:{rules:[12,13],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,18,20,22,25,29,32,35,38,56,60,71,72,73,74,75,76,77,79,80,81],inclusive:!0}}};return F})();M.lexer=P;function B(){this.yy={}}return o(B,"Parser"),B.prototype=M,M.Parser=B,new B})();Qq.parser=Qq;P7=Qq});var pp,Ym,o3,vwe,xwe,bwe,jm,B7,Jq,eU,tU,rU,F7,$7,Twe,wwe,nU,iU,kwe,Swe,Lv,elt,Ewe,aU,tlt,rlt,Cwe,Awe,nlt,_we,ilt,Dwe,sU,oU,Rwe,z7,Lwe,lU,G7=I(()=>{"use strict";pp="state",Ym="root",o3="relation",vwe="classDef",xwe="style",bwe="applyClass",jm="default",B7="divider",Jq="fill:none",eU="fill: #333",tU="text",rU="normal",F7="rect",$7="rectWithTitle",Twe="stateStart",wwe="stateEnd",nU="divider",iU="roundedWithTitle",kwe="note",Swe="noteGroup",Lv="statediagram",elt="state",Ewe=`${Lv}-${elt}`,aU="transition",tlt="note",rlt="note-edge",Cwe=`${aU} ${rlt}`,Awe=`${Lv}-${tlt}`,nlt="cluster",_we=`${Lv}-${nlt}`,ilt="cluster-alt",Dwe=`${Lv}-${ilt}`,sU="parent",oU="note",Rwe="state",z7="----",Lwe=`${z7}${oU}`,lU=`${z7}${sU}`});function cU(t="",e=0,r="",n=z7){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${Rwe}-${t}${i}-${e}`}function V7(t,e,r){if(!e.id||e.id===""||e.id==="")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(i=>{let a=r.get(i);a&&(e.cssCompiledStyles=[...e.cssCompiledStyles??[],...a.styles])}));let n=t.find(i=>i.id===e.id);n?Object.assign(n,e):t.push(e)}function slt(t){return t?.classes?.join(" ")??""}function olt(t){return t?.styles??[]}var q7,mp,alt,Nwe,Nv,Iwe,Owe=I(()=>{"use strict";Qt();gt();wr();G7();q7=new Map,mp=0;o(cU,"stateDomId");alt=o((t,e,r,n,i,a,s,l)=>{X.trace("items",e),e.forEach(u=>{switch(u.stmt){case pp:Nv(t,u,r,n,i,a,s,l);break;case jm:Nv(t,u,r,n,i,a,s,l);break;case o3:{Nv(t,u.state1,r,n,i,a,s,l),Nv(t,u.state2,r,n,i,a,s,l);let h={id:"edge"+mp,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:Jq,labelStyle:"",label:nt.sanitizeText(u.description??"",xe()),arrowheadStyle:eU,labelpos:"c",labelType:tU,thickness:rU,classes:aU,look:s};i.push(h),mp++}break}})},"setupDoc"),Nwe=o((t,e="TB")=>{let r=e;if(t.doc)for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(V7,"insertOrUpdateNode");o(slt,"getClassesFromDbInfo");o(olt,"getStylesFromDbInfo");Nv=o((t,e,r,n,i,a,s,l)=>{let u=e.id,h=r.get(u),f=slt(h),d=olt(h),p=xe();if(X.info("dataFetcher parsedItem",e,h,d),u!=="root"){let m=F7;e.start===!0?m=Twe:e.start===!1&&(m=wwe),e.type!==jm&&(m=e.type),q7.get(u)||q7.set(u,{id:u,shape:m,description:nt.sanitizeText(u,p),cssClasses:`${f} ${Ewe}`,cssStyles:d});let g=q7.get(u);e.description&&(Array.isArray(g.description)?(g.shape=$7,g.description.push(e.description)):g.description?.length&&g.description.length>0?(g.shape=$7,g.description===u?g.description=[e.description]:g.description=[g.description,e.description]):(g.shape=F7,g.description=e.description),g.description=nt.sanitizeTextOrArray(g.description,p)),g.description?.length===1&&g.shape===$7&&(g.type==="group"?g.shape=iU:g.shape=F7),!g.type&&e.doc&&(X.info("Setting cluster for XCX",u,Nwe(e)),g.type="group",g.isGroup=!0,g.dir=Nwe(e),g.shape=e.type===B7?nU:iU,g.cssClasses=`${g.cssClasses} ${_we} ${a?Dwe:""}`);let y={labelStyle:"",shape:g.shape,label:g.description,cssClasses:g.cssClasses,cssCompiledStyles:[],cssStyles:g.cssStyles,id:u,dir:g.dir,domId:cU(u,mp),type:g.type,isGroup:g.type==="group",padding:8,rx:10,ry:10,look:s};if(y.shape===nU&&(y.label=""),t&&t.id!=="root"&&(X.trace("Setting node ",u," to be child of its parent ",t.id),y.parentId=t.id),y.centerLabel=!0,e.note){let v={labelStyle:"",shape:kwe,label:e.note.text,cssClasses:Awe,cssStyles:[],cssCompiledStyles:[],id:u+Lwe+"-"+mp,domId:cU(u,mp,oU),type:g.type,isGroup:g.type==="group",padding:p.flowchart?.padding,look:s,position:e.note.position},x=u+lU,b={labelStyle:"",shape:Swe,label:e.note.text,cssClasses:g.cssClasses,cssStyles:[],id:u+lU,domId:cU(u,mp,sU),type:"group",isGroup:!0,padding:16,look:s,position:e.note.position};mp++,b.id=x,v.parentId=x,V7(n,b,l),V7(n,v,l),V7(n,y,l);let T=u,E=v.id;e.note.position==="left of"&&(T=v.id,E=u),i.push({id:T+"-"+E,start:T,end:E,arrowhead:"none",arrowTypeEnd:"",style:Jq,labelStyle:"",classes:Cwe,arrowheadStyle:eU,labelpos:"c",labelType:tU,thickness:rU,look:s})}else V7(n,y,l)}e.doc&&(X.trace("Adding nodes children "),alt(e,e.doc,r,n,i,!a,s,l))},"dataFetcher"),Iwe=o(()=>{q7.clear(),mp=0},"reset")});var hU,llt,clt,Pwe,fU=I(()=>{"use strict";Qt();gt();y0();Cd();Ad();sr();G7();hU=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),llt=o(function(t,e){return e.db.getClasses()},"getClasses"),clt=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:a,layout:s}=xe();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=xl(e,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=e,await _l(l,u);let h=8;try{(typeof n.db.getLinks=="function"?n.db.getLinks():new Map).forEach((d,p)=>{let m=typeof p=="string"?p:typeof p?.id=="string"?p.id:"";if(!m){X.warn("\u26A0\uFE0F Invalid or missing stateId from key:",JSON.stringify(p));return}let g=u.node()?.querySelectorAll("g"),y;if(g?.forEach(T=>{T.textContent?.trim()===m&&(y=T)}),!y){X.warn("\u26A0\uFE0F Could not find node matching text:",m);return}let v=y.parentNode;if(!v){X.warn("\u26A0\uFE0F Node has no parent, cannot wrap:",m);return}let x=document.createElementNS("http://www.w3.org/2000/svg","a"),b=d.url.replace(/^"+|"+$/g,"");if(x.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",b),x.setAttribute("target","_blank"),d.tooltip){let T=d.tooltip.replace(/^"+|"+$/g,"");x.setAttribute("title",T)}v.replaceChild(x,y),x.appendChild(y),X.info("\u{1F517} Wrapped node in tag for:",m,d.url)})}catch(f){X.error("\u274C Error injecting clickable links:",f)}jt.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),mo(u,h,Lv,a?.useMaxWidth??!0)},"draw"),Pwe={getClasses:llt,draw:clt,getDir:hU}});var Us,Fwe,$we,U7,Fl,W7=I(()=>{"use strict";Qt();gt();sr();wr();ki();Owe();fU();G7();Us={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},Fwe=o(()=>new Map,"newClassesList"),$we=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),U7=o(t=>JSON.parse(JSON.stringify(t)),"clone"),Fl=class{constructor(e){this.version=e;this.nodes=[];this.edges=[];this.rootDoc=[];this.classes=Fwe();this.documents={root:$we()};this.currentDocument=this.documents.root;this.startEndCount=0;this.dividerCnt=0;this.links=new Map;this.getAccTitle=Vr;this.setAccTitle=zr;this.getAccDescription=Ur;this.setAccDescription=qr;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this)}static{o(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let i of Array.isArray(e)?e:e.doc)switch(i.stmt){case pp:this.addState(i.id.trim(),i.type,i.doc,i.description,i.note);break;case o3:this.addRelation(i.state1,i.state2,i.description);break;case vwe:this.addStyleClass(i.id.trim(),i.classes);break;case xwe:this.handleStyleDef(i);break;case bwe:this.setCssClass(i.id.trim(),i.styleClass);break;case"click":this.addLink(i.id,i.url,i.tooltip);break}let r=this.getStates(),n=xe();Iwe(),Nv(void 0,this.getRootDocV2(),r,this.nodes,this.edges,!0,n.look,this.classes);for(let i of this.nodes)if(Array.isArray(i.label)){if(i.description=i.label.slice(1),i.isGroup&&i.description.length>0)throw new Error(`Group nodes can only have label. Remove the additional description for node [${i.id}]`);i.label=i.label[0]}}handleStyleDef(e){let r=e.id.trim().split(","),n=e.styleClass.split(",");for(let i of r){let a=this.getState(i);if(!a){let s=i.trim();this.addState(s),a=this.getState(s)}a&&(a.styles=n.map(s=>s.replace(/;/g,"")?.trim()))}}setRootDoc(e){X.info("Setting root doc",e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,r,n){if(r.stmt===o3){this.docTranslator(e,r.state1,!0),this.docTranslator(e,r.state2,!1);return}if(r.stmt===pp&&(r.id===Us.START_NODE?(r.id=e.id+(n?"_start":"_end"),r.start=n):r.id=r.id.trim()),r.stmt!==Ym&&r.stmt!==pp||!r.doc)return;let i=[],a=[];for(let s of r.doc)if(s.type===B7){let l=U7(s);l.doc=U7(a),i.push(l),a=[]}else a.push(s);if(i.length>0&&a.length>0){let s={stmt:pp,id:gN(),type:"divider",doc:U7(a)};i.push(U7(s)),r.doc=i}r.doc.forEach(s=>this.docTranslator(r,s,!0))}getRootDocV2(){return this.docTranslator({id:Ym,stmt:Ym},{id:Ym,stmt:Ym,doc:this.rootDoc},!0),{id:Ym,doc:this.rootDoc}}addState(e,r=jm,n=void 0,i=void 0,a=void 0,s=void 0,l=void 0,u=void 0){let h=e?.trim();if(!this.currentDocument.states.has(h))X.info("Adding state ",h,i),this.currentDocument.states.set(h,{stmt:pp,id:h,descriptions:[],type:r,doc:n,note:a,classes:[],styles:[],textStyles:[]});else{let f=this.currentDocument.states.get(h);if(!f)throw new Error(`State not found: ${h}`);f.doc||(f.doc=n),f.type||(f.type=r)}if(i&&(X.info("Setting state description",h,i),(Array.isArray(i)?i:[i]).forEach(d=>this.addDescription(h,d.trim()))),a){let f=this.currentDocument.states.get(h);if(!f)throw new Error(`State not found: ${h}`);f.note=a,f.note.text=nt.sanitizeText(f.note.text,xe())}s&&(X.info("Setting state classes",h,s),(Array.isArray(s)?s:[s]).forEach(d=>this.setCssClass(h,d.trim()))),l&&(X.info("Setting state styles",h,l),(Array.isArray(l)?l:[l]).forEach(d=>this.setStyle(h,d.trim()))),u&&(X.info("Setting state styles",h,l),(Array.isArray(u)?u:[u]).forEach(d=>this.setTextStyle(h,d.trim())))}clear(e){this.nodes=[],this.edges=[],this.documents={root:$we()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Fwe(),e||(this.links=new Map,Mr())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){X.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,r,n){this.links.set(e,{url:r,tooltip:n}),X.warn("Adding link",e,r,n)}getLinks(){return this.links}startIdIfNeeded(e=""){return e===Us.START_NODE?(this.startEndCount++,`${Us.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e="",r=jm){return e===Us.START_NODE?Us.START_TYPE:r}endIdIfNeeded(e=""){return e===Us.END_NODE?(this.startEndCount++,`${Us.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e="",r=jm){return e===Us.END_NODE?Us.END_TYPE:r}addRelationObjs(e,r,n=""){let i=this.startIdIfNeeded(e.id.trim()),a=this.startTypeIfNeeded(e.id.trim(),e.type),s=this.startIdIfNeeded(r.id.trim()),l=this.startTypeIfNeeded(r.id.trim(),r.type);this.addState(i,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(s,l,r.doc,r.description,r.note,r.classes,r.styles,r.textStyles),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:nt.sanitizeText(n,xe())})}addRelation(e,r,n){if(typeof e=="object"&&typeof r=="object")this.addRelationObjs(e,r,n);else if(typeof e=="string"&&typeof r=="string"){let i=this.startIdIfNeeded(e.trim()),a=this.startTypeIfNeeded(e),s=this.endIdIfNeeded(r.trim()),l=this.endTypeIfNeeded(r);this.addState(i,a),this.addState(s,l),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:n?nt.sanitizeText(n,xe()):void 0})}}addDescription(e,r){let n=this.currentDocument.states.get(e),i=r.startsWith(":")?r.replace(":","").trim():r;n?.descriptions?.push(nt.sanitizeText(i,xe()))}cleanupLabel(e){return e.startsWith(":")?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,r=""){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let n=this.classes.get(e);r&&n&&r.split(Us.STYLECLASS_SEP).forEach(i=>{let a=i.replace(/([^;]*);/,"$1").trim();if(RegExp(Us.COLOR_KEYWORD).exec(i)){let l=a.replace(Us.FILL_KEYWORD,Us.BG_FILL).replace(Us.COLOR_KEYWORD,Us.FILL_KEYWORD);n.textStyles.push(l)}n.styles.push(a)})}getClasses(){return this.classes}setCssClass(e,r){e.split(",").forEach(n=>{let i=this.getState(n);if(!i){let a=n.trim();this.addState(a),i=this.getState(a)}i?.classes?.push(r)})}setStyle(e,r){this.getState(e)?.styles?.push(r)}setTextStyle(e,r){this.getState(e)?.textStyles?.push(r)}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt==="dir")}getDirection(){return this.getDirectionStatement()?.value??"TB"}setDirection(e){let r=this.getDirectionStatement();r?r.value=e:this.rootDoc.unshift({stmt:"dir",value:e})}trimColon(e){return e.startsWith(":")?e.slice(1).trim():e.trim()}getData(){let e=xe();return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:hU(this.getRootDocV2())}}getConfig(){return xe().state}}});var hlt,H7,dU=I(()=>{"use strict";hlt=o(t=>` defs #statediagram-barbEnd { fill: ${t.transitionColor}; stroke: ${t.transitionColor}; @@ -2153,12 +2185,12 @@ g.stateGroup line { font-size: 18px; fill: ${t.textColor}; } -`,"getStyles"),yC=fet});var det,pet,met,get,Ove,yet,vet,xet,bet,L$,Ive,Pve,Bve=M(()=>{"use strict";yr();gC();tr();gr();Xt();pt();det=o(t=>t.append("circle").attr("class","start-state").attr("r",ge().state.sizeUnit).attr("cx",ge().state.padding+ge().state.sizeUnit).attr("cy",ge().state.padding+ge().state.sizeUnit),"drawStartState"),pet=o(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",ge().state.textHeight).attr("class","divider").attr("x2",ge().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),met=o((t,e)=>{let r=t.append("text").attr("x",2*ge().state.padding).attr("y",ge().state.textHeight+2*ge().state.padding).attr("font-size",ge().state.fontSize).attr("class","state-title").text(e.id),n=r.node().getBBox();return t.insert("rect",":first-child").attr("x",ge().state.padding).attr("y",ge().state.padding).attr("width",n.width+2*ge().state.padding).attr("height",n.height+2*ge().state.padding).attr("rx",ge().state.radius),r},"drawSimpleState"),get=o((t,e)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*ge().state.padding).text(m);g||y.attr("dy",ge().state.textHeight)},"addTspan"),i=t.append("text").attr("x",2*ge().state.padding).attr("y",ge().state.textHeight+1.3*ge().state.padding).attr("font-size",ge().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),a=i.height,s=t.append("text").attr("x",ge().state.padding).attr("y",a+ge().state.padding*.4+ge().state.dividerMargin+ge().state.textHeight).attr("class","state-description"),l=!0,u=!0;e.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=t.append("line").attr("x1",ge().state.padding).attr("y1",ge().state.padding+a+ge().state.dividerMargin/2).attr("y2",ge().state.padding+a+ge().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*ge().state.padding),t.insert("rect",":first-child").attr("x",ge().state.padding).attr("y",ge().state.padding).attr("width",d+2*ge().state.padding).attr("height",f.height+a+2*ge().state.padding).attr("rx",ge().state.radius),t},"drawDescrState"),Ove=o((t,e,r)=>{let n=ge().state.padding,i=2*ge().state.padding,a=t.node().getBBox(),s=a.width,l=a.x,u=t.append("text").attr("x",0).attr("y",ge().state.titleShift).attr("font-size",ge().state.fontSize).attr("class","state-title").text(e.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=t.node().getBBox();e.doc,p=l-n,f>s&&(p=(s-d)/2+n),Math.abs(l-m.x)s&&(p=l-(f-s)/2);let g=1-ge().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+ge().state.textHeight+ge().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),t.insert("rect",":first-child").attr("x",p).attr("y",ge().state.titleShift-ge().state.textHeight-ge().state.padding).attr("width",d).attr("height",ge().state.textHeight*3).attr("rx",ge().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",ge().state.titleShift-ge().state.textHeight-ge().state.padding).attr("width",d).attr("height",m.height+3+2*ge().state.textHeight).attr("rx",ge().state.radius),t},"addTitleAndBox"),yet=o(t=>(t.append("circle").attr("class","end-state-outer").attr("r",ge().state.sizeUnit+ge().state.miniPadding).attr("cx",ge().state.padding+ge().state.sizeUnit+ge().state.miniPadding).attr("cy",ge().state.padding+ge().state.sizeUnit+ge().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",ge().state.sizeUnit).attr("cx",ge().state.padding+ge().state.sizeUnit+2).attr("cy",ge().state.padding+ge().state.sizeUnit+2)),"drawEndState"),vet=o((t,e)=>{let r=ge().state.forkWidth,n=ge().state.forkHeight;if(e.parentId){let i=r;r=n,n=i}return t.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",ge().state.padding).attr("y",ge().state.padding)},"drawForkJoinState"),xet=o((t,e,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=t.replace(/\r\n/g,"
    ");s=s.replace(/\n/g,"
    ");let l=s.split(tt.lineBreakRegex),u=1.25*ge().state.noteMargin;for(let h of l){let f=h.trim();if(f.length>0){let d=a.append("tspan");if(d.text(f),u===0){let p=d.node().getBBox();u+=p.height}i+=u,d.attr("x",e+ge().state.noteMargin),d.attr("y",r+i+1.25*ge().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),bet=o((t,e)=>{e.attr("class","state-note");let r=e.append("rect").attr("x",0).attr("y",ge().state.padding),n=e.append("g"),{textWidth:i,textHeight:a}=xet(t,0,0,n);return r.attr("height",a+2*ge().state.noteMargin),r.attr("width",i+ge().state.noteMargin*2),r},"drawNote"),L$=o(function(t,e){let r=e.id,n={id:r,label:e.id,width:0,height:0},i=t.append("g").attr("id",r).attr("class","stateGroup");e.type==="start"&&det(i),e.type==="end"&&yet(i),(e.type==="fork"||e.type==="join")&&vet(i,e),e.type==="note"&&bet(e.note.text,i),e.type==="divider"&&pet(i),e.type==="default"&&e.descriptions.length===0&&met(i,e),e.type==="default"&&e.descriptions.length>0&&get(i,e);let a=i.node().getBBox();return n.width=a.width+2*ge().state.padding,n.height=a.height+2*ge().state.padding,n},"drawState"),Ive=0,Pve=o(function(t,e,r){let n=o(function(u){switch(u){case al.relationType.AGGREGATION:return"aggregation";case al.relationType.EXTENSION:return"extension";case al.relationType.COMPOSITION:return"composition";case al.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter(u=>!Number.isNaN(u.y));let i=e.points,a=Cl().x(function(u){return u.x}).y(function(u){return u.y}).curve(No),s=t.append("path").attr("d",a(i)).attr("id","edge"+Ive).attr("class","transition"),l="";if(ge().state.arrowMarkerAbsolute&&(l=md(!0)),s.attr("marker-end","url("+l+"#"+n(al.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=t.append("g").attr("class","stateLabel"),{x:h,y:f}=qt.calcLabelPosition(e.points),d=tt.getRows(r.title),p=0,m=[],g=0,y=0;for(let b=0;b<=d.length;b++){let T=u.append("text").attr("text-anchor","middle").text(d[b]).attr("x",h).attr("y",f+p),S=T.node().getBBox();g=Math.max(g,S.width),y=Math.min(y,S.x),X.info(S.x,h,f+p),p===0&&(p=T.node().getBBox().height,X.info("Title height",p,f)),m.push(T)}let v=p*d.length;if(d.length>1){let b=(d.length-1)*p*.5;m.forEach((T,S)=>T.attr("y",f+S*p-b)),v=p*d.length}let x=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-ge().state.padding/2).attr("y",f-v/2-ge().state.padding/2-3.5).attr("width",g+ge().state.padding).attr("height",v+ge().state.padding),X.info(x)}Ive++},"drawEdge")});var bo,R$,Tet,wet,ket,Eet,Fve,$ve,zve=M(()=>{"use strict";yr();hN();qo();pt();gr();Bve();Xt();Ei();R$={},Tet=o(function(){},"setConf"),wet=o(function(t){t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),ket=o(function(t,e,r,n){bo=ge().state;let i=ge().securityLevel,a;i==="sandbox"&&(a=qe("#i"+e));let s=i==="sandbox"?qe(a.nodes()[0].contentDocument.body):qe("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;X.debug("Rendering diagram "+t);let u=s.select(`[id='${e}']`);wet(u);let h=n.db.getRootDoc();Fve(h,u,void 0,!1,s,l,n);let f=bo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;mn(u,m,g,bo.useMaxWidth),u.attr("viewBox",`${d.x-bo.padding} ${d.y-bo.padding} `+p+" "+m)},"draw"),Eet=o(t=>t?t.length*bo.fontSizeFactor:1,"getLabelWidth"),Fve=o((t,e,r,n,i,a,s)=>{let l=new cn({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u{let w=S.parentElement,k=0,C=0;w&&(w.parentElement&&(k=w.parentElement.getBBox().width),C=parseInt(w.getAttribute("data-x-shift"),10),Number.isNaN(C)&&(C=0)),S.setAttribute("x1",0-C+8),S.setAttribute("x2",k-C-8)})):X.debug("No Node "+b+": "+JSON.stringify(l.node(b)))});let v=y.getBBox();l.edges().forEach(function(b){b!==void 0&&l.edge(b)!==void 0&&(X.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),Pve(e,l.edge(b),l.edge(b).relation))}),v=y.getBBox();let x={id:r||"root",label:r||"root",width:0,height:0};return x.width=v.width+2*bo.padding,x.height=v.height+2*bo.padding,X.debug("Doc rendered",x,l),x},"renderDoc"),$ve={setConf:Tet,draw:ket}});var Gve={};dr(Gve,{diagram:()=>Cet});var Cet,Vve=M(()=>{"use strict";p$();gC();D$();zve();Cet={parser:oC,get db(){return new al(1)},renderer:$ve,styles:yC,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var qve={};dr(qve,{diagram:()=>Let});var Let,Wve=M(()=>{"use strict";p$();gC();D$();_$();Let={parser:oC,get db(){return new al(2)},renderer:Lve,styles:yC,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var N$,jve,Kve=M(()=>{"use strict";N$=(function(){var t=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),e=[6,8,10,11,12,14,16,17,18],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,14],u={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:o(function(p,m,g,y,v,x,b){var T=x.length-1;switch(v){case 1:return x[T-1];case 2:this.$=[];break;case 3:x[T-1].push(x[T]),this.$=x[T-1];break;case 4:case 5:this.$=x[T];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(x[T].substr(6)),this.$=x[T].substr(6);break;case 9:this.$=x[T].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=x[T].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(x[T].substr(8)),this.$=x[T].substr(8);break;case 13:y.addTask(x[T-1],x[T]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:o(function(p,m){if(m.recoverable)this.trace(p);else{var g=new Error(p);throw g.hash=m,g}},"parseError"),parse:o(function(p){var m=this,g=[0],y=[],v=[null],x=[],b=this.table,T="",S=0,w=0,k=0,C=2,A=1,L=x.slice.call(arguments,1),I=Object.create(this.lexer),R={yy:{}};for(var E in this.yy)Object.prototype.hasOwnProperty.call(this.yy,E)&&(R.yy[E]=this.yy[E]);I.setInput(p,R.yy),R.yy.lexer=I,R.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var _=I.yylloc;x.push(_);var D=I.options&&I.options.ranges;typeof R.yy.parseError=="function"?this.parseError=R.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function O(te){g.length=g.length-2*te,v.length=v.length-te,x.length=x.length-te}o(O,"popStack");function N(){var te;return te=y.pop()||I.lex()||A,typeof te!="number"&&(te instanceof Array&&(y=te,te=y.pop()),te=m.symbols_[te]||te),te}o(N,"lex");for(var P,B,F,V,$,U,j={},ee,q,oe,Q;;){if(F=g[g.length-1],this.defaultActions[F]?V=this.defaultActions[F]:((P===null||typeof P>"u")&&(P=N()),V=b[F]&&b[F][P]),typeof V>"u"||!V.length||!V[0]){var ue="";Q=[];for(ee in b[F])this.terminals_[ee]&&ee>C&&Q.push("'"+this.terminals_[ee]+"'");I.showPosition?ue="Parse error on line "+(S+1)+`: -`+I.showPosition()+` -Expecting `+Q.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ue="Parse error on line "+(S+1)+": Unexpected "+(P==A?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(ue,{text:I.match,token:this.terminals_[P]||P,line:I.yylineno,loc:_,expected:Q})}if(V[0]instanceof Array&&V.length>1)throw new Error("Parse Error: multiple actions possible at state: "+F+", token: "+P);switch(V[0]){case 1:g.push(P),v.push(I.yytext),x.push(I.yylloc),g.push(V[1]),P=null,B?(P=B,B=null):(w=I.yyleng,T=I.yytext,S=I.yylineno,_=I.yylloc,k>0&&k--);break;case 2:if(q=this.productions_[V[1]][1],j.$=v[v.length-q],j._$={first_line:x[x.length-(q||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(q||1)].first_column,last_column:x[x.length-1].last_column},D&&(j._$.range=[x[x.length-(q||1)].range[0],x[x.length-1].range[1]]),U=this.performAction.apply(j,[T,w,S,R.yy,V[1],v,x].concat(L)),typeof U<"u")return U;q&&(g=g.slice(0,-1*q*2),v=v.slice(0,-1*q),x=x.slice(0,-1*q)),g.push(this.productions_[V[1]][0]),v.push(j.$),x.push(j._$),oe=b[g[g.length-2]][g[g.length-1]],g.push(oe);break;case 3:return!0}}return!0},"parse")},h=(function(){var d={EOF:1,parseError:o(function(m,g){if(this.yy.parser)this.yy.parser.parseError(m,g);else throw new Error(m)},"parseError"),setInput:o(function(p,m){return this.yy=m||this.yy||{},this._input=p,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},"input"),unput:o(function(p){var m=p.length,g=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var v=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===y.length?this.yylloc.first_column:0)+y[y.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`,"getStyles"),H7=hlt});var flt,dlt,plt,mlt,Gwe,glt,ylt,vlt,xlt,pU,zwe,Vwe,qwe=I(()=>{"use strict";kr();W7();sr();wr();Qt();gt();flt=o(t=>t.append("circle").attr("class","start-state").attr("r",xe().state.sizeUnit).attr("cx",xe().state.padding+xe().state.sizeUnit).attr("cy",xe().state.padding+xe().state.sizeUnit),"drawStartState"),dlt=o(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",xe().state.textHeight).attr("class","divider").attr("x2",xe().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),plt=o((t,e)=>{let r=t.append("text").attr("x",2*xe().state.padding).attr("y",xe().state.textHeight+2*xe().state.padding).attr("font-size",xe().state.fontSize).attr("class","state-title").text(e.id),n=r.node().getBBox();return t.insert("rect",":first-child").attr("x",xe().state.padding).attr("y",xe().state.padding).attr("width",n.width+2*xe().state.padding).attr("height",n.height+2*xe().state.padding).attr("rx",xe().state.radius),r},"drawSimpleState"),mlt=o((t,e)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*xe().state.padding).text(m);g||y.attr("dy",xe().state.textHeight)},"addTspan"),i=t.append("text").attr("x",2*xe().state.padding).attr("y",xe().state.textHeight+1.3*xe().state.padding).attr("font-size",xe().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),a=i.height,s=t.append("text").attr("x",xe().state.padding).attr("y",a+xe().state.padding*.4+xe().state.dividerMargin+xe().state.textHeight).attr("class","state-description"),l=!0,u=!0;e.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=t.append("line").attr("x1",xe().state.padding).attr("y1",xe().state.padding+a+xe().state.dividerMargin/2).attr("y2",xe().state.padding+a+xe().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*xe().state.padding),t.insert("rect",":first-child").attr("x",xe().state.padding).attr("y",xe().state.padding).attr("width",d+2*xe().state.padding).attr("height",f.height+a+2*xe().state.padding).attr("rx",xe().state.radius),t},"drawDescrState"),Gwe=o((t,e,r)=>{let n=xe().state.padding,i=2*xe().state.padding,a=t.node().getBBox(),s=a.width,l=a.x,u=t.append("text").attr("x",0).attr("y",xe().state.titleShift).attr("font-size",xe().state.fontSize).attr("class","state-title").text(e.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=t.node().getBBox();e.doc,p=l-n,f>s&&(p=(s-d)/2+n),Math.abs(l-m.x)s&&(p=l-(f-s)/2);let g=1-xe().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+xe().state.textHeight+xe().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),t.insert("rect",":first-child").attr("x",p).attr("y",xe().state.titleShift-xe().state.textHeight-xe().state.padding).attr("width",d).attr("height",xe().state.textHeight*3).attr("rx",xe().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",xe().state.titleShift-xe().state.textHeight-xe().state.padding).attr("width",d).attr("height",m.height+3+2*xe().state.textHeight).attr("rx",xe().state.radius),t},"addTitleAndBox"),glt=o(t=>(t.append("circle").attr("class","end-state-outer").attr("r",xe().state.sizeUnit+xe().state.miniPadding).attr("cx",xe().state.padding+xe().state.sizeUnit+xe().state.miniPadding).attr("cy",xe().state.padding+xe().state.sizeUnit+xe().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",xe().state.sizeUnit).attr("cx",xe().state.padding+xe().state.sizeUnit+2).attr("cy",xe().state.padding+xe().state.sizeUnit+2)),"drawEndState"),ylt=o((t,e)=>{let r=xe().state.forkWidth,n=xe().state.forkHeight;if(e.parentId){let i=r;r=n,n=i}return t.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",xe().state.padding).attr("y",xe().state.padding)},"drawForkJoinState"),vlt=o((t,e,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=t.replace(/\r\n/g,"
    ");s=s.replace(/\n/g,"
    ");let l=s.split(nt.lineBreakRegex),u=1.25*xe().state.noteMargin;for(let h of l){let f=h.trim();if(f.length>0){let d=a.append("tspan");if(d.text(f),u===0){let p=d.node().getBBox();u+=p.height}i+=u,d.attr("x",e+xe().state.noteMargin),d.attr("y",r+i+1.25*xe().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),xlt=o((t,e)=>{e.attr("class","state-note");let r=e.append("rect").attr("x",0).attr("y",xe().state.padding),n=e.append("g"),{textWidth:i,textHeight:a}=vlt(t,0,0,n);return r.attr("height",a+2*xe().state.noteMargin),r.attr("width",i+xe().state.noteMargin*2),r},"drawNote"),pU=o(function(t,e){let r=e.id,n={id:r,label:e.id,width:0,height:0},i=t.append("g").attr("id",r).attr("class","stateGroup");e.type==="start"&&flt(i),e.type==="end"&&glt(i),(e.type==="fork"||e.type==="join")&&ylt(i,e),e.type==="note"&&xlt(e.note.text,i),e.type==="divider"&&dlt(i),e.type==="default"&&e.descriptions.length===0&&plt(i,e),e.type==="default"&&e.descriptions.length>0&&mlt(i,e);let a=i.node().getBBox();return n.width=a.width+2*xe().state.padding,n.height=a.height+2*xe().state.padding,n},"drawState"),zwe=0,Vwe=o(function(t,e,r){let n=o(function(u){switch(u){case Fl.relationType.AGGREGATION:return"aggregation";case Fl.relationType.EXTENSION:return"extension";case Fl.relationType.COMPOSITION:return"composition";case Fl.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter(u=>!Number.isNaN(u.y));let i=e.points,a=ac().x(function(u){return u.x}).y(function(u){return u.y}).curve(cl),s=t.append("path").attr("d",a(i)).attr("id","edge"+zwe).attr("class","transition"),l="";if(xe().state.arrowMarkerAbsolute&&(l=Np(!0)),s.attr("marker-end","url("+l+"#"+n(Fl.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=t.append("g").attr("class","stateLabel"),{x:h,y:f}=jt.calcLabelPosition(e.points),d=nt.getRows(r.title),p=0,m=[],g=0,y=0;for(let b=0;b<=d.length;b++){let T=u.append("text").attr("text-anchor","middle").text(d[b]).attr("x",h).attr("y",f+p),E=T.node().getBBox();g=Math.max(g,E.width),y=Math.min(y,E.x),X.info(E.x,h,f+p),p===0&&(p=T.node().getBBox().height,X.info("Title height",p,f)),m.push(T)}let v=p*d.length;if(d.length>1){let b=(d.length-1)*p*.5;m.forEach((T,E)=>T.attr("y",f+E*p-b)),v=p*d.length}let x=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-xe().state.padding/2).attr("y",f-v/2-xe().state.padding/2-3.5).attr("width",g+xe().state.padding).attr("height",v+xe().state.padding),X.info(x)}zwe++},"drawEdge")});var Qo,mU,blt,Tlt,wlt,klt,Uwe,Wwe,Hwe=I(()=>{"use strict";kr();zI();wl();gt();wr();qwe();Qt();Fi();mU={},blt=o(function(){},"setConf"),Tlt=o(function(t){t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),wlt=o(function(t,e,r,n){Qo=xe().state;let i=xe().securityLevel,a;i==="sandbox"&&(a=He("#i"+e));let s=i==="sandbox"?He(a.nodes()[0].contentDocument.body):He("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;X.debug("Rendering diagram "+t);let u=s.select(`[id='${e}']`);Tlt(u);let h=n.db.getRootDoc();Uwe(h,u,void 0,!1,s,l,n);let f=Qo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;Sn(u,m,g,Qo.useMaxWidth),u.attr("viewBox",`${d.x-Qo.padding} ${d.y-Qo.padding} `+p+" "+m)},"draw"),klt=o(t=>t?t.length*Qo.fontSizeFactor:1,"getLabelWidth"),Uwe=o((t,e,r,n,i,a,s)=>{let l=new vn({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u{let w=E.parentElement,k=0,C=0;w&&(w.parentElement&&(k=w.parentElement.getBBox().width),C=parseInt(w.getAttribute("data-x-shift"),10),Number.isNaN(C)&&(C=0)),E.setAttribute("x1",0-C+8),E.setAttribute("x2",k-C-8)})):X.debug("No Node "+b+": "+JSON.stringify(l.node(b)))});let v=y.getBBox();l.edges().forEach(function(b){b!==void 0&&l.edge(b)!==void 0&&(X.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),Vwe(e,l.edge(b),l.edge(b).relation))}),v=y.getBBox();let x={id:r||"root",label:r||"root",width:0,height:0};return x.width=v.width+2*Qo.padding,x.height=v.height+2*Qo.padding,X.debug("Doc rendered",x,l),x},"renderDoc"),Wwe={setConf:blt,draw:wlt}});var Ywe={};vr(Ywe,{diagram:()=>Slt});var Slt,jwe=I(()=>{"use strict";Zq();W7();dU();Hwe();Slt={parser:P7,get db(){return new Fl(1)},renderer:Wwe,styles:H7,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var Qwe={};vr(Qwe,{diagram:()=>_lt});var _lt,Zwe=I(()=>{"use strict";Zq();W7();dU();fU();_lt={parser:P7,get db(){return new Fl(2)},renderer:Pwe,styles:H7,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var gU,t5e,r5e=I(()=>{"use strict";gU=(function(){var t=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),e=[6,8,10,11,12,14,16,17,18],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,14],u={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:o(function(p,m,g,y,v,x,b){var T=x.length-1;switch(v){case 1:return x[T-1];case 2:this.$=[];break;case 3:x[T-1].push(x[T]),this.$=x[T-1];break;case 4:case 5:this.$=x[T];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(x[T].substr(6)),this.$=x[T].substr(6);break;case 9:this.$=x[T].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=x[T].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(x[T].substr(8)),this.$=x[T].substr(8);break;case 13:y.addTask(x[T-1],x[T]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:o(function(p,m){if(m.recoverable)this.trace(p);else{var g=new Error(p);throw g.hash=m,g}},"parseError"),parse:o(function(p){var m=this,g=[0],y=[],v=[null],x=[],b=this.table,T="",E=0,w=0,k=0,C=2,D=1,R=x.slice.call(arguments,1),O=Object.create(this.lexer),L={yy:{}};for(var S in this.yy)Object.prototype.hasOwnProperty.call(this.yy,S)&&(L.yy[S]=this.yy[S]);O.setInput(p,L.yy),L.yy.lexer=O,L.yy.parser=this,typeof O.yylloc>"u"&&(O.yylloc={});var A=O.yylloc;x.push(A);var _=O.options&&O.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(re){g.length=g.length-2*re,v.length=v.length-re,x.length=x.length-re}o(N,"popStack");function M(){var re;return re=y.pop()||O.lex()||D,typeof re!="number"&&(re instanceof Array&&(y=re,re=y.pop()),re=m.symbols_[re]||re),re}o(M,"lex");for(var P,B,F,G,$,V,K={},ee,H,he,Z;;){if(F=g[g.length-1],this.defaultActions[F]?G=this.defaultActions[F]:((P===null||typeof P>"u")&&(P=M()),G=b[F]&&b[F][P]),typeof G>"u"||!G.length||!G[0]){var de="";Z=[];for(ee in b[F])this.terminals_[ee]&&ee>C&&Z.push("'"+this.terminals_[ee]+"'");O.showPosition?de="Parse error on line "+(E+1)+`: +`+O.showPosition()+` +Expecting `+Z.join(", ")+", got '"+(this.terminals_[P]||P)+"'":de="Parse error on line "+(E+1)+": Unexpected "+(P==D?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(de,{text:O.match,token:this.terminals_[P]||P,line:O.yylineno,loc:A,expected:Z})}if(G[0]instanceof Array&&G.length>1)throw new Error("Parse Error: multiple actions possible at state: "+F+", token: "+P);switch(G[0]){case 1:g.push(P),v.push(O.yytext),x.push(O.yylloc),g.push(G[1]),P=null,B?(P=B,B=null):(w=O.yyleng,T=O.yytext,E=O.yylineno,A=O.yylloc,k>0&&k--);break;case 2:if(H=this.productions_[G[1]][1],K.$=v[v.length-H],K._$={first_line:x[x.length-(H||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(H||1)].first_column,last_column:x[x.length-1].last_column},_&&(K._$.range=[x[x.length-(H||1)].range[0],x[x.length-1].range[1]]),V=this.performAction.apply(K,[T,w,E,L.yy,G[1],v,x].concat(R)),typeof V<"u")return V;H&&(g=g.slice(0,-1*H*2),v=v.slice(0,-1*H),x=x.slice(0,-1*H)),g.push(this.productions_[G[1]][0]),v.push(K.$),x.push(K._$),he=b[g[g.length-2]][g[g.length-1]],g.push(he);break;case 3:return!0}}return!0},"parse")},h=(function(){var d={EOF:1,parseError:o(function(m,g){if(this.yy.parser)this.yy.parser.parseError(m,g);else throw new Error(m)},"parseError"),setInput:o(function(p,m){return this.yy=m||this.yy||{},this._input=p,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},"input"),unput:o(function(p){var m=p.length,g=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var v=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===y.length?this.yylloc.first_column:0)+y[y.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(p){this.unput(this.match.slice(p))},"less"),pastInput:o(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var p=this.match;return p.length<20&&(p+=this._input.substr(0,20-p.length)),(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var p=this.pastInput(),m=new Array(p.length+1).join("-");return p+this.upcomingInput()+` `+m+"^"},"showPosition"),test_match:o(function(p,m){var g,y,v;if(this.options.backtrack_lexer&&(v={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(v.yylloc.range=this.yylloc.range.slice(0))),y=p[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(p[0].length),this.matched+=p[0],g=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),g)return g;if(this._backtrack){for(var x in v)this[x]=v[x];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var p,m,g,y;this._more||(this.yytext="",this.match="");for(var v=this._currentRules(),x=0;xm[0].length)){if(m=g,y=x,this.options.backtrack_lexer){if(p=this.test_match(g,v[x]),p!==!1)return p;if(this._backtrack){m=!1;continue}else return!1}else if(!this.options.flex)break}return m?(p=this.test_match(m,v[y]),p!==!1?p:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var m=this.next();return m||this.lex()},"lex"),begin:o(function(m){this.conditionStack.push(m)},"begin"),popState:o(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:o(function(m){this.begin(m)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(m,g,y,v){var x=v;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return d})();u.lexer=h;function f(){this.yy={}}return o(f,"Parser"),f.prototype=u,u.Parser=f,new f})();N$.parser=N$;jve=N$});var uy,M$,C4,A4,Iet,Oet,Pet,Bet,Fet,$et,zet,Qve,Get,I$,Zve=M(()=>{"use strict";Xt();ci();uy="",M$=[],C4=[],A4=[],Iet=o(function(){M$.length=0,C4.length=0,uy="",A4.length=0,Sr()},"clear"),Oet=o(function(t){uy=t,M$.push(t)},"addSection"),Pet=o(function(){return M$},"getSections"),Bet=o(function(){let t=Qve(),e=100,r=0;for(;!t&&r{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},"updateActors"),$et=o(function(t,e){let r=e.substr(1).split(":"),n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));let a=i.map(l=>l.trim()),s={section:uy,type:uy,people:a,task:t,score:n};A4.push(s)},"addTask"),zet=o(function(t){let e={section:uy,type:uy,description:t,task:t,classes:[]};C4.push(e)},"addTaskOrg"),Qve=o(function(){let t=o(function(r){return A4[r].processed},"compileTask"),e=!0;for(let[r,n]of A4.entries())t(r),e=e&&n.processed;return e},"compileTasks"),Get=o(function(){return Fet()},"getActors"),I$={getConfig:o(()=>ge().journey,"getConfig"),clear:Iet,setDiagramTitle:$r,getDiagramTitle:Pr,setAccTitle:Rr,getAccTitle:Mr,setAccDescription:Ir,getAccDescription:Or,addSection:Oet,getSections:Pet,getTasks:Bet,addTask:$et,addTaskOrg:zet,getActors:Get}});var Vet,Jve,e2e=M(()=>{"use strict";yg();Vet=o(t=>`.label { +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var m=this.next();return m||this.lex()},"lex"),begin:o(function(m){this.conditionStack.push(m)},"begin"),popState:o(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:o(function(m){this.begin(m)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(m,g,y,v){var x=v;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return d})();u.lexer=h;function f(){this.yy={}}return o(f,"Parser"),f.prototype=u,u.Parser=f,new f})();gU.parser=gU;t5e=gU});var Mv,yU,l3,c3,Nlt,Mlt,Ilt,Olt,Plt,Blt,Flt,n5e,$lt,vU,i5e=I(()=>{"use strict";Qt();ki();Mv="",yU=[],l3=[],c3=[],Nlt=o(function(){yU.length=0,l3.length=0,Mv="",c3.length=0,Mr()},"clear"),Mlt=o(function(t){Mv=t,yU.push(t)},"addSection"),Ilt=o(function(){return yU},"getSections"),Olt=o(function(){let t=n5e(),e=100,r=0;for(;!t&&r{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},"updateActors"),Blt=o(function(t,e){let r=e.substr(1).split(":"),n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));let a=i.map(l=>l.trim()),s={section:Mv,type:Mv,people:a,task:t,score:n};c3.push(s)},"addTask"),Flt=o(function(t){let e={section:Mv,type:Mv,description:t,task:t,classes:[]};l3.push(e)},"addTaskOrg"),n5e=o(function(){let t=o(function(r){return c3[r].processed},"compileTask"),e=!0;for(let[r,n]of c3.entries())t(r),e=e&&n.processed;return e},"compileTasks"),$lt=o(function(){return Plt()},"getActors"),vU={getConfig:o(()=>xe().journey,"getConfig"),clear:Nlt,setDiagramTitle:Xr,getDiagramTitle:Wr,setAccTitle:zr,getAccTitle:Vr,setAccDescription:qr,getAccDescription:Ur,addSection:Mlt,getSections:Ilt,getTasks:Olt,addTask:Blt,addTaskOrg:Flt,getActors:$lt}});var zlt,a5e,s5e=I(()=>{"use strict";ey();zlt=o(t=>`.label { font-family: ${t.fontFamily}; color: ${t.textColor}; } @@ -2290,13 +2322,13 @@ Expecting `+Q.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ue="Parse error o .actor-5 { ${t.actor5?`fill: ${t.actor5}`:""}; } - ${zc()} -`,"getStyles"),Jve=Vet});var O$,Uet,r2e,n2e,Het,qet,t2e,Wet,Yet,i2e,Xet,hy,a2e=M(()=>{"use strict";yr();n2();O$=o(function(t,e){return Fd(t,e)},"drawRect"),Uet=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Sl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=Sl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),r2e=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),n2e=o(function(t,e){return kj(t,e)},"drawText"),Het=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,n2e(t,e)},"drawLabel"),qet=o(function(t,e,r){let n=t.append("g"),i=ha();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width*e.taskCount+r.diagramMarginX*(e.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,O$(n,i),i2e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),t2e=-1,Wet=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");t2e++,i.append("line").attr("id","task"+t2e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Uet(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=ha();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,O$(i,s);let l=e.x+14;e.people.forEach(u=>{let h=e.actors[u].color,f={cx:l,cy:e.y,r:7,fill:h,stroke:"#000",title:u,pos:e.actors[u].position};r2e(i,f),l+=10}),i2e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),Yet=o(function(t,e){oT(t,e)},"drawBackgroundRect"),i2e=(function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{let a=lh[i].color,s={cx:20,cy:n,r:7,fill:a,stroke:"#000",pos:lh[i].position};hy.drawCircle(t,s);let l=t.append("text").attr("visibility","hidden").text(i),u=l.node().getBoundingClientRect().width;l.remove();let h=[];if(u<=r)h=[i];else{let f=i.split(" "),d="";l=t.append("text").attr("visibility","hidden"),f.forEach(p=>{let m=d?`${d} ${p}`:p;if(l.text(m),l.node().getBoundingClientRect().width>r){if(d&&h.push(d),d=p,l.text(p),l.node().getBoundingClientRect().width>r){let y="";for(let v of p)y+=v,l.text(y+"-"),l.node().getBoundingClientRect().width>r&&(h.push(y.slice(0,-1)+"-"),y=v);d=y}}else d=m}),d&&h.push(d),l.remove()}h.forEach((f,d)=>{let p={x:40,y:n+7+d*20,fill:"#666",text:f,textMargin:e.boxTextMargin??5},g=hy.drawText(t,p).node().getBoundingClientRect().width;g>vC&&g>e.leftMargin-g&&(vC=g)}),n+=Math.max(20,h.length*20)})}var jet,lh,vC,Hl,Jf,Qet,sl,P$,s2e,Zet,B$,o2e=M(()=>{"use strict";yr();a2e();Xt();Ei();jet=o(function(t){Object.keys(t).forEach(function(r){Hl[r]=t[r]})},"setConf"),lh={},vC=0;o(Ket,"drawActorLegend");Hl=ge().journey,Jf=0,Qet=o(function(t,e,r,n){let i=ge(),a=i.journey.titleColor,s=i.journey.titleFontSize,l=i.journey.titleFontFamily,u=i.securityLevel,h;u==="sandbox"&&(h=qe("#i"+e));let f=u==="sandbox"?qe(h.nodes()[0].contentDocument.body):qe("body");sl.init();let d=f.select("#"+e);hy.initGraphics(d);let p=n.db.getTasks(),m=n.db.getDiagramTitle(),g=n.db.getActors();for(let S in lh)delete lh[S];let y=0;g.forEach(S=>{lh[S]={color:Hl.actorColours[y%Hl.actorColours.length],position:y},y++}),Ket(d),Jf=Hl.leftMargin+vC,sl.insert(0,0,Jf,Object.keys(lh).length*50),Zet(d,p,0);let v=sl.getBounds();m&&d.append("text").text(m).attr("x",Jf).attr("font-size",s).attr("font-weight","bold").attr("y",25).attr("fill",a).attr("font-family",l);let x=v.stopy-v.starty+2*Hl.diagramMarginY,b=Jf+v.stopx+2*Hl.diagramMarginX;mn(d,x,b,Hl.useMaxWidth),d.append("line").attr("x1",Jf).attr("y1",Hl.height*4).attr("x2",b-Jf-4).attr("y2",Hl.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let T=m?70:0;d.attr("viewBox",`${v.startx} -25 ${b} ${x+T}`),d.attr("preserveAspectRatio","xMinYMin meet"),d.attr("height",x+T+25)},"draw"),sl={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=ge().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal(sl.data,"startx",t-d*i.boxMargin,Math.min),a.updateVal(sl.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal(sl.data,"starty",e-d*i.boxMargin,Math.min),a.updateVal(sl.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(t,e,r,n){let i=Math.min(t,r),a=Math.max(t,r),s=Math.min(e,n),l=Math.max(e,n);this.updateVal(sl.data,"startx",i,Math.min),this.updateVal(sl.data,"starty",s,Math.min),this.updateVal(sl.data,"stopx",a,Math.max),this.updateVal(sl.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},P$=Hl.sectionFills,s2e=Hl.sectionColours,Zet=o(function(t,e,r){let n=ge().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of e.entries()){if(i!==p.section){u=P$[l%P$.length],f=l%P$.length,h=s2e[l%s2e.length];let g=0,y=p.section;for(let x=d;x(lh[y]&&(g[y]=lh[y]),g),{});p.x=d*n.taskMargin+d*n.width+Jf,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,hy.drawTask(t,p,n),sl.insert(p.x,p.y,p.x+p.width+n.taskMargin,450)}},"drawTasks"),B$={setConf:jet,draw:Qet}});var l2e={};dr(l2e,{diagram:()=>Jet});var Jet,c2e=M(()=>{"use strict";Kve();Zve();e2e();o2e();Jet={parser:jve,db:I$,renderer:B$,styles:Jve,init:o(t=>{B$.setConf(t.journey),I$.clear()},"init")}});var $$,g2e,y2e=M(()=>{"use strict";$$=(function(){var t=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),e=[6,8,10,11,12,14,16,17,20,21],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,16],u=[1,17],h={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:o(function(m,g,y,v,x,b,T){var S=b.length-1;switch(x){case 1:return b[S-1];case 2:this.$=[];break;case 3:b[S-1].push(b[S]),this.$=b[S-1];break;case 4:case 5:this.$=b[S];break;case 6:case 7:this.$=[];break;case 8:v.getCommonDb().setDiagramTitle(b[S].substr(6)),this.$=b[S].substr(6);break;case 9:this.$=b[S].trim(),v.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[S].trim(),v.getCommonDb().setAccDescription(this.$);break;case 12:v.addSection(b[S].substr(8)),this.$=b[S].substr(8);break;case 15:v.addTask(b[S],0,""),this.$=b[S];break;case 16:v.addEvent(b[S].substr(2)),this.$=b[S];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,19]},{15:[1,20]},t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,4]),t(e,[2,9]),t(e,[2,10])],defaultActions:{},parseError:o(function(m,g){if(g.recoverable)this.trace(m);else{var y=new Error(m);throw y.hash=g,y}},"parseError"),parse:o(function(m){var g=this,y=[0],v=[],x=[null],b=[],T=this.table,S="",w=0,k=0,C=0,A=2,L=1,I=b.slice.call(arguments,1),R=Object.create(this.lexer),E={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(E.yy[_]=this.yy[_]);R.setInput(m,E.yy),E.yy.lexer=R,E.yy.parser=this,typeof R.yylloc>"u"&&(R.yylloc={});var D=R.yylloc;b.push(D);var O=R.options&&R.options.ranges;typeof E.yy.parseError=="function"?this.parseError=E.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(re){y.length=y.length-2*re,x.length=x.length-re,b.length=b.length-re}o(N,"popStack");function P(){var re;return re=v.pop()||R.lex()||L,typeof re!="number"&&(re instanceof Array&&(v=re,re=v.pop()),re=g.symbols_[re]||re),re}o(P,"lex");for(var B,F,V,$,U,j,ee={},q,oe,Q,ue;;){if(V=y[y.length-1],this.defaultActions[V]?$=this.defaultActions[V]:((B===null||typeof B>"u")&&(B=P()),$=T[V]&&T[V][B]),typeof $>"u"||!$.length||!$[0]){var te="";ue=[];for(q in T[V])this.terminals_[q]&&q>A&&ue.push("'"+this.terminals_[q]+"'");R.showPosition?te="Parse error on line "+(w+1)+`: -`+R.showPosition()+` -Expecting `+ue.join(", ")+", got '"+(this.terminals_[B]||B)+"'":te="Parse error on line "+(w+1)+": Unexpected "+(B==L?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(te,{text:R.match,token:this.terminals_[B]||B,line:R.yylineno,loc:D,expected:ue})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+B);switch($[0]){case 1:y.push(B),x.push(R.yytext),b.push(R.yylloc),y.push($[1]),B=null,F?(B=F,F=null):(k=R.yyleng,S=R.yytext,w=R.yylineno,D=R.yylloc,C>0&&C--);break;case 2:if(oe=this.productions_[$[1]][1],ee.$=x[x.length-oe],ee._$={first_line:b[b.length-(oe||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(oe||1)].first_column,last_column:b[b.length-1].last_column},O&&(ee._$.range=[b[b.length-(oe||1)].range[0],b[b.length-1].range[1]]),j=this.performAction.apply(ee,[S,k,w,E.yy,$[1],x,b].concat(I)),typeof j<"u")return j;oe&&(y=y.slice(0,-1*oe*2),x=x.slice(0,-1*oe),b=b.slice(0,-1*oe)),y.push(this.productions_[$[1]][0]),x.push(ee.$),b.push(ee._$),Q=T[y[y.length-2]][y[y.length-1]],y.push(Q);break;case 3:return!0}}return!0},"parse")},f=(function(){var p={EOF:1,parseError:o(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:o(function(m,g){return this.yy=g||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var g=m.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:o(function(m){var g=m.length,y=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var v=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var x=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:y?(y.length===v.length?this.yylloc.first_column:0)+v[v.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). + ${Su()} +`,"getStyles"),a5e=zlt});var xU,Glt,l5e,c5e,Vlt,qlt,o5e,Ult,Wlt,u5e,Hlt,Iv,h5e=I(()=>{"use strict";kr();Cx();xU=o(function(t,e){return t0(t,e)},"drawRect"),Glt=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=ic().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=ic().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),l5e=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),c5e=o(function(t,e){return oee(t,e)},"drawText"),Vlt=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,c5e(t,e)},"drawLabel"),qlt=o(function(t,e,r){let n=t.append("g"),i=Na();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width*e.taskCount+r.diagramMarginX*(e.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,xU(n,i),u5e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),o5e=-1,Ult=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");o5e++,i.append("line").attr("id","task"+o5e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Glt(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=Na();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,xU(i,s);let l=e.x+14;e.people.forEach(u=>{let h=e.actors[u].color,f={cx:l,cy:e.y,r:7,fill:h,stroke:"#000",title:u,pos:e.actors[u].position};l5e(i,f),l+=10}),u5e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),Wlt=o(function(t,e){U5(t,e)},"drawBackgroundRect"),u5e=(function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{let a=rf[i].color,s={cx:20,cy:n,r:7,fill:a,stroke:"#000",pos:rf[i].position};Iv.drawCircle(t,s);let l=t.append("text").attr("visibility","hidden").text(i),u=l.node().getBoundingClientRect().width;l.remove();let h=[];if(u<=r)h=[i];else{let f=i.split(" "),d="";l=t.append("text").attr("visibility","hidden"),f.forEach(p=>{let m=d?`${d} ${p}`:p;if(l.text(m),l.node().getBoundingClientRect().width>r){if(d&&h.push(d),d=p,l.text(p),l.node().getBoundingClientRect().width>r){let y="";for(let v of p)y+=v,l.text(y+"-"),l.node().getBoundingClientRect().width>r&&(h.push(y.slice(0,-1)+"-"),y=v);d=y}}else d=m}),d&&h.push(d),l.remove()}h.forEach((f,d)=>{let p={x:40,y:n+7+d*20,fill:"#666",text:f,textMargin:e.boxTextMargin??5},g=Iv.drawText(t,p).node().getBoundingClientRect().width;g>Y7&&g>e.leftMargin-g&&(Y7=g)}),n+=Math.max(20,h.length*20)})}var Ylt,rf,Y7,_c,gp,Xlt,$l,bU,f5e,Klt,TU,d5e=I(()=>{"use strict";kr();h5e();Qt();Fi();Ylt=o(function(t){Object.keys(t).forEach(function(r){_c[r]=t[r]})},"setConf"),rf={},Y7=0;o(jlt,"drawActorLegend");_c=xe().journey,gp=0,Xlt=o(function(t,e,r,n){let i=xe(),a=i.journey.titleColor,s=i.journey.titleFontSize,l=i.journey.titleFontFamily,u=i.securityLevel,h;u==="sandbox"&&(h=He("#i"+e));let f=u==="sandbox"?He(h.nodes()[0].contentDocument.body):He("body");$l.init();let d=f.select("#"+e);Iv.initGraphics(d);let p=n.db.getTasks(),m=n.db.getDiagramTitle(),g=n.db.getActors();for(let E in rf)delete rf[E];let y=0;g.forEach(E=>{rf[E]={color:_c.actorColours[y%_c.actorColours.length],position:y},y++}),jlt(d),gp=_c.leftMargin+Y7,$l.insert(0,0,gp,Object.keys(rf).length*50),Klt(d,p,0);let v=$l.getBounds();m&&d.append("text").text(m).attr("x",gp).attr("font-size",s).attr("font-weight","bold").attr("y",25).attr("fill",a).attr("font-family",l);let x=v.stopy-v.starty+2*_c.diagramMarginY,b=gp+v.stopx+2*_c.diagramMarginX;Sn(d,x,b,_c.useMaxWidth),d.append("line").attr("x1",gp).attr("y1",_c.height*4).attr("x2",b-gp-4).attr("y2",_c.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let T=m?70:0;d.attr("viewBox",`${v.startx} -25 ${b} ${x+T}`),d.attr("preserveAspectRatio","xMinYMin meet"),d.attr("height",x+T+25)},"draw"),$l={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=xe().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal($l.data,"startx",t-d*i.boxMargin,Math.min),a.updateVal($l.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal($l.data,"starty",e-d*i.boxMargin,Math.min),a.updateVal($l.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(t,e,r,n){let i=Math.min(t,r),a=Math.max(t,r),s=Math.min(e,n),l=Math.max(e,n);this.updateVal($l.data,"startx",i,Math.min),this.updateVal($l.data,"starty",s,Math.min),this.updateVal($l.data,"stopx",a,Math.max),this.updateVal($l.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},bU=_c.sectionFills,f5e=_c.sectionColours,Klt=o(function(t,e,r){let n=xe().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of e.entries()){if(i!==p.section){u=bU[l%bU.length],f=l%bU.length,h=f5e[l%f5e.length];let g=0,y=p.section;for(let x=d;x(rf[y]&&(g[y]=rf[y]),g),{});p.x=d*n.taskMargin+d*n.width+gp,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,Iv.drawTask(t,p,n),$l.insert(p.x,p.y,p.x+p.width+n.taskMargin,450)}},"drawTasks"),TU={setConf:Ylt,draw:Xlt}});var p5e={};vr(p5e,{diagram:()=>Qlt});var Qlt,m5e=I(()=>{"use strict";r5e();i5e();s5e();d5e();Qlt={parser:t5e,db:vU,renderer:TU,styles:a5e,init:o(t=>{TU.setConf(t.journey),vU.clear()},"init")}});var kU,w5e,k5e=I(()=>{"use strict";kU=(function(){var t=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),e=[6,8,10,11,12,14,16,17,20,21],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,16],u=[1,17],h={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:o(function(m,g,y,v,x,b,T){var E=b.length-1;switch(x){case 1:return b[E-1];case 2:this.$=[];break;case 3:b[E-1].push(b[E]),this.$=b[E-1];break;case 4:case 5:this.$=b[E];break;case 6:case 7:this.$=[];break;case 8:v.getCommonDb().setDiagramTitle(b[E].substr(6)),this.$=b[E].substr(6);break;case 9:this.$=b[E].trim(),v.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[E].trim(),v.getCommonDb().setAccDescription(this.$);break;case 12:v.addSection(b[E].substr(8)),this.$=b[E].substr(8);break;case 15:v.addTask(b[E],0,""),this.$=b[E];break;case 16:v.addEvent(b[E].substr(2)),this.$=b[E];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,19]},{15:[1,20]},t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,4]),t(e,[2,9]),t(e,[2,10])],defaultActions:{},parseError:o(function(m,g){if(g.recoverable)this.trace(m);else{var y=new Error(m);throw y.hash=g,y}},"parseError"),parse:o(function(m){var g=this,y=[0],v=[],x=[null],b=[],T=this.table,E="",w=0,k=0,C=0,D=2,R=1,O=b.slice.call(arguments,1),L=Object.create(this.lexer),S={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&(S.yy[A]=this.yy[A]);L.setInput(m,S.yy),S.yy.lexer=L,S.yy.parser=this,typeof L.yylloc>"u"&&(L.yylloc={});var _=L.yylloc;b.push(_);var N=L.options&&L.options.ranges;typeof S.yy.parseError=="function"?this.parseError=S.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function M(ne){y.length=y.length-2*ne,x.length=x.length-ne,b.length=b.length-ne}o(M,"popStack");function P(){var ne;return ne=v.pop()||L.lex()||R,typeof ne!="number"&&(ne instanceof Array&&(v=ne,ne=v.pop()),ne=g.symbols_[ne]||ne),ne}o(P,"lex");for(var B,F,G,$,V,K,ee={},H,he,Z,de;;){if(G=y[y.length-1],this.defaultActions[G]?$=this.defaultActions[G]:((B===null||typeof B>"u")&&(B=P()),$=T[G]&&T[G][B]),typeof $>"u"||!$.length||!$[0]){var re="";de=[];for(H in T[G])this.terminals_[H]&&H>D&&de.push("'"+this.terminals_[H]+"'");L.showPosition?re="Parse error on line "+(w+1)+`: +`+L.showPosition()+` +Expecting `+de.join(", ")+", got '"+(this.terminals_[B]||B)+"'":re="Parse error on line "+(w+1)+": Unexpected "+(B==R?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(re,{text:L.match,token:this.terminals_[B]||B,line:L.yylineno,loc:_,expected:de})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+G+", token: "+B);switch($[0]){case 1:y.push(B),x.push(L.yytext),b.push(L.yylloc),y.push($[1]),B=null,F?(B=F,F=null):(k=L.yyleng,E=L.yytext,w=L.yylineno,_=L.yylloc,C>0&&C--);break;case 2:if(he=this.productions_[$[1]][1],ee.$=x[x.length-he],ee._$={first_line:b[b.length-(he||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(he||1)].first_column,last_column:b[b.length-1].last_column},N&&(ee._$.range=[b[b.length-(he||1)].range[0],b[b.length-1].range[1]]),K=this.performAction.apply(ee,[E,k,w,S.yy,$[1],x,b].concat(O)),typeof K<"u")return K;he&&(y=y.slice(0,-1*he*2),x=x.slice(0,-1*he),b=b.slice(0,-1*he)),y.push(this.productions_[$[1]][0]),x.push(ee.$),b.push(ee._$),Z=T[y[y.length-2]][y[y.length-1]],y.push(Z);break;case 3:return!0}}return!0},"parse")},f=(function(){var p={EOF:1,parseError:o(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:o(function(m,g){return this.yy=g||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var g=m.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:o(function(m){var g=m.length,y=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var v=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var x=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:y?(y.length===v.length?this.yylloc.first_column:0)+v[v.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(m){this.unput(this.match.slice(m))},"less"),pastInput:o(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var m=this.pastInput(),g=new Array(m.length+1).join("-");return m+this.upcomingInput()+` `+g+"^"},"showPosition"),test_match:o(function(m,g){var y,v,x;if(this.options.backtrack_lexer&&(x={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(x.yylloc.range=this.yylloc.range.slice(0))),v=m[0].match(/(?:\r\n?|\n).*/g),v&&(this.yylineno+=v.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],y=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var b in x)this[b]=x[b];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var m,g,y,v;this._more||(this.yytext="",this.match="");for(var x=this._currentRules(),b=0;bg[0].length)){if(g=y,v=b,this.options.backtrack_lexer){if(m=this.test_match(y,x[b]),m!==!1)return m;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(m=this.test_match(g,x[v]),m!==!1?m:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var g=this.next();return g||this.lex()},"lex"),begin:o(function(g){this.conditionStack.push(g)},"begin"),popState:o(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:o(function(g){this.begin(g)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(g,y,v,x){var b=x;switch(v){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return p})();h.lexer=f;function d(){this.yy={}}return o(d,"Parser"),d.prototype=h,h.Parser=d,new d})();$$.parser=$$;g2e=$$});var G$={};dr(G$,{addEvent:()=>C2e,addSection:()=>w2e,addTask:()=>S2e,addTaskOrg:()=>A2e,clear:()=>T2e,default:()=>ltt,getCommonDb:()=>b2e,getSections:()=>k2e,getTasks:()=>E2e});var fy,x2e,z$,xC,dy,b2e,T2e,w2e,k2e,E2e,S2e,C2e,A2e,v2e,ltt,_2e=M(()=>{"use strict";ci();fy="",x2e=0,z$=[],xC=[],dy=[],b2e=o(()=>nv,"getCommonDb"),T2e=o(function(){z$.length=0,xC.length=0,fy="",dy.length=0,Sr()},"clear"),w2e=o(function(t){fy=t,z$.push(t)},"addSection"),k2e=o(function(){return z$},"getSections"),E2e=o(function(){let t=v2e(),e=100,r=0;for(;!t&&rr.id===x2e-1).events.push(t)},"addEvent"),A2e=o(function(t){let e={section:fy,type:fy,description:t,task:t,classes:[]};xC.push(e)},"addTaskOrg"),v2e=o(function(){let t=o(function(r){return dy[r].processed},"compileTask"),e=!0;for(let[r,n]of dy.entries())t(r),e=e&&n.processed;return e},"compileTasks"),ltt={clear:T2e,getCommonDb:b2e,addSection:w2e,getSections:k2e,getTasks:E2e,addTask:S2e,addTaskOrg:A2e,addEvent:C2e}});function N2e(t,e){t.each(function(){var r=qe(this),n=r.text().split(/(\s+|
    )/).reverse(),i,a=[],s=1.1,l=r.attr("y"),u=parseFloat(r.attr("dy")),h=r.text(null).append("tspan").attr("x",0).attr("y",l).attr("dy",u+"em");for(let f=0;fe||i==="
    ")&&(a.pop(),h.text(a.join(" ").trim()),i==="
    "?a=[""]:a=[i],h=r.append("tspan").attr("x",0).attr("y",l).attr("dy",s+"em").text(i))})}var ctt,bC,utt,htt,L2e,ftt,dtt,D2e,ptt,mtt,gtt,V$,R2e,ytt,vtt,xtt,btt,ed,M2e=M(()=>{"use strict";yr();ctt=12,bC=o(function(t,e){let r=t.append("rect");return r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),r.attr("rx",e.rx),r.attr("ry",e.ry),e.class!==void 0&&r.attr("class",e.class),r},"drawRect"),utt=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Sl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=Sl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),htt=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),L2e=o(function(t,e){let r=e.text.replace(//gi," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class!==void 0&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),ftt=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,L2e(t,e)},"drawLabel"),dtt=o(function(t,e,r){let n=t.append("g"),i=V$();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,bC(n,i),R2e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),D2e=-1,ptt=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");D2e++,i.append("line").attr("id","task"+D2e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),utt(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=V$();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,bC(i,s),R2e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),mtt=o(function(t,e){bC(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),gtt=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),V$=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),R2e=(function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{"use strict";yr();M2e();pt();Xt();Ei();Ttt=o(function(t,e,r,n){let i=ge(),a=i.timeline?.leftMargin??50;X.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=qe("#i"+e));let h=(s==="sandbox"?qe(l.nodes()[0].contentDocument.body):qe("body")).select("#"+e);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();X.debug("task",f),ed.initGraphics(h);let p=n.db.getSections();X.debug("sections",p);let m=0,g=0,y=0,v=0,x=50+a,b=50;v=50;let T=0,S=!0;p.forEach(function(L){let I={number:T,descr:L,section:T,width:150,padding:20,maxHeight:m},R=ed.getVirtualNodeHeight(h,I,i);X.debug("sectionHeight before draw",R),m=Math.max(m,R+20)});let w=0,k=0;X.debug("tasks.length",f.length);for(let[L,I]of f.entries()){let R={number:L,descr:I,section:I.section,width:150,padding:20,maxHeight:g},E=ed.getVirtualNodeHeight(h,R,i);X.debug("taskHeight before draw",E),g=Math.max(g,E+20),w=Math.max(w,I.events.length);let _=0;for(let D of I.events){let O={descr:D,section:I.section,number:I.section,width:150,padding:20,maxHeight:50};_+=ed.getVirtualNodeHeight(h,O,i)}I.events.length>0&&(_+=(I.events.length-1)*10),k=Math.max(k,_)}X.debug("maxSectionHeight before draw",m),X.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(L=>{let I=f.filter(D=>D.section===L),R={number:T,descr:L,section:T,width:200*Math.max(I.length,1)-50,padding:20,maxHeight:m};X.debug("sectionNode",R);let E=h.append("g"),_=ed.drawNode(E,R,T,i);X.debug("sectionNode output",_),E.attr("transform",`translate(${x}, ${v})`),b+=m+50,I.length>0&&I2e(h,I,T,x,b,g,i,w,k,m,!1),x+=200*Math.max(I.length,1),b=v,T++}):(S=!1,I2e(h,f,T,x,b,g,i,w,k,m,!0));let C=h.node().getBBox();X.debug("bounds",C),d&&h.append("text").text(d).attr("x",C.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=S?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",C.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),ic(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),I2e=o(function(t,e,r,n,i,a,s,l,u,h,f){for(let d of e){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};X.debug("taskNode",p);let m=t.append("g").attr("class","taskWrapper"),y=ed.drawNode(m,p,r,s).height;if(X.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let v=t.append("g").attr("class","lineWrapper"),x=a;i+=100,x=x+wtt(t,d.events,r,n,i,s),i-=100,v.append("line").attr("x1",n+190/2).attr("y1",i+a).attr("x2",n+190/2).attr("y2",i+a+100+u+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}n=n+200,f&&!s.timeline?.disableMulticolor&&r++}i=i-10},"drawTasks"),wtt=o(function(t,e,r,n,i,a){let s=0,l=i;i=i+100;for(let u of e){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};X.debug("eventNode",h);let f=t.append("g").attr("class","eventWrapper"),p=ed.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),O2e={setConf:o(()=>{},"setConf"),draw:Ttt}});var ktt,Ett,B2e,F2e=M(()=>{"use strict";eo();ktt=o(t=>{let e="";for(let r=0;r0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:o(function(g){this.begin(g)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(g,y,v,x){var b=x;switch(v){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return p})();h.lexer=f;function d(){this.yy={}}return o(d,"Parser"),d.prototype=h,h.Parser=d,new d})();kU.parser=kU;w5e=kU});var EU={};vr(EU,{addEvent:()=>N5e,addSection:()=>_5e,addTask:()=>L5e,addTaskOrg:()=>M5e,clear:()=>A5e,default:()=>sct,getCommonDb:()=>C5e,getSections:()=>D5e,getTasks:()=>R5e});var Ov,E5e,SU,j7,Pv,C5e,A5e,_5e,D5e,R5e,L5e,N5e,M5e,S5e,sct,I5e=I(()=>{"use strict";ki();Ov="",E5e=0,SU=[],j7=[],Pv=[],C5e=o(()=>C2,"getCommonDb"),A5e=o(function(){SU.length=0,j7.length=0,Ov="",Pv.length=0,Mr()},"clear"),_5e=o(function(t){Ov=t,SU.push(t)},"addSection"),D5e=o(function(){return SU},"getSections"),R5e=o(function(){let t=S5e(),e=100,r=0;for(;!t&&rr.id===E5e-1).events.push(t)},"addEvent"),M5e=o(function(t){let e={section:Ov,type:Ov,description:t,task:t,classes:[]};j7.push(e)},"addTaskOrg"),S5e=o(function(){let t=o(function(r){return Pv[r].processed},"compileTask"),e=!0;for(let[r,n]of Pv.entries())t(r),e=e&&n.processed;return e},"compileTasks"),sct={clear:A5e,getCommonDb:C5e,addSection:_5e,getSections:D5e,getTasks:R5e,addTask:L5e,addTaskOrg:M5e,addEvent:N5e}});function F5e(t,e){t.each(function(){var r=He(this),n=r.text().split(/(\s+|
    )/).reverse(),i,a=[],s=1.1,l=r.attr("y"),u=parseFloat(r.attr("dy")),h=r.text(null).append("tspan").attr("x",0).attr("y",l).attr("dy",u+"em");for(let f=0;fe||i==="
    ")&&(a.pop(),h.text(a.join(" ").trim()),i==="
    "?a=[""]:a=[i],h=r.append("tspan").attr("x",0).attr("y",l).attr("dy",s+"em").text(i))})}var oct,X7,lct,cct,P5e,uct,hct,O5e,fct,dct,pct,CU,B5e,mct,gct,yct,vct,yp,$5e=I(()=>{"use strict";kr();oct=12,X7=o(function(t,e){let r=t.append("rect");return r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),r.attr("rx",e.rx),r.attr("ry",e.ry),e.class!==void 0&&r.attr("class",e.class),r},"drawRect"),lct=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=ic().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=ic().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),cct=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),P5e=o(function(t,e){let r=e.text.replace(//gi," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class!==void 0&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),uct=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,P5e(t,e)},"drawLabel"),hct=o(function(t,e,r){let n=t.append("g"),i=CU();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,X7(n,i),B5e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),O5e=-1,fct=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");O5e++,i.append("line").attr("id","task"+O5e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),lct(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=CU();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,X7(i,s),B5e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),dct=o(function(t,e){X7(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),pct=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),CU=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),B5e=(function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{"use strict";kr();$5e();gt();Qt();Fi();xct=o(function(t,e,r,n){let i=xe(),a=i.timeline?.leftMargin??50;X.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=He("#i"+e));let h=(s==="sandbox"?He(l.nodes()[0].contentDocument.body):He("body")).select("#"+e);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();X.debug("task",f),yp.initGraphics(h);let p=n.db.getSections();X.debug("sections",p);let m=0,g=0,y=0,v=0,x=50+a,b=50;v=50;let T=0,E=!0;p.forEach(function(R){let O={number:T,descr:R,section:T,width:150,padding:20,maxHeight:m},L=yp.getVirtualNodeHeight(h,O,i);X.debug("sectionHeight before draw",L),m=Math.max(m,L+20)});let w=0,k=0;X.debug("tasks.length",f.length);for(let[R,O]of f.entries()){let L={number:R,descr:O,section:O.section,width:150,padding:20,maxHeight:g},S=yp.getVirtualNodeHeight(h,L,i);X.debug("taskHeight before draw",S),g=Math.max(g,S+20),w=Math.max(w,O.events.length);let A=0;for(let _ of O.events){let N={descr:_,section:O.section,number:O.section,width:150,padding:20,maxHeight:50};A+=yp.getVirtualNodeHeight(h,N,i)}O.events.length>0&&(A+=(O.events.length-1)*10),k=Math.max(k,A)}X.debug("maxSectionHeight before draw",m),X.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(R=>{let O=f.filter(_=>_.section===R),L={number:T,descr:R,section:T,width:200*Math.max(O.length,1)-50,padding:20,maxHeight:m};X.debug("sectionNode",L);let S=h.append("g"),A=yp.drawNode(S,L,T,i);X.debug("sectionNode output",A),S.attr("transform",`translate(${x}, ${v})`),b+=m+50,O.length>0&&z5e(h,O,T,x,b,g,i,w,k,m,!1),x+=200*Math.max(O.length,1),b=v,T++}):(E=!1,z5e(h,f,T,x,b,g,i,w,k,m,!0));let C=h.node().getBBox();X.debug("bounds",C),d&&h.append("text").text(d).attr("x",C.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=E?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",C.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),Vc(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),z5e=o(function(t,e,r,n,i,a,s,l,u,h,f){for(let d of e){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};X.debug("taskNode",p);let m=t.append("g").attr("class","taskWrapper"),y=yp.drawNode(m,p,r,s).height;if(X.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let v=t.append("g").attr("class","lineWrapper"),x=a;i+=100,x=x+bct(t,d.events,r,n,i,s),i-=100,v.append("line").attr("x1",n+190/2).attr("y1",i+a).attr("x2",n+190/2).attr("y2",i+a+100+u+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}n=n+200,f&&!s.timeline?.disableMulticolor&&r++}i=i-10},"drawTasks"),bct=o(function(t,e,r,n,i,a){let s=0,l=i;i=i+100;for(let u of e){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};X.debug("eventNode",h);let f=t.append("g").attr("class","eventWrapper"),p=yp.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),G5e={setConf:o(()=>{},"setConf"),draw:xct}});var Tct,wct,q5e,U5e=I(()=>{"use strict";_o();Tct=o(t=>{let e="";for(let r=0;r` + `}return e},"genSections"),wct=o(t=>` .edge { stroke-width: 3; } - ${ktt(t)} + ${Tct(t)} .section-root rect, .section-root path, .section-root circle { fill: ${t.git0}; } @@ -2351,13 +2383,13 @@ Expecting `+ue.join(", ")+", got '"+(this.terminals_[B]||B)+"'":te="Parse error .eventWrapper { filter: brightness(120%); } -`,"getStyles"),B2e=Ett});var $2e={};dr($2e,{diagram:()=>Stt});var Stt,z2e=M(()=>{"use strict";y2e();_2e();P2e();F2e();Stt={db:G$,renderer:O2e,parser:g2e,styles:B2e}});var U$,U2e,H2e=M(()=>{"use strict";U$=(function(){var t=o(function(S,w,k,C){for(k=k||{},C=S.length;C--;k[S[C]]=w);return k},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,6,13,15,16,19,22],g=[1,33],y=[1,34],v=[1,6,7,11,13,15,16,19,22],x={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:o(function(w,k,C,A,L,I,R){var E=I.length-1;switch(L){case 6:case 7:return A;case 8:A.getLogger().trace("Stop NL ");break;case 9:A.getLogger().trace("Stop EOF ");break;case 11:A.getLogger().trace("Stop NL2 ");break;case 12:A.getLogger().trace("Stop EOF2 ");break;case 15:A.getLogger().info("Node: ",I[E].id),A.addNode(I[E-1].length,I[E].id,I[E].descr,I[E].type);break;case 16:A.getLogger().trace("Icon: ",I[E]),A.decorateNode({icon:I[E]});break;case 17:case 21:A.decorateNode({class:I[E]});break;case 18:A.getLogger().trace("SPACELIST");break;case 19:A.getLogger().trace("Node: ",I[E].id),A.addNode(0,I[E].id,I[E].descr,I[E].type);break;case 20:A.decorateNode({icon:I[E]});break;case 25:A.getLogger().trace("node found ..",I[E-2]),this.$={id:I[E-1],descr:I[E-1],type:A.getType(I[E-2],I[E])};break;case 26:this.$={id:I[E],descr:I[E],type:A.nodeType.DEFAULT};break;case 27:A.getLogger().trace("node found ..",I[E-3]),this.$={id:I[E-3],descr:I[E-1],type:A.getType(I[E-2],I[E])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:r,9:22,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:h,7:f,10:23,11:d},t(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),t(p,[2,18]),t(p,[2,19]),t(p,[2,20]),t(p,[2,21]),t(p,[2,23]),t(p,[2,24]),t(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:f,10:32,11:d},{1:[2,7],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(m,[2,14],{7:g,11:y}),t(v,[2,8]),t(v,[2,9]),t(v,[2,10]),t(p,[2,15]),t(p,[2,16]),t(p,[2,17]),{20:[1,35]},{21:[1,36]},t(m,[2,13],{7:g,11:y}),t(v,[2,11]),t(v,[2,12]),{21:[1,37]},t(p,[2,25]),t(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(w,k){if(k.recoverable)this.trace(w);else{var C=new Error(w);throw C.hash=k,C}},"parseError"),parse:o(function(w){var k=this,C=[0],A=[],L=[null],I=[],R=this.table,E="",_=0,D=0,O=0,N=2,P=1,B=I.slice.call(arguments,1),F=Object.create(this.lexer),V={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(V.yy[$]=this.yy[$]);F.setInput(w,V.yy),V.yy.lexer=F,V.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var U=F.yylloc;I.push(U);var j=F.options&&F.options.ranges;typeof V.yy.parseError=="function"?this.parseError=V.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(W){C.length=C.length-2*W,L.length=L.length-W,I.length=I.length-W}o(ee,"popStack");function q(){var W;return W=A.pop()||F.lex()||P,typeof W!="number"&&(W instanceof Array&&(A=W,W=A.pop()),W=k.symbols_[W]||W),W}o(q,"lex");for(var oe,Q,ue,te,re,J,K={},ae,Z,de,ne;;){if(ue=C[C.length-1],this.defaultActions[ue]?te=this.defaultActions[ue]:((oe===null||typeof oe>"u")&&(oe=q()),te=R[ue]&&R[ue][oe]),typeof te>"u"||!te.length||!te[0]){var Te="";ne=[];for(ae in R[ue])this.terminals_[ae]&&ae>N&&ne.push("'"+this.terminals_[ae]+"'");F.showPosition?Te="Parse error on line "+(_+1)+`: +`,"getStyles"),q5e=wct});var W5e={};vr(W5e,{diagram:()=>kct});var kct,H5e=I(()=>{"use strict";k5e();I5e();V5e();U5e();kct={db:EU,renderer:G5e,parser:w5e,styles:q5e}});var AU,X5e,K5e=I(()=>{"use strict";AU=(function(){var t=o(function(E,w,k,C){for(k=k||{},C=E.length;C--;k[E[C]]=w);return k},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,6,13,15,16,19,22],g=[1,33],y=[1,34],v=[1,6,7,11,13,15,16,19,22],x={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:o(function(w,k,C,D,R,O,L){var S=O.length-1;switch(R){case 6:case 7:return D;case 8:D.getLogger().trace("Stop NL ");break;case 9:D.getLogger().trace("Stop EOF ");break;case 11:D.getLogger().trace("Stop NL2 ");break;case 12:D.getLogger().trace("Stop EOF2 ");break;case 15:D.getLogger().info("Node: ",O[S].id),D.addNode(O[S-1].length,O[S].id,O[S].descr,O[S].type);break;case 16:D.getLogger().trace("Icon: ",O[S]),D.decorateNode({icon:O[S]});break;case 17:case 21:D.decorateNode({class:O[S]});break;case 18:D.getLogger().trace("SPACELIST");break;case 19:D.getLogger().trace("Node: ",O[S].id),D.addNode(0,O[S].id,O[S].descr,O[S].type);break;case 20:D.decorateNode({icon:O[S]});break;case 25:D.getLogger().trace("node found ..",O[S-2]),this.$={id:O[S-1],descr:O[S-1],type:D.getType(O[S-2],O[S])};break;case 26:this.$={id:O[S],descr:O[S],type:D.nodeType.DEFAULT};break;case 27:D.getLogger().trace("node found ..",O[S-3]),this.$={id:O[S-3],descr:O[S-1],type:D.getType(O[S-2],O[S])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:r,9:22,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:h,7:f,10:23,11:d},t(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),t(p,[2,18]),t(p,[2,19]),t(p,[2,20]),t(p,[2,21]),t(p,[2,23]),t(p,[2,24]),t(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:f,10:32,11:d},{1:[2,7],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(m,[2,14],{7:g,11:y}),t(v,[2,8]),t(v,[2,9]),t(v,[2,10]),t(p,[2,15]),t(p,[2,16]),t(p,[2,17]),{20:[1,35]},{21:[1,36]},t(m,[2,13],{7:g,11:y}),t(v,[2,11]),t(v,[2,12]),{21:[1,37]},t(p,[2,25]),t(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(w,k){if(k.recoverable)this.trace(w);else{var C=new Error(w);throw C.hash=k,C}},"parseError"),parse:o(function(w){var k=this,C=[0],D=[],R=[null],O=[],L=this.table,S="",A=0,_=0,N=0,M=2,P=1,B=O.slice.call(arguments,1),F=Object.create(this.lexer),G={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(G.yy[$]=this.yy[$]);F.setInput(w,G.yy),G.yy.lexer=F,G.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var V=F.yylloc;O.push(V);var K=F.options&&F.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(j){C.length=C.length-2*j,R.length=R.length-j,O.length=O.length-j}o(ee,"popStack");function H(){var j;return j=D.pop()||F.lex()||P,typeof j!="number"&&(j instanceof Array&&(D=j,j=D.pop()),j=k.symbols_[j]||j),j}o(H,"lex");for(var he,Z,de,re,ne,te,Q={},le,J,ge,ie;;){if(de=C[C.length-1],this.defaultActions[de]?re=this.defaultActions[de]:((he===null||typeof he>"u")&&(he=H()),re=L[de]&&L[de][he]),typeof re>"u"||!re.length||!re[0]){var Te="";ie=[];for(le in L[de])this.terminals_[le]&&le>M&&ie.push("'"+this.terminals_[le]+"'");F.showPosition?Te="Parse error on line "+(A+1)+`: `+F.showPosition()+` -Expecting `+ne.join(", ")+", got '"+(this.terminals_[oe]||oe)+"'":Te="Parse error on line "+(_+1)+": Unexpected "+(oe==P?"end of input":"'"+(this.terminals_[oe]||oe)+"'"),this.parseError(Te,{text:F.match,token:this.terminals_[oe]||oe,line:F.yylineno,loc:U,expected:ne})}if(te[0]instanceof Array&&te.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ue+", token: "+oe);switch(te[0]){case 1:C.push(oe),L.push(F.yytext),I.push(F.yylloc),C.push(te[1]),oe=null,Q?(oe=Q,Q=null):(D=F.yyleng,E=F.yytext,_=F.yylineno,U=F.yylloc,O>0&&O--);break;case 2:if(Z=this.productions_[te[1]][1],K.$=L[L.length-Z],K._$={first_line:I[I.length-(Z||1)].first_line,last_line:I[I.length-1].last_line,first_column:I[I.length-(Z||1)].first_column,last_column:I[I.length-1].last_column},j&&(K._$.range=[I[I.length-(Z||1)].range[0],I[I.length-1].range[1]]),J=this.performAction.apply(K,[E,D,_,V.yy,te[1],L,I].concat(B)),typeof J<"u")return J;Z&&(C=C.slice(0,-1*Z*2),L=L.slice(0,-1*Z),I=I.slice(0,-1*Z)),C.push(this.productions_[te[1]][0]),L.push(K.$),I.push(K._$),de=R[C[C.length-2]][C[C.length-1]],C.push(de);break;case 3:return!0}}return!0},"parse")},b=(function(){var S={EOF:1,parseError:o(function(k,C){if(this.yy.parser)this.yy.parser.parseError(k,C);else throw new Error(k)},"parseError"),setInput:o(function(w,k){return this.yy=k||this.yy||{},this._input=w,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var w=this._input[0];this.yytext+=w,this.yyleng++,this.offset++,this.match+=w,this.matched+=w;var k=w.match(/(?:\r\n?|\n).*/g);return k?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),w},"input"),unput:o(function(w){var k=w.length,C=w.split(/(?:\r\n?|\n)/g);this._input=w+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-k),this.offset-=k;var A=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),C.length-1&&(this.yylineno-=C.length-1);var L=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:C?(C.length===A.length?this.yylloc.first_column:0)+A[A.length-C.length].length-C[0].length:this.yylloc.first_column-k},this.options.ranges&&(this.yylloc.range=[L[0],L[0]+this.yyleng-k]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +Expecting `+ie.join(", ")+", got '"+(this.terminals_[he]||he)+"'":Te="Parse error on line "+(A+1)+": Unexpected "+(he==P?"end of input":"'"+(this.terminals_[he]||he)+"'"),this.parseError(Te,{text:F.match,token:this.terminals_[he]||he,line:F.yylineno,loc:V,expected:ie})}if(re[0]instanceof Array&&re.length>1)throw new Error("Parse Error: multiple actions possible at state: "+de+", token: "+he);switch(re[0]){case 1:C.push(he),R.push(F.yytext),O.push(F.yylloc),C.push(re[1]),he=null,Z?(he=Z,Z=null):(_=F.yyleng,S=F.yytext,A=F.yylineno,V=F.yylloc,N>0&&N--);break;case 2:if(J=this.productions_[re[1]][1],Q.$=R[R.length-J],Q._$={first_line:O[O.length-(J||1)].first_line,last_line:O[O.length-1].last_line,first_column:O[O.length-(J||1)].first_column,last_column:O[O.length-1].last_column},K&&(Q._$.range=[O[O.length-(J||1)].range[0],O[O.length-1].range[1]]),te=this.performAction.apply(Q,[S,_,A,G.yy,re[1],R,O].concat(B)),typeof te<"u")return te;J&&(C=C.slice(0,-1*J*2),R=R.slice(0,-1*J),O=O.slice(0,-1*J)),C.push(this.productions_[re[1]][0]),R.push(Q.$),O.push(Q._$),ge=L[C[C.length-2]][C[C.length-1]],C.push(ge);break;case 3:return!0}}return!0},"parse")},b=(function(){var E={EOF:1,parseError:o(function(k,C){if(this.yy.parser)this.yy.parser.parseError(k,C);else throw new Error(k)},"parseError"),setInput:o(function(w,k){return this.yy=k||this.yy||{},this._input=w,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var w=this._input[0];this.yytext+=w,this.yyleng++,this.offset++,this.match+=w,this.matched+=w;var k=w.match(/(?:\r\n?|\n).*/g);return k?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),w},"input"),unput:o(function(w){var k=w.length,C=w.split(/(?:\r\n?|\n)/g);this._input=w+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-k),this.offset-=k;var D=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),C.length-1&&(this.yylineno-=C.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:C?(C.length===D.length?this.yylloc.first_column:0)+D[D.length-C.length].length-C[0].length:this.yylloc.first_column-k},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-k]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(w){this.unput(this.match.slice(w))},"less"),pastInput:o(function(){var w=this.matched.substr(0,this.matched.length-this.match.length);return(w.length>20?"...":"")+w.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var w=this.match;return w.length<20&&(w+=this._input.substr(0,20-w.length)),(w.substr(0,20)+(w.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var w=this.pastInput(),k=new Array(w.length+1).join("-");return w+this.upcomingInput()+` -`+k+"^"},"showPosition"),test_match:o(function(w,k){var C,A,L;if(this.options.backtrack_lexer&&(L={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(L.yylloc.range=this.yylloc.range.slice(0))),A=w[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+w[0].length},this.yytext+=w[0],this.match+=w[0],this.matches=w,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(w[0].length),this.matched+=w[0],C=this.performAction.call(this,this.yy,this,k,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),C)return C;if(this._backtrack){for(var I in L)this[I]=L[I];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var w,k,C,A;this._more||(this.yytext="",this.match="");for(var L=this._currentRules(),I=0;Ik[0].length)){if(k=C,A=I,this.options.backtrack_lexer){if(w=this.test_match(C,L[I]),w!==!1)return w;if(this._backtrack){k=!1;continue}else return!1}else if(!this.options.flex)break}return k?(w=this.test_match(k,L[A]),w!==!1?w:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var k=this.next();return k||this.lex()},"lex"),begin:o(function(k){this.conditionStack.push(k)},"begin"),popState:o(function(){var k=this.conditionStack.length-1;return k>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(k){return k=this.conditionStack.length-1-Math.abs(k||0),k>=0?this.conditionStack[k]:"INITIAL"},"topState"),pushState:o(function(k){this.begin(k)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(k,C,A,L){var I=L;switch(A){case 0:return k.getLogger().trace("Found comment",C.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:k.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return k.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:k.getLogger().trace("end icon"),this.popState();break;case 10:return k.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return k.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return k.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return k.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:k.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return k.getLogger().trace("description:",C.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),k.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),k.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),k.getLogger().trace("node end ...",C.yytext),"NODE_DEND";break;case 30:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),k.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),k.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return k.getLogger().trace("Long description:",C.yytext),20;break;case 36:return k.getLogger().trace("Long description:",C.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return S})();x.lexer=b;function T(){this.yy={}}return o(T,"Parser"),T.prototype=x,x.Parser=T,new T})();U$.parser=U$;U2e=U$});function q2e(t,e=0){return(_a[t[e+0]]+_a[t[e+1]]+_a[t[e+2]]+_a[t[e+3]]+"-"+_a[t[e+4]]+_a[t[e+5]]+"-"+_a[t[e+6]]+_a[t[e+7]]+"-"+_a[t[e+8]]+_a[t[e+9]]+"-"+_a[t[e+10]]+_a[t[e+11]]+_a[t[e+12]]+_a[t[e+13]]+_a[t[e+14]]+_a[t[e+15]]).toLowerCase()}var _a,W2e=M(()=>{"use strict";_a=[];for(let t=0;t<256;++t)_a.push((t+256).toString(16).slice(1));o(q2e,"unsafeStringify")});function q$(){if(!H$){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");H$=crypto.getRandomValues.bind(crypto)}return H$(Dtt)}var H$,Dtt,Y2e=M(()=>{"use strict";Dtt=new Uint8Array(16);o(q$,"rng")});var Ltt,W$,X2e=M(()=>{"use strict";Ltt=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),W$={randomUUID:Ltt}});function Rtt(t,e,r){if(W$.randomUUID&&!e&&!t)return W$.randomUUID();t=t||{};let n=t.random??t.rng?.()??q$();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(r=r||0,r<0||r+16>e.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[r+i]=n[i];return e}return q2e(n)}var Y$,j2e=M(()=>{"use strict";X2e();Y2e();W2e();o(Rtt,"v4");Y$=Rtt});var K2e=M(()=>{"use strict";j2e()});var ch,TC,Q2e=M(()=>{"use strict";Xt();K2e();gr();pt();Ra();qn();ch={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},TC=class{constructor(){this.nodes=[];this.count=0;this.elements={};this.getLogger=this.getLogger.bind(this),this.nodeType=ch,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{o(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(e){for(let r=this.nodes.length-1;r>=0;r--)if(this.nodes[r].level0?this.nodes[0]:null}addNode(e,r,n,i){X.info("addNode",e,r,n,i);let a=!1;this.nodes.length===0?(this.baseLevel=e,e=0,a=!0):this.baseLevel!==void 0&&(e=e-this.baseLevel,a=!1);let s=ge(),l=s.mindmap?.padding??ur.mindmap.padding;switch(i){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:l*=2;break}let u={id:this.count++,nodeId:sr(r,s),level:e,descr:sr(n,s),type:i,children:[],width:s.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:l,isRoot:a},h=this.getParent(e);if(h)h.children.push(u),this.nodes.push(u);else if(a)this.nodes.push(u);else throw new Error(`There can be only one root. No parent could be found for ("${u.descr}")`)}getType(e,r){switch(X.debug("In get type",e,r),e){case"[":return this.nodeType.RECT;case"(":return r===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(e,r){this.elements[e]=r}getElementById(e){return this.elements[e]}decorateNode(e){if(!e)return;let r=ge(),n=this.nodes[this.nodes.length-1];e.icon&&(n.icon=sr(e.icon,r)),e.class&&(n.class=sr(e.class,r))}type2Str(e){switch(e){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(e,r){if(e.level===0?e.section=void 0:e.section=r,e.children)for(let[n,i]of e.children.entries()){let a=e.level===0?n:r;this.assignSections(i,a)}}flattenNodes(e,r){let n=["mindmap-node"];e.isRoot===!0?n.push("section-root","section--1"):e.section!==void 0&&n.push(`section-${e.section}`),e.class&&n.push(e.class);let i=n.join(" "),a=o(l=>{switch(l){case ch.CIRCLE:return"mindmapCircle";case ch.RECT:return"rect";case ch.ROUNDED_RECT:return"rounded";case ch.CLOUD:return"cloud";case ch.BANG:return"bang";case ch.HEXAGON:return"hexagon";case ch.DEFAULT:return"defaultMindmapNode";case ch.NO_BORDER:default:return"rect"}},"getShapeFromType"),s={id:e.id.toString(),domId:"node_"+e.id.toString(),label:e.descr,isGroup:!1,shape:a(e.type),width:e.width,height:e.height??0,padding:e.padding,cssClasses:i,cssStyles:[],look:"default",icon:e.icon,x:e.x,y:e.y,level:e.level,nodeId:e.nodeId,type:e.type,section:e.section};if(r.push(s),e.children)for(let l of e.children)this.flattenNodes(l,r)}generateEdges(e,r){if(e.children)for(let n of e.children){let i="edge";n.section!==void 0&&(i+=` section-edge-${n.section}`);let a=e.level+1;i+=` edge-depth-${a}`;let s={id:`edge_${e.id}_${n.id}`,start:e.id.toString(),end:n.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:"default",classes:i,depth:e.level,section:n.section};r.push(s),this.generateEdges(n,r)}}getData(){let e=this.getMindmap(),r=ge(),i=nV().layout!==void 0,a=r;if(i||(a.layout="cose-bilkent"),!e)return{nodes:[],edges:[],config:a};X.debug("getData: mindmapRoot",e,r),this.assignSections(e);let s=[],l=[];this.flattenNodes(e,s),this.generateEdges(e,l),X.debug(`getData: processed ${s.length} nodes and ${l.length} edges`);let u=new Map;for(let h of s)u.set(h.id,{shape:h.shape,width:h.width,height:h.height,padding:h.padding});return{nodes:s,edges:l,config:a,rootNode:e,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(u),type:"mindmap",diagramId:"mindmap-"+Y$()}}getLogger(){return X}}});var Ntt,Z2e,J2e=M(()=>{"use strict";pt();ep();Nf();Mf();Ra();Ntt=o(async(t,e,r,n)=>{X.debug(`Rendering mindmap diagram -`+t);let i=n.db,a=i.getData(),s=Vo(e,a.config.securityLevel);a.type=n.type,a.layoutAlgorithm=$c(a.config.layout,{fallback:"cose-bilkent"}),a.diagramId=e,i.getMindmap()&&(a.nodes.forEach(u=>{u.shape==="rounded"?(u.radius=15,u.taper=15,u.stroke="none",u.width=0,u.padding=15):u.shape==="circle"?u.padding=10:u.shape==="rect"&&(u.width=0,u.padding=10)}),await Qo(a,s),Ws(s,a.config.mindmap?.padding??ur.mindmap.padding,"mindmapDiagram",a.config.mindmap?.useMaxWidth??ur.mindmap.useMaxWidth))},"draw"),Z2e={draw:Ntt}});var Mtt,Itt,exe,txe=M(()=>{"use strict";eo();Mtt=o(t=>{let e="";for(let r=0;rk[0].length)){if(k=C,D=O,this.options.backtrack_lexer){if(w=this.test_match(C,R[O]),w!==!1)return w;if(this._backtrack){k=!1;continue}else return!1}else if(!this.options.flex)break}return k?(w=this.test_match(k,R[D]),w!==!1?w:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var k=this.next();return k||this.lex()},"lex"),begin:o(function(k){this.conditionStack.push(k)},"begin"),popState:o(function(){var k=this.conditionStack.length-1;return k>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(k){return k=this.conditionStack.length-1-Math.abs(k||0),k>=0?this.conditionStack[k]:"INITIAL"},"topState"),pushState:o(function(k){this.begin(k)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(k,C,D,R){var O=R;switch(D){case 0:return k.getLogger().trace("Found comment",C.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:k.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return k.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:k.getLogger().trace("end icon"),this.popState();break;case 10:return k.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return k.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return k.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return k.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:k.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return k.getLogger().trace("description:",C.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),k.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),k.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),k.getLogger().trace("node end ...",C.yytext),"NODE_DEND";break;case 30:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),k.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),k.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return k.getLogger().trace("Long description:",C.yytext),20;break;case 36:return k.getLogger().trace("Long description:",C.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return E})();x.lexer=b;function T(){this.yy={}}return o(T,"Parser"),T.prototype=x,x.Parser=T,new T})();AU.parser=AU;X5e=AU});function Q5e(t,e=0){return(ja[t[e+0]]+ja[t[e+1]]+ja[t[e+2]]+ja[t[e+3]]+"-"+ja[t[e+4]]+ja[t[e+5]]+"-"+ja[t[e+6]]+ja[t[e+7]]+"-"+ja[t[e+8]]+ja[t[e+9]]+"-"+ja[t[e+10]]+ja[t[e+11]]+ja[t[e+12]]+ja[t[e+13]]+ja[t[e+14]]+ja[t[e+15]]).toLowerCase()}var ja,Z5e=I(()=>{"use strict";ja=[];for(let t=0;t<256;++t)ja.push((t+256).toString(16).slice(1));o(Q5e,"unsafeStringify")});function DU(){if(!_U){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");_U=crypto.getRandomValues.bind(crypto)}return _U(Act)}var _U,Act,J5e=I(()=>{"use strict";Act=new Uint8Array(16);o(DU,"rng")});var _ct,RU,eke=I(()=>{"use strict";_ct=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),RU={randomUUID:_ct}});function Dct(t,e,r){if(RU.randomUUID&&!e&&!t)return RU.randomUUID();t=t||{};let n=t.random??t.rng?.()??DU();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(r=r||0,r<0||r+16>e.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[r+i]=n[i];return e}return Q5e(n)}var LU,tke=I(()=>{"use strict";eke();J5e();Z5e();o(Dct,"v4");LU=Dct});var rke=I(()=>{"use strict";tke()});var nf,K7,nke=I(()=>{"use strict";Qt();rke();wr();gt();Ka();ti();nf={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},K7=class{constructor(){this.nodes=[];this.count=0;this.elements={};this.getLogger=this.getLogger.bind(this),this.nodeType=nf,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{o(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(e){for(let r=this.nodes.length-1;r>=0;r--)if(this.nodes[r].level0?this.nodes[0]:null}addNode(e,r,n,i){X.info("addNode",e,r,n,i);let a=!1;this.nodes.length===0?(this.baseLevel=e,e=0,a=!0):this.baseLevel!==void 0&&(e=e-this.baseLevel,a=!1);let s=xe(),l=s.mindmap?.padding??gr.mindmap.padding;switch(i){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:l*=2;break}let u={id:this.count++,nodeId:fr(r,s),level:e,descr:fr(n,s),type:i,children:[],width:s.mindmap?.maxNodeWidth??gr.mindmap.maxNodeWidth,padding:l,isRoot:a},h=this.getParent(e);if(h)h.children.push(u),this.nodes.push(u);else if(a)this.nodes.push(u);else throw new Error(`There can be only one root. No parent could be found for ("${u.descr}")`)}getType(e,r){switch(X.debug("In get type",e,r),e){case"[":return this.nodeType.RECT;case"(":return r===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(e,r){this.elements[e]=r}getElementById(e){return this.elements[e]}decorateNode(e){if(!e)return;let r=xe(),n=this.nodes[this.nodes.length-1];e.icon&&(n.icon=fr(e.icon,r)),e.class&&(n.class=fr(e.class,r))}type2Str(e){switch(e){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(e,r){if(e.level===0?e.section=void 0:e.section=r,e.children)for(let[n,i]of e.children.entries()){let a=e.level===0?n:r;this.assignSections(i,a)}}flattenNodes(e,r){let n=["mindmap-node"];e.isRoot===!0?n.push("section-root","section--1"):e.section!==void 0&&n.push(`section-${e.section}`),e.class&&n.push(e.class);let i=n.join(" "),a=o(l=>{switch(l){case nf.CIRCLE:return"mindmapCircle";case nf.RECT:return"rect";case nf.ROUNDED_RECT:return"rounded";case nf.CLOUD:return"cloud";case nf.BANG:return"bang";case nf.HEXAGON:return"hexagon";case nf.DEFAULT:return"defaultMindmapNode";case nf.NO_BORDER:default:return"rect"}},"getShapeFromType"),s={id:e.id.toString(),domId:"node_"+e.id.toString(),label:e.descr,isGroup:!1,shape:a(e.type),width:e.width,height:e.height??0,padding:e.padding,cssClasses:i,cssStyles:[],look:"default",icon:e.icon,x:e.x,y:e.y,level:e.level,nodeId:e.nodeId,type:e.type,section:e.section};if(r.push(s),e.children)for(let l of e.children)this.flattenNodes(l,r)}generateEdges(e,r){if(e.children)for(let n of e.children){let i="edge";n.section!==void 0&&(i+=` section-edge-${n.section}`);let a=e.level+1;i+=` edge-depth-${a}`;let s={id:`edge_${e.id}_${n.id}`,start:e.id.toString(),end:n.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:"default",classes:i,depth:e.level,section:n.section};r.push(s),this.generateEdges(n,r)}}getData(){let e=this.getMindmap(),r=xe(),i=GH().layout!==void 0,a=r;if(i||(a.layout="cose-bilkent"),!e)return{nodes:[],edges:[],config:a};X.debug("getData: mindmapRoot",e,r),this.assignSections(e);let s=[],l=[];this.flattenNodes(e,s),this.generateEdges(e,l),X.debug(`getData: processed ${s.length} nodes and ${l.length} edges`);let u=new Map;for(let h of s)u.set(h.id,{shape:h.shape,width:h.width,height:h.height,padding:h.padding});return{nodes:s,edges:l,config:a,rootNode:e,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(u),type:"mindmap",diagramId:"mindmap-"+LU()}}getLogger(){return X}}});var Rct,ike,ake=I(()=>{"use strict";gt();y0();Cd();Ad();Ka();Rct=o(async(t,e,r,n)=>{X.debug(`Rendering mindmap diagram +`+t);let i=n.db,a=i.getData(),s=xl(e,a.config.securityLevel);a.type=n.type,a.layoutAlgorithm=ku(a.config.layout,{fallback:"cose-bilkent"}),a.diagramId=e,i.getMindmap()&&(a.nodes.forEach(u=>{u.shape==="rounded"?(u.radius=15,u.taper=15,u.stroke="none",u.width=0,u.padding=15):u.shape==="circle"?u.padding=10:u.shape==="rect"&&(u.width=0,u.padding=10)}),await _l(a,s),mo(s,a.config.mindmap?.padding??gr.mindmap.padding,"mindmapDiagram",a.config.mindmap?.useMaxWidth??gr.mindmap.useMaxWidth))},"draw"),ike={draw:Rct}});var Lct,Nct,ske,oke=I(()=>{"use strict";_o();Lct=o(t=>{let e="";for(let r=0;r` + `}return e},"genSections"),Nct=o(t=>` .edge { stroke-width: 3; } - ${Mtt(t)} + ${Lct(t)} .section-root rect, .section-root path, .section-root circle, .section-root polygon { fill: ${t.git0}; } @@ -2418,17 +2450,17 @@ Expecting `+ne.join(", ")+", got '"+(this.terminals_[oe]||oe)+"'":Te="Parse erro dominant-baseline: middle; text-align: center; } -`,"getStyles"),exe=Itt});var rxe={};dr(rxe,{diagram:()=>Ott});var Ott,nxe=M(()=>{"use strict";H2e();Q2e();J2e();txe();Ott={get db(){return new TC},renderer:Z2e,parser:U2e,styles:exe}});var X$,sxe,oxe=M(()=>{"use strict";X$=(function(){var t=o(function(C,A,L,I){for(L=L||{},I=C.length;I--;L[C[I]]=A);return L},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,31],g=[6,7,11,24],y=[1,6,13,16,17,20,23],v=[1,35],x=[1,36],b=[1,6,7,11,13,16,17,20,23],T=[1,38],S={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(A,L,I,R,E,_,D){var O=_.length-1;switch(E){case 6:case 7:return R;case 8:R.getLogger().trace("Stop NL ");break;case 9:R.getLogger().trace("Stop EOF ");break;case 11:R.getLogger().trace("Stop NL2 ");break;case 12:R.getLogger().trace("Stop EOF2 ");break;case 15:R.getLogger().info("Node: ",_[O-1].id),R.addNode(_[O-2].length,_[O-1].id,_[O-1].descr,_[O-1].type,_[O]);break;case 16:R.getLogger().info("Node: ",_[O].id),R.addNode(_[O-1].length,_[O].id,_[O].descr,_[O].type);break;case 17:R.getLogger().trace("Icon: ",_[O]),R.decorateNode({icon:_[O]});break;case 18:case 23:R.decorateNode({class:_[O]});break;case 19:R.getLogger().trace("SPACELIST");break;case 20:R.getLogger().trace("Node: ",_[O-1].id),R.addNode(0,_[O-1].id,_[O-1].descr,_[O-1].type,_[O]);break;case 21:R.getLogger().trace("Node: ",_[O].id),R.addNode(0,_[O].id,_[O].descr,_[O].type);break;case 22:R.decorateNode({icon:_[O]});break;case 27:R.getLogger().trace("node found ..",_[O-2]),this.$={id:_[O-1],descr:_[O-1],type:R.getType(_[O-2],_[O])};break;case 28:this.$={id:_[O],descr:_[O],type:0};break;case 29:R.getLogger().trace("node found ..",_[O-3]),this.$={id:_[O-3],descr:_[O-1],type:R.getType(_[O-2],_[O])};break;case 30:this.$=_[O-1]+_[O];break;case 31:this.$=_[O];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:r,9:22,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:h,7:f,10:23,11:d},t(p,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:s,23:l}),t(p,[2,19]),t(p,[2,21],{15:30,24:m}),t(p,[2,22]),t(p,[2,23]),t(g,[2,25]),t(g,[2,26]),t(g,[2,28],{20:[1,32]}),{21:[1,33]},{6:h,7:f,10:34,11:d},{1:[2,7],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(y,[2,14],{7:v,11:x}),t(b,[2,8]),t(b,[2,9]),t(b,[2,10]),t(p,[2,16],{15:37,24:m}),t(p,[2,17]),t(p,[2,18]),t(p,[2,20],{24:T}),t(g,[2,31]),{21:[1,39]},{22:[1,40]},t(y,[2,13],{7:v,11:x}),t(b,[2,11]),t(b,[2,12]),t(p,[2,15],{24:T}),t(g,[2,30]),{22:[1,41]},t(g,[2,27]),t(g,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(A,L){if(L.recoverable)this.trace(A);else{var I=new Error(A);throw I.hash=L,I}},"parseError"),parse:o(function(A){var L=this,I=[0],R=[],E=[null],_=[],D=this.table,O="",N=0,P=0,B=0,F=2,V=1,$=_.slice.call(arguments,1),U=Object.create(this.lexer),j={yy:{}};for(var ee in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ee)&&(j.yy[ee]=this.yy[ee]);U.setInput(A,j.yy),j.yy.lexer=U,j.yy.parser=this,typeof U.yylloc>"u"&&(U.yylloc={});var q=U.yylloc;_.push(q);var oe=U.options&&U.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Q(Be){I.length=I.length-2*Be,E.length=E.length-Be,_.length=_.length-Be}o(Q,"popStack");function ue(){var Be;return Be=R.pop()||U.lex()||V,typeof Be!="number"&&(Be instanceof Array&&(R=Be,Be=R.pop()),Be=L.symbols_[Be]||Be),Be}o(ue,"lex");for(var te,re,J,K,ae,Z,de={},ne,Te,W,Ve;;){if(J=I[I.length-1],this.defaultActions[J]?K=this.defaultActions[J]:((te===null||typeof te>"u")&&(te=ue()),K=D[J]&&D[J][te]),typeof K>"u"||!K.length||!K[0]){var pe="";Ve=[];for(ne in D[J])this.terminals_[ne]&&ne>F&&Ve.push("'"+this.terminals_[ne]+"'");U.showPosition?pe="Parse error on line "+(N+1)+`: -`+U.showPosition()+` -Expecting `+Ve.join(", ")+", got '"+(this.terminals_[te]||te)+"'":pe="Parse error on line "+(N+1)+": Unexpected "+(te==V?"end of input":"'"+(this.terminals_[te]||te)+"'"),this.parseError(pe,{text:U.match,token:this.terminals_[te]||te,line:U.yylineno,loc:q,expected:Ve})}if(K[0]instanceof Array&&K.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+te);switch(K[0]){case 1:I.push(te),E.push(U.yytext),_.push(U.yylloc),I.push(K[1]),te=null,re?(te=re,re=null):(P=U.yyleng,O=U.yytext,N=U.yylineno,q=U.yylloc,B>0&&B--);break;case 2:if(Te=this.productions_[K[1]][1],de.$=E[E.length-Te],de._$={first_line:_[_.length-(Te||1)].first_line,last_line:_[_.length-1].last_line,first_column:_[_.length-(Te||1)].first_column,last_column:_[_.length-1].last_column},oe&&(de._$.range=[_[_.length-(Te||1)].range[0],_[_.length-1].range[1]]),Z=this.performAction.apply(de,[O,P,N,j.yy,K[1],E,_].concat($)),typeof Z<"u")return Z;Te&&(I=I.slice(0,-1*Te*2),E=E.slice(0,-1*Te),_=_.slice(0,-1*Te)),I.push(this.productions_[K[1]][0]),E.push(de.$),_.push(de._$),W=D[I[I.length-2]][I[I.length-1]],I.push(W);break;case 3:return!0}}return!0},"parse")},w=(function(){var C={EOF:1,parseError:o(function(L,I){if(this.yy.parser)this.yy.parser.parseError(L,I);else throw new Error(L)},"parseError"),setInput:o(function(A,L){return this.yy=L||this.yy||{},this._input=A,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var A=this._input[0];this.yytext+=A,this.yyleng++,this.offset++,this.match+=A,this.matched+=A;var L=A.match(/(?:\r\n?|\n).*/g);return L?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),A},"input"),unput:o(function(A){var L=A.length,I=A.split(/(?:\r\n?|\n)/g);this._input=A+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-L),this.offset-=L;var R=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),I.length-1&&(this.yylineno-=I.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:I?(I.length===R.length?this.yylloc.first_column:0)+R[R.length-I.length].length-I[0].length:this.yylloc.first_column-L},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-L]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(A){this.unput(this.match.slice(A))},"less"),pastInput:o(function(){var A=this.matched.substr(0,this.matched.length-this.match.length);return(A.length>20?"...":"")+A.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var A=this.match;return A.length<20&&(A+=this._input.substr(0,20-A.length)),(A.substr(0,20)+(A.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var A=this.pastInput(),L=new Array(A.length+1).join("-");return A+this.upcomingInput()+` -`+L+"^"},"showPosition"),test_match:o(function(A,L){var I,R,E;if(this.options.backtrack_lexer&&(E={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(E.yylloc.range=this.yylloc.range.slice(0))),R=A[0].match(/(?:\r\n?|\n).*/g),R&&(this.yylineno+=R.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:R?R[R.length-1].length-R[R.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+A[0].length},this.yytext+=A[0],this.match+=A[0],this.matches=A,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(A[0].length),this.matched+=A[0],I=this.performAction.call(this,this.yy,this,L,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),I)return I;if(this._backtrack){for(var _ in E)this[_]=E[_];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var A,L,I,R;this._more||(this.yytext="",this.match="");for(var E=this._currentRules(),_=0;_L[0].length)){if(L=I,R=_,this.options.backtrack_lexer){if(A=this.test_match(I,E[_]),A!==!1)return A;if(this._backtrack){L=!1;continue}else return!1}else if(!this.options.flex)break}return L?(A=this.test_match(L,E[R]),A!==!1?A:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var L=this.next();return L||this.lex()},"lex"),begin:o(function(L){this.conditionStack.push(L)},"begin"),popState:o(function(){var L=this.conditionStack.length-1;return L>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(L){return L=this.conditionStack.length-1-Math.abs(L||0),L>=0?this.conditionStack[L]:"INITIAL"},"topState"),pushState:o(function(L){this.begin(L)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(L,I,R,E){var _=E;switch(R){case 0:return this.pushState("shapeData"),I.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let D=/\n\s*/g;return I.yytext=I.yytext.replace(D,"
    "),24;break;case 4:return 24;case 5:this.popState();break;case 6:return L.getLogger().trace("Found comment",I.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:L.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return L.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:L.getLogger().trace("end icon"),this.popState();break;case 16:return L.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return L.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return L.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return L.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:L.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return L.getLogger().trace("description:",I.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),L.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),L.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),L.getLogger().trace("node end ...",I.yytext),"NODE_DEND";break;case 36:return this.popState(),L.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),L.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),L.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),L.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),L.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return L.getLogger().trace("Long description:",I.yytext),21;break;case 42:return L.getLogger().trace("Long description:",I.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return C})();S.lexer=w;function k(){this.yy={}}return o(k,"Parser"),k.prototype=S,S.Parser=k,new k})();X$.parser=X$;sxe=X$});var ol,K$,j$,Q$,$tt,ztt,lxe,Gtt,Vtt,Ui,Utt,Htt,qtt,Wtt,Ytt,Xtt,jtt,cxe,uxe=M(()=>{"use strict";Xt();gr();pt();Ra();k2();ol=[],K$=[],j$=0,Q$={},$tt=o(()=>{ol=[],K$=[],j$=0,Q$={}},"clear"),ztt=o(t=>{if(ol.length===0)return null;let e=ol[0].level,r=null;for(let n=ol.length-1;n>=0;n--)if(ol[n].level===e&&!r&&(r=ol[n]),ol[n].levell.parentId===i.id);for(let l of s){let u={id:l.id,parentId:i.id,label:sr(l.label??"",n),isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(u)}}return{nodes:e,edges:t,other:{},config:ge()}},"getData"),Vtt=o((t,e,r,n,i)=>{let a=ge(),s=a.mindmap?.padding??ur.mindmap.padding;switch(n){case Ui.ROUNDED_RECT:case Ui.RECT:case Ui.HEXAGON:s*=2}let l={id:sr(e,a)||"kbn"+j$++,level:t,label:sr(r,a),width:a.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:s,isGroup:!1};if(i!==void 0){let h;i.includes(` +`,"getStyles"),ske=Nct});var lke={};vr(lke,{diagram:()=>Mct});var Mct,cke=I(()=>{"use strict";K5e();nke();ake();oke();Mct={get db(){return new K7},renderer:ike,parser:X5e,styles:ske}});var NU,fke,dke=I(()=>{"use strict";NU=(function(){var t=o(function(C,D,R,O){for(R=R||{},O=C.length;O--;R[C[O]]=D);return R},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,31],g=[6,7,11,24],y=[1,6,13,16,17,20,23],v=[1,35],x=[1,36],b=[1,6,7,11,13,16,17,20,23],T=[1,38],E={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(D,R,O,L,S,A,_){var N=A.length-1;switch(S){case 6:case 7:return L;case 8:L.getLogger().trace("Stop NL ");break;case 9:L.getLogger().trace("Stop EOF ");break;case 11:L.getLogger().trace("Stop NL2 ");break;case 12:L.getLogger().trace("Stop EOF2 ");break;case 15:L.getLogger().info("Node: ",A[N-1].id),L.addNode(A[N-2].length,A[N-1].id,A[N-1].descr,A[N-1].type,A[N]);break;case 16:L.getLogger().info("Node: ",A[N].id),L.addNode(A[N-1].length,A[N].id,A[N].descr,A[N].type);break;case 17:L.getLogger().trace("Icon: ",A[N]),L.decorateNode({icon:A[N]});break;case 18:case 23:L.decorateNode({class:A[N]});break;case 19:L.getLogger().trace("SPACELIST");break;case 20:L.getLogger().trace("Node: ",A[N-1].id),L.addNode(0,A[N-1].id,A[N-1].descr,A[N-1].type,A[N]);break;case 21:L.getLogger().trace("Node: ",A[N].id),L.addNode(0,A[N].id,A[N].descr,A[N].type);break;case 22:L.decorateNode({icon:A[N]});break;case 27:L.getLogger().trace("node found ..",A[N-2]),this.$={id:A[N-1],descr:A[N-1],type:L.getType(A[N-2],A[N])};break;case 28:this.$={id:A[N],descr:A[N],type:0};break;case 29:L.getLogger().trace("node found ..",A[N-3]),this.$={id:A[N-3],descr:A[N-1],type:L.getType(A[N-2],A[N])};break;case 30:this.$=A[N-1]+A[N];break;case 31:this.$=A[N];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:r,9:22,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:h,7:f,10:23,11:d},t(p,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:s,23:l}),t(p,[2,19]),t(p,[2,21],{15:30,24:m}),t(p,[2,22]),t(p,[2,23]),t(g,[2,25]),t(g,[2,26]),t(g,[2,28],{20:[1,32]}),{21:[1,33]},{6:h,7:f,10:34,11:d},{1:[2,7],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(y,[2,14],{7:v,11:x}),t(b,[2,8]),t(b,[2,9]),t(b,[2,10]),t(p,[2,16],{15:37,24:m}),t(p,[2,17]),t(p,[2,18]),t(p,[2,20],{24:T}),t(g,[2,31]),{21:[1,39]},{22:[1,40]},t(y,[2,13],{7:v,11:x}),t(b,[2,11]),t(b,[2,12]),t(p,[2,15],{24:T}),t(g,[2,30]),{22:[1,41]},t(g,[2,27]),t(g,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(D,R){if(R.recoverable)this.trace(D);else{var O=new Error(D);throw O.hash=R,O}},"parseError"),parse:o(function(D){var R=this,O=[0],L=[],S=[null],A=[],_=this.table,N="",M=0,P=0,B=0,F=2,G=1,$=A.slice.call(arguments,1),V=Object.create(this.lexer),K={yy:{}};for(var ee in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ee)&&(K.yy[ee]=this.yy[ee]);V.setInput(D,K.yy),K.yy.lexer=V,K.yy.parser=this,typeof V.yylloc>"u"&&(V.yylloc={});var H=V.yylloc;A.push(H);var he=V.options&&V.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Z($e){O.length=O.length-2*$e,S.length=S.length-$e,A.length=A.length-$e}o(Z,"popStack");function de(){var $e;return $e=L.pop()||V.lex()||G,typeof $e!="number"&&($e instanceof Array&&(L=$e,$e=L.pop()),$e=R.symbols_[$e]||$e),$e}o(de,"lex");for(var re,ne,te,Q,le,J,ge={},ie,Te,j,Ge;;){if(te=O[O.length-1],this.defaultActions[te]?Q=this.defaultActions[te]:((re===null||typeof re>"u")&&(re=de()),Q=_[te]&&_[te][re]),typeof Q>"u"||!Q.length||!Q[0]){var ye="";Ge=[];for(ie in _[te])this.terminals_[ie]&&ie>F&&Ge.push("'"+this.terminals_[ie]+"'");V.showPosition?ye="Parse error on line "+(M+1)+`: +`+V.showPosition()+` +Expecting `+Ge.join(", ")+", got '"+(this.terminals_[re]||re)+"'":ye="Parse error on line "+(M+1)+": Unexpected "+(re==G?"end of input":"'"+(this.terminals_[re]||re)+"'"),this.parseError(ye,{text:V.match,token:this.terminals_[re]||re,line:V.yylineno,loc:H,expected:Ge})}if(Q[0]instanceof Array&&Q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+te+", token: "+re);switch(Q[0]){case 1:O.push(re),S.push(V.yytext),A.push(V.yylloc),O.push(Q[1]),re=null,ne?(re=ne,ne=null):(P=V.yyleng,N=V.yytext,M=V.yylineno,H=V.yylloc,B>0&&B--);break;case 2:if(Te=this.productions_[Q[1]][1],ge.$=S[S.length-Te],ge._$={first_line:A[A.length-(Te||1)].first_line,last_line:A[A.length-1].last_line,first_column:A[A.length-(Te||1)].first_column,last_column:A[A.length-1].last_column},he&&(ge._$.range=[A[A.length-(Te||1)].range[0],A[A.length-1].range[1]]),J=this.performAction.apply(ge,[N,P,M,K.yy,Q[1],S,A].concat($)),typeof J<"u")return J;Te&&(O=O.slice(0,-1*Te*2),S=S.slice(0,-1*Te),A=A.slice(0,-1*Te)),O.push(this.productions_[Q[1]][0]),S.push(ge.$),A.push(ge._$),j=_[O[O.length-2]][O[O.length-1]],O.push(j);break;case 3:return!0}}return!0},"parse")},w=(function(){var C={EOF:1,parseError:o(function(R,O){if(this.yy.parser)this.yy.parser.parseError(R,O);else throw new Error(R)},"parseError"),setInput:o(function(D,R){return this.yy=R||this.yy||{},this._input=D,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var D=this._input[0];this.yytext+=D,this.yyleng++,this.offset++,this.match+=D,this.matched+=D;var R=D.match(/(?:\r\n?|\n).*/g);return R?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),D},"input"),unput:o(function(D){var R=D.length,O=D.split(/(?:\r\n?|\n)/g);this._input=D+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-R),this.offset-=R;var L=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),O.length-1&&(this.yylineno-=O.length-1);var S=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:O?(O.length===L.length?this.yylloc.first_column:0)+L[L.length-O.length].length-O[0].length:this.yylloc.first_column-R},this.options.ranges&&(this.yylloc.range=[S[0],S[0]+this.yyleng-R]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(D){this.unput(this.match.slice(D))},"less"),pastInput:o(function(){var D=this.matched.substr(0,this.matched.length-this.match.length);return(D.length>20?"...":"")+D.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var D=this.match;return D.length<20&&(D+=this._input.substr(0,20-D.length)),(D.substr(0,20)+(D.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var D=this.pastInput(),R=new Array(D.length+1).join("-");return D+this.upcomingInput()+` +`+R+"^"},"showPosition"),test_match:o(function(D,R){var O,L,S;if(this.options.backtrack_lexer&&(S={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(S.yylloc.range=this.yylloc.range.slice(0))),L=D[0].match(/(?:\r\n?|\n).*/g),L&&(this.yylineno+=L.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:L?L[L.length-1].length-L[L.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+D[0].length},this.yytext+=D[0],this.match+=D[0],this.matches=D,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(D[0].length),this.matched+=D[0],O=this.performAction.call(this,this.yy,this,R,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),O)return O;if(this._backtrack){for(var A in S)this[A]=S[A];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var D,R,O,L;this._more||(this.yytext="",this.match="");for(var S=this._currentRules(),A=0;AR[0].length)){if(R=O,L=A,this.options.backtrack_lexer){if(D=this.test_match(O,S[A]),D!==!1)return D;if(this._backtrack){R=!1;continue}else return!1}else if(!this.options.flex)break}return R?(D=this.test_match(R,S[L]),D!==!1?D:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var R=this.next();return R||this.lex()},"lex"),begin:o(function(R){this.conditionStack.push(R)},"begin"),popState:o(function(){var R=this.conditionStack.length-1;return R>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(R){return R=this.conditionStack.length-1-Math.abs(R||0),R>=0?this.conditionStack[R]:"INITIAL"},"topState"),pushState:o(function(R){this.begin(R)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(R,O,L,S){var A=S;switch(L){case 0:return this.pushState("shapeData"),O.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let _=/\n\s*/g;return O.yytext=O.yytext.replace(_,"
    "),24;break;case 4:return 24;case 5:this.popState();break;case 6:return R.getLogger().trace("Found comment",O.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:R.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return R.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:R.getLogger().trace("end icon"),this.popState();break;case 16:return R.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return R.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return R.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return R.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:R.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return R.getLogger().trace("description:",O.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),R.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),R.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),R.getLogger().trace("node end ...",O.yytext),"NODE_DEND";break;case 36:return this.popState(),R.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),R.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),R.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),R.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),R.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return R.getLogger().trace("Long description:",O.yytext),21;break;case 42:return R.getLogger().trace("Long description:",O.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return C})();E.lexer=w;function k(){this.yy={}}return o(k,"Parser"),k.prototype=E,E.Parser=k,new k})();NU.parser=NU;fke=NU});var zl,IU,MU,OU,Bct,Fct,pke,$ct,zct,sa,Gct,Vct,qct,Uct,Wct,Hct,Yct,mke,gke=I(()=>{"use strict";Qt();wr();gt();Ka();Hx();zl=[],IU=[],MU=0,OU={},Bct=o(()=>{zl=[],IU=[],MU=0,OU={}},"clear"),Fct=o(t=>{if(zl.length===0)return null;let e=zl[0].level,r=null;for(let n=zl.length-1;n>=0;n--)if(zl[n].level===e&&!r&&(r=zl[n]),zl[n].levell.parentId===i.id);for(let l of s){let u={id:l.id,parentId:i.id,label:fr(l.label??"",n),isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(u)}}return{nodes:e,edges:t,other:{},config:xe()}},"getData"),zct=o((t,e,r,n,i)=>{let a=xe(),s=a.mindmap?.padding??gr.mindmap.padding;switch(n){case sa.ROUNDED_RECT:case sa.RECT:case sa.HEXAGON:s*=2}let l={id:fr(e,a)||"kbn"+MU++,level:t,label:fr(r,a),width:a.mindmap?.maxNodeWidth??gr.mindmap.maxNodeWidth,padding:s,isGroup:!1};if(i!==void 0){let h;i.includes(` `)?h=i+` `:h=`{ `+i+` -}`;let f=Kh(h,{schema:jh});if(f.shape&&(f.shape!==f.shape.toLowerCase()||f.shape.includes("_")))throw new Error(`No such shape: ${f.shape}. Shape names should be lowercase.`);f?.shape&&f.shape==="kanbanItem"&&(l.shape=f?.shape),f?.label&&(l.label=f?.label),f?.icon&&(l.icon=f?.icon.toString()),f?.assigned&&(l.assigned=f?.assigned.toString()),f?.ticket&&(l.ticket=f?.ticket.toString()),f?.priority&&(l.priority=f?.priority)}let u=ztt(t);u?l.parentId=u.id||"kbn"+j$++:K$.push(l),ol.push(l)},"addNode"),Ui={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Utt=o((t,e)=>{switch(X.debug("In get type",t,e),t){case"[":return Ui.RECT;case"(":return e===")"?Ui.ROUNDED_RECT:Ui.CLOUD;case"((":return Ui.CIRCLE;case")":return Ui.CLOUD;case"))":return Ui.BANG;case"{{":return Ui.HEXAGON;default:return Ui.DEFAULT}},"getType"),Htt=o((t,e)=>{Q$[t]=e},"setElementForId"),qtt=o(t=>{if(!t)return;let e=ge(),r=ol[ol.length-1];t.icon&&(r.icon=sr(t.icon,e)),t.class&&(r.cssClasses=sr(t.class,e))},"decorateNode"),Wtt=o(t=>{switch(t){case Ui.DEFAULT:return"no-border";case Ui.RECT:return"rect";case Ui.ROUNDED_RECT:return"rounded-rect";case Ui.CIRCLE:return"circle";case Ui.CLOUD:return"cloud";case Ui.BANG:return"bang";case Ui.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),Ytt=o(()=>X,"getLogger"),Xtt=o(t=>Q$[t],"getElementById"),jtt={clear:$tt,addNode:Vtt,getSections:lxe,getData:Gtt,nodeType:Ui,getType:Utt,setElementForId:Htt,decorateNode:qtt,type2Str:Wtt,getLogger:Ytt,getElementById:Xtt},cxe=jtt});var Ktt,hxe,fxe=M(()=>{"use strict";Xt();pt();tu();Ei();Ra();uw();Tw();Ktt=o(async(t,e,r,n)=>{X.debug(`Rendering kanban diagram -`+t);let a=n.db.getData(),s=ge();s.htmlLabels=!1;let l=aa(e),u=l.append("g");u.attr("class","sections");let h=l.append("g");h.attr("class","items");let f=a.nodes.filter(v=>v.isGroup),d=0,p=10,m=[],g=25;for(let v of f){let x=s?.kanban?.sectionWidth||200;d=d+1,v.x=x*d+(d-1)*p/2,v.width=x,v.y=0,v.height=x*3,v.rx=5,v.ry=5,v.cssClasses=v.cssClasses+" section-"+d;let b=await Sm(u,v);g=Math.max(g,b?.labelBBox?.height),m.push(b)}let y=0;for(let v of f){let x=m[y];y=y+1;let b=s?.kanban?.sectionWidth||200,T=-b*3/2+g,S=T,w=a.nodes.filter(A=>A.parentId===v.id);for(let A of w){if(A.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");A.x=v.x,A.width=b-1.5*p;let I=(await Cm(h,A,{config:s})).node().getBBox();A.y=S+I.height/2,await B2(A),S=A.y+I.height/2+p/2}let k=x.cluster.select("rect"),C=Math.max(S-T+3*p,50)+(g-25);k.attr("height",C)}ic(void 0,l,s.mindmap?.padding??ur.kanban.padding,s.mindmap?.useMaxWidth??ur.kanban.useMaxWidth)},"draw"),hxe={draw:Ktt}});var Qtt,Ztt,dxe,pxe=M(()=>{"use strict";eo();yg();Qtt=o(t=>{let e="";for(let n=0;nt.darkMode?Pt(n,i):Rt(n,i),"adjuster");for(let n=0;n{switch(X.debug("In get type",t,e),t){case"[":return sa.RECT;case"(":return e===")"?sa.ROUNDED_RECT:sa.CLOUD;case"((":return sa.CIRCLE;case")":return sa.CLOUD;case"))":return sa.BANG;case"{{":return sa.HEXAGON;default:return sa.DEFAULT}},"getType"),Vct=o((t,e)=>{OU[t]=e},"setElementForId"),qct=o(t=>{if(!t)return;let e=xe(),r=zl[zl.length-1];t.icon&&(r.icon=fr(t.icon,e)),t.class&&(r.cssClasses=fr(t.class,e))},"decorateNode"),Uct=o(t=>{switch(t){case sa.DEFAULT:return"no-border";case sa.RECT:return"rect";case sa.ROUNDED_RECT:return"rounded-rect";case sa.CIRCLE:return"circle";case sa.CLOUD:return"cloud";case sa.BANG:return"bang";case sa.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),Wct=o(()=>X,"getLogger"),Hct=o(t=>OU[t],"getElementById"),Yct={clear:Bct,addNode:zct,getSections:pke,getData:$ct,nodeType:sa,getType:Gct,setElementForId:Vct,decorateNode:qct,type2Str:Uct,getLogger:Wct,getElementById:Hct},mke=Yct});var jct,yke,vke=I(()=>{"use strict";Qt();gt();Uu();Fi();Ka();Yk();iS();jct=o(async(t,e,r,n)=>{X.debug(`Rendering kanban diagram +`+t);let a=n.db.getData(),s=xe();s.htmlLabels=!1;let l=Ca(e),u=l.append("g");u.attr("class","sections");let h=l.append("g");h.attr("class","items");let f=a.nodes.filter(v=>v.isGroup),d=0,p=10,m=[],g=25;for(let v of f){let x=s?.kanban?.sectionWidth||200;d=d+1,v.x=x*d+(d-1)*p/2,v.width=x,v.y=0,v.height=x*3,v.rx=5,v.ry=5,v.cssClasses=v.cssClasses+" section-"+d;let b=await l1(u,v);g=Math.max(g,b?.labelBBox?.height),m.push(b)}let y=0;for(let v of f){let x=m[y];y=y+1;let b=s?.kanban?.sectionWidth||200,T=-b*3/2+g,E=T,w=a.nodes.filter(D=>D.parentId===v.id);for(let D of w){if(D.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");D.x=v.x,D.width=b-1.5*p;let O=(await c1(h,D,{config:s})).node().getBBox();D.y=E+O.height/2,await sb(D),E=D.y+O.height/2+p/2}let k=x.cluster.select("rect"),C=Math.max(E-T+3*p,50)+(g-25);k.attr("height",C)}Vc(void 0,l,s.mindmap?.padding??gr.kanban.padding,s.mindmap?.useMaxWidth??gr.kanban.useMaxWidth)},"draw"),yke={draw:jct}});var Xct,Kct,xke,bke=I(()=>{"use strict";_o();ey();Xct=o(t=>{let e="";for(let n=0;nt.darkMode?$t(n,i):It(n,i),"adjuster");for(let n=0;n` + `}return e},"genSections"),Kct=o(t=>` .edge { stroke-width: 3; } - ${Qtt(t)} + ${Xct(t)} .section-root rect, .section-root path, .section-root circle, .section-root polygon { fill: ${t.git0}; } @@ -2505,17 +2537,17 @@ Expecting `+Ve.join(", ")+", got '"+(this.terminals_[te]||te)+"'":pe="Parse erro dominant-baseline: middle; text-align: center; } - ${zc()} -`,"getStyles"),dxe=Ztt});var mxe={};dr(mxe,{diagram:()=>Jtt});var Jtt,gxe=M(()=>{"use strict";oxe();uxe();fxe();pxe();Jtt={db:cxe,renderer:hxe,parser:sxe,styles:dxe}});var Z$,_4,xxe=M(()=>{"use strict";Z$=(function(){var t=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),e=[1,9],r=[1,10],n=[1,5,10,12],i={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:o(function(u,h,f,d,p,m,g){var y=m.length-1;switch(p){case 7:let v=d.findOrCreateNode(m[y-4].trim().replaceAll('""','"')),x=d.findOrCreateNode(m[y-2].trim().replaceAll('""','"')),b=parseFloat(m[y].trim());d.addLink(v,x,b);break;case 8:case 9:case 11:this.$=m[y];break;case 10:this.$=m[y-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(n,[2,8]),t(n,[2,9]),{19:[1,16]},t(n,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:r},{15:18,16:7,17:8,18:e,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(n,[2,10]),{15:21,16:7,17:8,18:e,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(u,h){if(h.recoverable)this.trace(u);else{var f=new Error(u);throw f.hash=h,f}},"parseError"),parse:o(function(u){var h=this,f=[0],d=[],p=[null],m=[],g=this.table,y="",v=0,x=0,b=0,T=2,S=1,w=m.slice.call(arguments,1),k=Object.create(this.lexer),C={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&(C.yy[A]=this.yy[A]);k.setInput(u,C.yy),C.yy.lexer=k,C.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var L=k.yylloc;m.push(L);var I=k.options&&k.options.ranges;typeof C.yy.parseError=="function"?this.parseError=C.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function R(q){f.length=f.length-2*q,p.length=p.length-q,m.length=m.length-q}o(R,"popStack");function E(){var q;return q=d.pop()||k.lex()||S,typeof q!="number"&&(q instanceof Array&&(d=q,q=d.pop()),q=h.symbols_[q]||q),q}o(E,"lex");for(var _,D,O,N,P,B,F={},V,$,U,j;;){if(O=f[f.length-1],this.defaultActions[O]?N=this.defaultActions[O]:((_===null||typeof _>"u")&&(_=E()),N=g[O]&&g[O][_]),typeof N>"u"||!N.length||!N[0]){var ee="";j=[];for(V in g[O])this.terminals_[V]&&V>T&&j.push("'"+this.terminals_[V]+"'");k.showPosition?ee="Parse error on line "+(v+1)+`: + ${Su()} +`,"getStyles"),xke=Kct});var Tke={};vr(Tke,{diagram:()=>Qct});var Qct,wke=I(()=>{"use strict";dke();gke();vke();bke();Qct={db:mke,renderer:yke,parser:fke,styles:xke}});var PU,u3,Eke=I(()=>{"use strict";PU=(function(){var t=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),e=[1,9],r=[1,10],n=[1,5,10,12],i={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:o(function(u,h,f,d,p,m,g){var y=m.length-1;switch(p){case 7:let v=d.findOrCreateNode(m[y-4].trim().replaceAll('""','"')),x=d.findOrCreateNode(m[y-2].trim().replaceAll('""','"')),b=parseFloat(m[y].trim());d.addLink(v,x,b);break;case 8:case 9:case 11:this.$=m[y];break;case 10:this.$=m[y-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(n,[2,8]),t(n,[2,9]),{19:[1,16]},t(n,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:r},{15:18,16:7,17:8,18:e,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(n,[2,10]),{15:21,16:7,17:8,18:e,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(u,h){if(h.recoverable)this.trace(u);else{var f=new Error(u);throw f.hash=h,f}},"parseError"),parse:o(function(u){var h=this,f=[0],d=[],p=[null],m=[],g=this.table,y="",v=0,x=0,b=0,T=2,E=1,w=m.slice.call(arguments,1),k=Object.create(this.lexer),C={yy:{}};for(var D in this.yy)Object.prototype.hasOwnProperty.call(this.yy,D)&&(C.yy[D]=this.yy[D]);k.setInput(u,C.yy),C.yy.lexer=k,C.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var R=k.yylloc;m.push(R);var O=k.options&&k.options.ranges;typeof C.yy.parseError=="function"?this.parseError=C.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function L(H){f.length=f.length-2*H,p.length=p.length-H,m.length=m.length-H}o(L,"popStack");function S(){var H;return H=d.pop()||k.lex()||E,typeof H!="number"&&(H instanceof Array&&(d=H,H=d.pop()),H=h.symbols_[H]||H),H}o(S,"lex");for(var A,_,N,M,P,B,F={},G,$,V,K;;){if(N=f[f.length-1],this.defaultActions[N]?M=this.defaultActions[N]:((A===null||typeof A>"u")&&(A=S()),M=g[N]&&g[N][A]),typeof M>"u"||!M.length||!M[0]){var ee="";K=[];for(G in g[N])this.terminals_[G]&&G>T&&K.push("'"+this.terminals_[G]+"'");k.showPosition?ee="Parse error on line "+(v+1)+`: `+k.showPosition()+` -Expecting `+j.join(", ")+", got '"+(this.terminals_[_]||_)+"'":ee="Parse error on line "+(v+1)+": Unexpected "+(_==S?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(ee,{text:k.match,token:this.terminals_[_]||_,line:k.yylineno,loc:L,expected:j})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+_);switch(N[0]){case 1:f.push(_),p.push(k.yytext),m.push(k.yylloc),f.push(N[1]),_=null,D?(_=D,D=null):(x=k.yyleng,y=k.yytext,v=k.yylineno,L=k.yylloc,b>0&&b--);break;case 2:if($=this.productions_[N[1]][1],F.$=p[p.length-$],F._$={first_line:m[m.length-($||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-($||1)].first_column,last_column:m[m.length-1].last_column},I&&(F._$.range=[m[m.length-($||1)].range[0],m[m.length-1].range[1]]),B=this.performAction.apply(F,[y,x,v,C.yy,N[1],p,m].concat(w)),typeof B<"u")return B;$&&(f=f.slice(0,-1*$*2),p=p.slice(0,-1*$),m=m.slice(0,-1*$)),f.push(this.productions_[N[1]][0]),p.push(F.$),m.push(F._$),U=g[f[f.length-2]][f[f.length-1]],f.push(U);break;case 3:return!0}}return!0},"parse")},a=(function(){var l={EOF:1,parseError:o(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:o(function(u,h){return this.yy=h||this.yy||{},this._input=u,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var h=u.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},"input"),unput:o(function(u){var h=u.length,f=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===d.length?this.yylloc.first_column:0)+d[d.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +Expecting `+K.join(", ")+", got '"+(this.terminals_[A]||A)+"'":ee="Parse error on line "+(v+1)+": Unexpected "+(A==E?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(ee,{text:k.match,token:this.terminals_[A]||A,line:k.yylineno,loc:R,expected:K})}if(M[0]instanceof Array&&M.length>1)throw new Error("Parse Error: multiple actions possible at state: "+N+", token: "+A);switch(M[0]){case 1:f.push(A),p.push(k.yytext),m.push(k.yylloc),f.push(M[1]),A=null,_?(A=_,_=null):(x=k.yyleng,y=k.yytext,v=k.yylineno,R=k.yylloc,b>0&&b--);break;case 2:if($=this.productions_[M[1]][1],F.$=p[p.length-$],F._$={first_line:m[m.length-($||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-($||1)].first_column,last_column:m[m.length-1].last_column},O&&(F._$.range=[m[m.length-($||1)].range[0],m[m.length-1].range[1]]),B=this.performAction.apply(F,[y,x,v,C.yy,M[1],p,m].concat(w)),typeof B<"u")return B;$&&(f=f.slice(0,-1*$*2),p=p.slice(0,-1*$),m=m.slice(0,-1*$)),f.push(this.productions_[M[1]][0]),p.push(F.$),m.push(F._$),V=g[f[f.length-2]][f[f.length-1]],f.push(V);break;case 3:return!0}}return!0},"parse")},a=(function(){var l={EOF:1,parseError:o(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:o(function(u,h){return this.yy=h||this.yy||{},this._input=u,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var h=u.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},"input"),unput:o(function(u){var h=u.length,f=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===d.length?this.yylloc.first_column:0)+d[d.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(u){this.unput(this.match.slice(u))},"less"),pastInput:o(function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var u=this.pastInput(),h=new Array(u.length+1).join("-");return u+this.upcomingInput()+` `+h+"^"},"showPosition"),test_match:o(function(u,h){var f,d,p;if(this.options.backtrack_lexer&&(p={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(p.yylloc.range=this.yylloc.range.slice(0))),d=u[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+u[0].length},this.yytext+=u[0],this.match+=u[0],this.matches=u,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(u[0].length),this.matched+=u[0],f=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)return f;if(this._backtrack){for(var m in p)this[m]=p[m];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,h,f,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;mh[0].length)){if(h=f,d=m,this.options.backtrack_lexer){if(u=this.test_match(f,p[m]),u!==!1)return u;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(u=this.test_match(h,p[d]),u!==!1?u:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var h=this.next();return h||this.lex()},"lex"),begin:o(function(h){this.conditionStack.push(h)},"begin"),popState:o(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:o(function(h){this.begin(h)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(h,f,d,p){var m=p;switch(d){case 0:return this.pushState("csv"),4;break;case 1:return this.pushState("csv"),4;break;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;break;case 6:return 20;case 7:return this.popState("escaped_text"),18;break;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}};return l})();i.lexer=a;function s(){this.yy={}}return o(s,"Parser"),s.prototype=i,i.Parser=s,new s})();Z$.parser=Z$;_4=Z$});var kC,EC,wC,nrt,J$,irt,ez,art,srt,ort,lrt,bxe,Txe=M(()=>{"use strict";Xt();gr();ci();kC=[],EC=[],wC=new Map,nrt=o(()=>{kC=[],EC=[],wC=new Map,Sr()},"clear"),J$=class{constructor(e,r,n=0){this.source=e;this.target=r;this.value=n}static{o(this,"SankeyLink")}},irt=o((t,e,r)=>{kC.push(new J$(t,e,r))},"addLink"),ez=class{constructor(e){this.ID=e}static{o(this,"SankeyNode")}},art=o(t=>{t=tt.sanitizeText(t,ge());let e=wC.get(t);return e===void 0&&(e=new ez(t),wC.set(t,e),EC.push(e)),e},"findOrCreateNode"),srt=o(()=>EC,"getNodes"),ort=o(()=>kC,"getLinks"),lrt=o(()=>({nodes:EC.map(t=>({id:t.ID})),links:kC.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),bxe={nodesMap:wC,getConfig:o(()=>ge().sankey,"getConfig"),getNodes:srt,getLinks:ort,getGraph:lrt,addLink:irt,findOrCreateNode:art,getAccTitle:Mr,setAccTitle:Rr,getAccDescription:Or,setAccDescription:Ir,getDiagramTitle:Pr,setDiagramTitle:$r,clear:nrt}});function D4(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var wxe=M(()=>{"use strict";o(D4,"max")});function py(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var kxe=M(()=>{"use strict";o(py,"min")});function my(t,e){let r=0;if(e===void 0)for(let n of t)(n=+n)&&(r+=n);else{let n=-1;for(let i of t)(i=+e(i,++n,t))&&(r+=i)}return r}var Exe=M(()=>{"use strict";o(my,"sum")});var tz=M(()=>{"use strict";wxe();kxe();Exe()});function crt(t){return t.target.depth}function rz(t){return t.depth}function nz(t,e){return e-1-t.height}function L4(t,e){return t.sourceLinks.length?t.depth:e-1}function iz(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?py(t.sourceLinks,crt)-1:0}var az=M(()=>{"use strict";tz();o(crt,"targetDepth");o(rz,"left");o(nz,"right");o(L4,"justify");o(iz,"center")});function gy(t){return function(){return t}}var Sxe=M(()=>{"use strict";o(gy,"constant")});function Cxe(t,e){return SC(t.source,e.source)||t.index-e.index}function Axe(t,e){return SC(t.target,e.target)||t.index-e.index}function SC(t,e){return t.y0-e.y0}function sz(t){return t.value}function urt(t){return t.index}function hrt(t){return t.nodes}function frt(t){return t.links}function _xe(t,e){let r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function Dxe({nodes:t}){for(let e of t){let r=e.y0,n=r;for(let i of e.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of e.targetLinks)i.y1=n+i.width/2,n+=i.width}}function CC(){let t=0,e=0,r=1,n=1,i=24,a=8,s,l=urt,u=L4,h,f,d=hrt,p=frt,m=6;function g(){let O={nodes:d.apply(null,arguments),links:p.apply(null,arguments)};return y(O),v(O),x(O),b(O),w(O),Dxe(O),O}o(g,"sankey"),g.update=function(O){return Dxe(O),O},g.nodeId=function(O){return arguments.length?(l=typeof O=="function"?O:gy(O),g):l},g.nodeAlign=function(O){return arguments.length?(u=typeof O=="function"?O:gy(O),g):u},g.nodeSort=function(O){return arguments.length?(h=O,g):h},g.nodeWidth=function(O){return arguments.length?(i=+O,g):i},g.nodePadding=function(O){return arguments.length?(a=s=+O,g):a},g.nodes=function(O){return arguments.length?(d=typeof O=="function"?O:gy(O),g):d},g.links=function(O){return arguments.length?(p=typeof O=="function"?O:gy(O),g):p},g.linkSort=function(O){return arguments.length?(f=O,g):f},g.size=function(O){return arguments.length?(t=e=0,r=+O[0],n=+O[1],g):[r-t,n-e]},g.extent=function(O){return arguments.length?(t=+O[0][0],r=+O[1][0],e=+O[0][1],n=+O[1][1],g):[[t,e],[r,n]]},g.iterations=function(O){return arguments.length?(m=+O,g):m};function y({nodes:O,links:N}){for(let[B,F]of O.entries())F.index=B,F.sourceLinks=[],F.targetLinks=[];let P=new Map(O.map((B,F)=>[l(B,F,O),B]));for(let[B,F]of N.entries()){F.index=B;let{source:V,target:$}=F;typeof V!="object"&&(V=F.source=_xe(P,V)),typeof $!="object"&&($=F.target=_xe(P,$)),V.sourceLinks.push(F),$.targetLinks.push(F)}if(f!=null)for(let{sourceLinks:B,targetLinks:F}of O)B.sort(f),F.sort(f)}o(y,"computeNodeLinks");function v({nodes:O}){for(let N of O)N.value=N.fixedValue===void 0?Math.max(my(N.sourceLinks,sz),my(N.targetLinks,sz)):N.fixedValue}o(v,"computeNodeValues");function x({nodes:O}){let N=O.length,P=new Set(O),B=new Set,F=0;for(;P.size;){for(let V of P){V.depth=F;for(let{target:$}of V.sourceLinks)B.add($)}if(++F>N)throw new Error("circular link");P=B,B=new Set}}o(x,"computeNodeDepths");function b({nodes:O}){let N=O.length,P=new Set(O),B=new Set,F=0;for(;P.size;){for(let V of P){V.height=F;for(let{source:$}of V.targetLinks)B.add($)}if(++F>N)throw new Error("circular link");P=B,B=new Set}}o(b,"computeNodeHeights");function T({nodes:O}){let N=D4(O,F=>F.depth)+1,P=(r-t-i)/(N-1),B=new Array(N);for(let F of O){let V=Math.max(0,Math.min(N-1,Math.floor(u.call(null,F,N))));F.layer=V,F.x0=t+V*P,F.x1=F.x0+i,B[V]?B[V].push(F):B[V]=[F]}if(h)for(let F of B)F.sort(h);return B}o(T,"computeNodeLayers");function S(O){let N=py(O,P=>(n-e-(P.length-1)*s)/my(P,sz));for(let P of O){let B=e;for(let F of P){F.y0=B,F.y1=B+F.value*N,B=F.y1+s;for(let V of F.sourceLinks)V.width=V.value*N}B=(n-B+s)/(P.length+1);for(let F=0;FP.length)-1)),S(N);for(let P=0;P0))continue;let ee=(U/j-$.y0)*N;$.y0+=ee,$.y1+=ee,R($)}h===void 0&&V.sort(SC),A(V,P)}}o(k,"relaxLeftToRight");function C(O,N,P){for(let B=O.length,F=B-2;F>=0;--F){let V=O[F];for(let $ of V){let U=0,j=0;for(let{target:q,value:oe}of $.sourceLinks){let Q=oe*(q.layer-$.layer);U+=D($,q)*Q,j+=Q}if(!(j>0))continue;let ee=(U/j-$.y0)*N;$.y0+=ee,$.y1+=ee,R($)}h===void 0&&V.sort(SC),A(V,P)}}o(C,"relaxRightToLeft");function A(O,N){let P=O.length>>1,B=O[P];I(O,B.y0-s,P-1,N),L(O,B.y1+s,P+1,N),I(O,n,O.length-1,N),L(O,e,0,N)}o(A,"resolveCollisions");function L(O,N,P,B){for(;P1e-6&&(F.y0+=V,F.y1+=V),N=F.y1+s}}o(L,"resolveCollisionsTopToBottom");function I(O,N,P,B){for(;P>=0;--P){let F=O[P],V=(F.y1-N)*B;V>1e-6&&(F.y0-=V,F.y1-=V),N=F.y0-s}}o(I,"resolveCollisionsBottomToTop");function R({sourceLinks:O,targetLinks:N}){if(f===void 0){for(let{source:{sourceLinks:P}}of N)P.sort(Axe);for(let{target:{targetLinks:P}}of O)P.sort(Cxe)}}o(R,"reorderNodeLinks");function E(O){if(f===void 0)for(let{sourceLinks:N,targetLinks:P}of O)N.sort(Axe),P.sort(Cxe)}o(E,"reorderLinks");function _(O,N){let P=O.y0-(O.sourceLinks.length-1)*s/2;for(let{target:B,width:F}of O.sourceLinks){if(B===N)break;P+=F+s}for(let{source:B,width:F}of N.targetLinks){if(B===O)break;P-=F}return P}o(_,"targetTop");function D(O,N){let P=N.y0-(N.targetLinks.length-1)*s/2;for(let{source:B,width:F}of N.targetLinks){if(B===O)break;P+=F+s}for(let{target:B,width:F}of O.sourceLinks){if(B===N)break;P-=F}return P}return o(D,"sourceTop"),g}var Lxe=M(()=>{"use strict";tz();az();Sxe();o(Cxe,"ascendingSourceBreadth");o(Axe,"ascendingTargetBreadth");o(SC,"ascendingBreadth");o(sz,"value");o(urt,"defaultId");o(hrt,"defaultNodes");o(frt,"defaultLinks");o(_xe,"find");o(Dxe,"computeLinkBreadths");o(CC,"Sankey")});function cz(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Rxe(){return new cz}var oz,lz,f0,drt,uz,Nxe=M(()=>{"use strict";oz=Math.PI,lz=2*oz,f0=1e-6,drt=lz-f0;o(cz,"Path");o(Rxe,"path");cz.prototype=Rxe.prototype={constructor:cz,moveTo:o(function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},"lineTo"),quadraticCurveTo:o(function(t,e,r,n){this._+="Q"+ +t+","+ +e+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._+="C"+ +t+","+ +e+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(t,e,r,n,i){t=+t,e=+e,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-t,u=n-e,h=a-t,f=s-e,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>f0)if(!(Math.abs(f*l-u*h)>f0)||!i)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var p=r-a,m=n-s,g=l*l+u*u,y=p*p+m*m,v=Math.sqrt(g),x=Math.sqrt(d),b=i*Math.tan((oz-Math.acos((g+d-y)/(2*v*x)))/2),T=b/x,S=b/v;Math.abs(T-1)>f0&&(this._+="L"+(t+T*h)+","+(e+T*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=t+S*l)+","+(this._y1=e+S*u)}},"arcTo"),arc:o(function(t,e,r,n,i,a){t=+t,e=+e,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=t+s,h=e+l,f=1^a,d=a?n-i:i-n;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+u+","+h:(Math.abs(this._x1-u)>f0||Math.abs(this._y1-h)>f0)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%lz+lz),d>drt?this._+="A"+r+","+r+",0,1,"+f+","+(t-s)+","+(e-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>f0&&(this._+="A"+r+","+r+",0,"+ +(d>=oz)+","+f+","+(this._x1=t+r*Math.cos(i))+","+(this._y1=e+r*Math.sin(i))))},"arc"),rect:o(function(t,e,r,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};uz=Rxe});var Mxe=M(()=>{"use strict";Nxe()});function AC(t){return o(function(){return t},"constant")}var Ixe=M(()=>{"use strict";o(AC,"default")});function Oxe(t){return t[0]}function Pxe(t){return t[1]}var Bxe=M(()=>{"use strict";o(Oxe,"x");o(Pxe,"y")});var Fxe,$xe=M(()=>{"use strict";Fxe=Array.prototype.slice});function prt(t){return t.source}function mrt(t){return t.target}function grt(t){var e=prt,r=mrt,n=Oxe,i=Pxe,a=null;function s(){var l,u=Fxe.call(arguments),h=e.apply(this,u),f=r.apply(this,u);if(a||(a=l=uz()),t(a,+n.apply(this,(u[0]=h,u)),+i.apply(this,u),+n.apply(this,(u[0]=f,u)),+i.apply(this,u)),l)return a=null,l+""||null}return o(s,"link"),s.source=function(l){return arguments.length?(e=l,s):e},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:AC(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:AC(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function yrt(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function hz(){return grt(yrt)}var zxe=M(()=>{"use strict";Mxe();$xe();Ixe();Bxe();o(prt,"linkSource");o(mrt,"linkTarget");o(grt,"link");o(yrt,"curveHorizontal");o(hz,"linkHorizontal")});var Gxe=M(()=>{"use strict";zxe()});function vrt(t){return[t.source.x1,t.y0]}function xrt(t){return[t.target.x0,t.y1]}function _C(){return hz().source(vrt).target(xrt)}var Vxe=M(()=>{"use strict";Gxe();o(vrt,"horizontalSource");o(xrt,"horizontalTarget");o(_C,"default")});var Uxe=M(()=>{"use strict";Lxe();az();Vxe()});var R4,Hxe=M(()=>{"use strict";R4=class t{static{o(this,"Uid")}static{this.count=0}static next(e){return new t(e+ ++t.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}}});var brt,Trt,qxe,Wxe=M(()=>{"use strict";Xt();yr();Uxe();Ei();Hxe();brt={left:rz,right:nz,center:iz,justify:L4},Trt=o(function(t,e,r,n){let{securityLevel:i,sankey:a}=ge(),s=V3.sankey,l;i==="sandbox"&&(l=qe("#i"+e));let u=i==="sandbox"?qe(l.nodes()[0].contentDocument.body):qe("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):qe(`[id="${e}"]`),f=a?.width??s.width,d=a?.height??s.width,p=a?.useMaxWidth??s.useMaxWidth,m=a?.nodeAlignment??s.nodeAlignment,g=a?.prefix??s.prefix,y=a?.suffix??s.suffix,v=a?.showValues??s.showValues,x=n.db.getGraph(),b=brt[m];CC().nodeId(I=>I.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let w=no(YD);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",I=>(I.uid=R4.next("node-")).id).attr("transform",function(I){return"translate("+I.x0+","+I.y0+")"}).attr("x",I=>I.x0).attr("y",I=>I.y0).append("rect").attr("height",I=>I.y1-I.y0).attr("width",I=>I.x1-I.x0).attr("fill",I=>w(I.id));let k=o(({id:I,value:R})=>v?`${I} -${g}${Math.round(R*100)/100}${y}`:I,"getText");h.append("g").attr("class","node-labels").attr("font-size",14).selectAll("text").data(x.nodes).join("text").attr("x",I=>I.x0(I.y1+I.y0)/2).attr("dy",`${v?"0":"0.35"}em`).attr("text-anchor",I=>I.x0(R.uid=R4.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",R=>R.source.x1).attr("x2",R=>R.target.x0);I.append("stop").attr("offset","0%").attr("stop-color",R=>w(R.source.id)),I.append("stop").attr("offset","100%").attr("stop-color",R=>w(R.target.id))}let L;switch(A){case"gradient":L=o(I=>I.uid,"coloring");break;case"source":L=o(I=>w(I.source.id),"coloring");break;case"target":L=o(I=>w(I.target.id),"coloring");break;default:L=A}C.append("path").attr("d",_C()).attr("stroke",L).attr("stroke-width",I=>Math.max(1,I.width)),ic(void 0,h,0,p)},"draw"),qxe={draw:Trt}});var Yxe,Xxe=M(()=>{"use strict";Yxe=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` -`).trim(),"prepareTextForParsing")});var wrt,jxe,Kxe=M(()=>{"use strict";wrt=o(t=>`.label { +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var h=this.next();return h||this.lex()},"lex"),begin:o(function(h){this.conditionStack.push(h)},"begin"),popState:o(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:o(function(h){this.begin(h)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(h,f,d,p){var m=p;switch(d){case 0:return this.pushState("csv"),4;break;case 1:return this.pushState("csv"),4;break;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;break;case 6:return 20;case 7:return this.popState("escaped_text"),18;break;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}};return l})();i.lexer=a;function s(){this.yy={}}return o(s,"Parser"),s.prototype=i,i.Parser=s,new s})();PU.parser=PU;u3=PU});var Z7,J7,Q7,tut,BU,rut,FU,nut,iut,aut,sut,Cke,Ake=I(()=>{"use strict";Qt();wr();ki();Z7=[],J7=[],Q7=new Map,tut=o(()=>{Z7=[],J7=[],Q7=new Map,Mr()},"clear"),BU=class{constructor(e,r,n=0){this.source=e;this.target=r;this.value=n}static{o(this,"SankeyLink")}},rut=o((t,e,r)=>{Z7.push(new BU(t,e,r))},"addLink"),FU=class{constructor(e){this.ID=e}static{o(this,"SankeyNode")}},nut=o(t=>{t=nt.sanitizeText(t,xe());let e=Q7.get(t);return e===void 0&&(e=new FU(t),Q7.set(t,e),J7.push(e)),e},"findOrCreateNode"),iut=o(()=>J7,"getNodes"),aut=o(()=>Z7,"getLinks"),sut=o(()=>({nodes:J7.map(t=>({id:t.ID})),links:Z7.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),Cke={nodesMap:Q7,getConfig:o(()=>xe().sankey,"getConfig"),getNodes:iut,getLinks:aut,getGraph:sut,addLink:rut,findOrCreateNode:nut,getAccTitle:Vr,setAccTitle:zr,getAccDescription:Ur,setAccDescription:qr,getDiagramTitle:Wr,setDiagramTitle:Xr,clear:tut}});function h3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var _ke=I(()=>{"use strict";o(h3,"max")});function Bv(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var Dke=I(()=>{"use strict";o(Bv,"min")});function Fv(t,e){let r=0;if(e===void 0)for(let n of t)(n=+n)&&(r+=n);else{let n=-1;for(let i of t)(i=+e(i,++n,t))&&(r+=i)}return r}var Rke=I(()=>{"use strict";o(Fv,"sum")});var $U=I(()=>{"use strict";_ke();Dke();Rke()});function out(t){return t.target.depth}function zU(t){return t.depth}function GU(t,e){return e-1-t.height}function f3(t,e){return t.sourceLinks.length?t.depth:e-1}function VU(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?Bv(t.sourceLinks,out)-1:0}var qU=I(()=>{"use strict";$U();o(out,"targetDepth");o(zU,"left");o(GU,"right");o(f3,"justify");o(VU,"center")});function $v(t){return function(){return t}}var Lke=I(()=>{"use strict";o($v,"constant")});function Nke(t,e){return e8(t.source,e.source)||t.index-e.index}function Mke(t,e){return e8(t.target,e.target)||t.index-e.index}function e8(t,e){return t.y0-e.y0}function UU(t){return t.value}function lut(t){return t.index}function cut(t){return t.nodes}function uut(t){return t.links}function Ike(t,e){let r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function Oke({nodes:t}){for(let e of t){let r=e.y0,n=r;for(let i of e.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of e.targetLinks)i.y1=n+i.width/2,n+=i.width}}function t8(){let t=0,e=0,r=1,n=1,i=24,a=8,s,l=lut,u=f3,h,f,d=cut,p=uut,m=6;function g(){let N={nodes:d.apply(null,arguments),links:p.apply(null,arguments)};return y(N),v(N),x(N),b(N),w(N),Oke(N),N}o(g,"sankey"),g.update=function(N){return Oke(N),N},g.nodeId=function(N){return arguments.length?(l=typeof N=="function"?N:$v(N),g):l},g.nodeAlign=function(N){return arguments.length?(u=typeof N=="function"?N:$v(N),g):u},g.nodeSort=function(N){return arguments.length?(h=N,g):h},g.nodeWidth=function(N){return arguments.length?(i=+N,g):i},g.nodePadding=function(N){return arguments.length?(a=s=+N,g):a},g.nodes=function(N){return arguments.length?(d=typeof N=="function"?N:$v(N),g):d},g.links=function(N){return arguments.length?(p=typeof N=="function"?N:$v(N),g):p},g.linkSort=function(N){return arguments.length?(f=N,g):f},g.size=function(N){return arguments.length?(t=e=0,r=+N[0],n=+N[1],g):[r-t,n-e]},g.extent=function(N){return arguments.length?(t=+N[0][0],r=+N[1][0],e=+N[0][1],n=+N[1][1],g):[[t,e],[r,n]]},g.iterations=function(N){return arguments.length?(m=+N,g):m};function y({nodes:N,links:M}){for(let[B,F]of N.entries())F.index=B,F.sourceLinks=[],F.targetLinks=[];let P=new Map(N.map((B,F)=>[l(B,F,N),B]));for(let[B,F]of M.entries()){F.index=B;let{source:G,target:$}=F;typeof G!="object"&&(G=F.source=Ike(P,G)),typeof $!="object"&&($=F.target=Ike(P,$)),G.sourceLinks.push(F),$.targetLinks.push(F)}if(f!=null)for(let{sourceLinks:B,targetLinks:F}of N)B.sort(f),F.sort(f)}o(y,"computeNodeLinks");function v({nodes:N}){for(let M of N)M.value=M.fixedValue===void 0?Math.max(Fv(M.sourceLinks,UU),Fv(M.targetLinks,UU)):M.fixedValue}o(v,"computeNodeValues");function x({nodes:N}){let M=N.length,P=new Set(N),B=new Set,F=0;for(;P.size;){for(let G of P){G.depth=F;for(let{target:$}of G.sourceLinks)B.add($)}if(++F>M)throw new Error("circular link");P=B,B=new Set}}o(x,"computeNodeDepths");function b({nodes:N}){let M=N.length,P=new Set(N),B=new Set,F=0;for(;P.size;){for(let G of P){G.height=F;for(let{source:$}of G.targetLinks)B.add($)}if(++F>M)throw new Error("circular link");P=B,B=new Set}}o(b,"computeNodeHeights");function T({nodes:N}){let M=h3(N,F=>F.depth)+1,P=(r-t-i)/(M-1),B=new Array(M);for(let F of N){let G=Math.max(0,Math.min(M-1,Math.floor(u.call(null,F,M))));F.layer=G,F.x0=t+G*P,F.x1=F.x0+i,B[G]?B[G].push(F):B[G]=[F]}if(h)for(let F of B)F.sort(h);return B}o(T,"computeNodeLayers");function E(N){let M=Bv(N,P=>(n-e-(P.length-1)*s)/Fv(P,UU));for(let P of N){let B=e;for(let F of P){F.y0=B,F.y1=B+F.value*M,B=F.y1+s;for(let G of F.sourceLinks)G.width=G.value*M}B=(n-B+s)/(P.length+1);for(let F=0;FP.length)-1)),E(M);for(let P=0;P0))continue;let ee=(V/K-$.y0)*M;$.y0+=ee,$.y1+=ee,L($)}h===void 0&&G.sort(e8),D(G,P)}}o(k,"relaxLeftToRight");function C(N,M,P){for(let B=N.length,F=B-2;F>=0;--F){let G=N[F];for(let $ of G){let V=0,K=0;for(let{target:H,value:he}of $.sourceLinks){let Z=he*(H.layer-$.layer);V+=_($,H)*Z,K+=Z}if(!(K>0))continue;let ee=(V/K-$.y0)*M;$.y0+=ee,$.y1+=ee,L($)}h===void 0&&G.sort(e8),D(G,P)}}o(C,"relaxRightToLeft");function D(N,M){let P=N.length>>1,B=N[P];O(N,B.y0-s,P-1,M),R(N,B.y1+s,P+1,M),O(N,n,N.length-1,M),R(N,e,0,M)}o(D,"resolveCollisions");function R(N,M,P,B){for(;P1e-6&&(F.y0+=G,F.y1+=G),M=F.y1+s}}o(R,"resolveCollisionsTopToBottom");function O(N,M,P,B){for(;P>=0;--P){let F=N[P],G=(F.y1-M)*B;G>1e-6&&(F.y0-=G,F.y1-=G),M=F.y0-s}}o(O,"resolveCollisionsBottomToTop");function L({sourceLinks:N,targetLinks:M}){if(f===void 0){for(let{source:{sourceLinks:P}}of M)P.sort(Mke);for(let{target:{targetLinks:P}}of N)P.sort(Nke)}}o(L,"reorderNodeLinks");function S(N){if(f===void 0)for(let{sourceLinks:M,targetLinks:P}of N)M.sort(Mke),P.sort(Nke)}o(S,"reorderLinks");function A(N,M){let P=N.y0-(N.sourceLinks.length-1)*s/2;for(let{target:B,width:F}of N.sourceLinks){if(B===M)break;P+=F+s}for(let{source:B,width:F}of M.targetLinks){if(B===N)break;P-=F}return P}o(A,"targetTop");function _(N,M){let P=M.y0-(M.targetLinks.length-1)*s/2;for(let{source:B,width:F}of M.targetLinks){if(B===N)break;P+=F+s}for(let{target:B,width:F}of N.sourceLinks){if(B===M)break;P-=F}return P}return o(_,"sourceTop"),g}var Pke=I(()=>{"use strict";$U();qU();Lke();o(Nke,"ascendingSourceBreadth");o(Mke,"ascendingTargetBreadth");o(e8,"ascendingBreadth");o(UU,"value");o(lut,"defaultId");o(cut,"defaultNodes");o(uut,"defaultLinks");o(Ike,"find");o(Oke,"computeLinkBreadths");o(t8,"Sankey")});function YU(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Bke(){return new YU}var WU,HU,Xm,hut,jU,Fke=I(()=>{"use strict";WU=Math.PI,HU=2*WU,Xm=1e-6,hut=HU-Xm;o(YU,"Path");o(Bke,"path");YU.prototype=Bke.prototype={constructor:YU,moveTo:o(function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},"lineTo"),quadraticCurveTo:o(function(t,e,r,n){this._+="Q"+ +t+","+ +e+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._+="C"+ +t+","+ +e+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(t,e,r,n,i){t=+t,e=+e,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-t,u=n-e,h=a-t,f=s-e,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>Xm)if(!(Math.abs(f*l-u*h)>Xm)||!i)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var p=r-a,m=n-s,g=l*l+u*u,y=p*p+m*m,v=Math.sqrt(g),x=Math.sqrt(d),b=i*Math.tan((WU-Math.acos((g+d-y)/(2*v*x)))/2),T=b/x,E=b/v;Math.abs(T-1)>Xm&&(this._+="L"+(t+T*h)+","+(e+T*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=t+E*l)+","+(this._y1=e+E*u)}},"arcTo"),arc:o(function(t,e,r,n,i,a){t=+t,e=+e,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=t+s,h=e+l,f=1^a,d=a?n-i:i-n;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+u+","+h:(Math.abs(this._x1-u)>Xm||Math.abs(this._y1-h)>Xm)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%HU+HU),d>hut?this._+="A"+r+","+r+",0,1,"+f+","+(t-s)+","+(e-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>Xm&&(this._+="A"+r+","+r+",0,"+ +(d>=WU)+","+f+","+(this._x1=t+r*Math.cos(i))+","+(this._y1=e+r*Math.sin(i))))},"arc"),rect:o(function(t,e,r,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};jU=Bke});var $ke=I(()=>{"use strict";Fke()});function r8(t){return o(function(){return t},"constant")}var zke=I(()=>{"use strict";o(r8,"default")});function Gke(t){return t[0]}function Vke(t){return t[1]}var qke=I(()=>{"use strict";o(Gke,"x");o(Vke,"y")});var Uke,Wke=I(()=>{"use strict";Uke=Array.prototype.slice});function fut(t){return t.source}function dut(t){return t.target}function put(t){var e=fut,r=dut,n=Gke,i=Vke,a=null;function s(){var l,u=Uke.call(arguments),h=e.apply(this,u),f=r.apply(this,u);if(a||(a=l=jU()),t(a,+n.apply(this,(u[0]=h,u)),+i.apply(this,u),+n.apply(this,(u[0]=f,u)),+i.apply(this,u)),l)return a=null,l+""||null}return o(s,"link"),s.source=function(l){return arguments.length?(e=l,s):e},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:r8(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:r8(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function mut(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function XU(){return put(mut)}var Hke=I(()=>{"use strict";$ke();Wke();zke();qke();o(fut,"linkSource");o(dut,"linkTarget");o(put,"link");o(mut,"curveHorizontal");o(XU,"linkHorizontal")});var Yke=I(()=>{"use strict";Hke()});function gut(t){return[t.source.x1,t.y0]}function yut(t){return[t.target.x0,t.y1]}function n8(){return XU().source(gut).target(yut)}var jke=I(()=>{"use strict";Yke();o(gut,"horizontalSource");o(yut,"horizontalTarget");o(n8,"default")});var Xke=I(()=>{"use strict";Pke();qU();jke()});var d3,Kke=I(()=>{"use strict";d3=class t{static{o(this,"Uid")}static{this.count=0}static next(e){return new t(e+ ++t.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}}});var vut,xut,Qke,Zke=I(()=>{"use strict";Qt();kr();Xke();Fi();Kke();vut={left:zU,right:GU,center:VU,justify:f3},xut=o(function(t,e,r,n){let{securityLevel:i,sankey:a}=xe(),s=Ew.sankey,l;i==="sandbox"&&(l=He("#i"+e));let u=i==="sandbox"?He(l.nodes()[0].contentDocument.body):He("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):He(`[id="${e}"]`),f=a?.width??s.width,d=a?.height??s.width,p=a?.useMaxWidth??s.useMaxWidth,m=a?.nodeAlignment??s.nodeAlignment,g=a?.prefix??s.prefix,y=a?.suffix??s.suffix,v=a?.showValues??s.showValues,x=n.db.getGraph(),b=vut[m];t8().nodeId(O=>O.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let w=Lo(w9);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",O=>(O.uid=d3.next("node-")).id).attr("transform",function(O){return"translate("+O.x0+","+O.y0+")"}).attr("x",O=>O.x0).attr("y",O=>O.y0).append("rect").attr("height",O=>O.y1-O.y0).attr("width",O=>O.x1-O.x0).attr("fill",O=>w(O.id));let k=o(({id:O,value:L})=>v?`${O} +${g}${Math.round(L*100)/100}${y}`:O,"getText");h.append("g").attr("class","node-labels").attr("font-size",14).selectAll("text").data(x.nodes).join("text").attr("x",O=>O.x0(O.y1+O.y0)/2).attr("dy",`${v?"0":"0.35"}em`).attr("text-anchor",O=>O.x0(L.uid=d3.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",L=>L.source.x1).attr("x2",L=>L.target.x0);O.append("stop").attr("offset","0%").attr("stop-color",L=>w(L.source.id)),O.append("stop").attr("offset","100%").attr("stop-color",L=>w(L.target.id))}let R;switch(D){case"gradient":R=o(O=>O.uid,"coloring");break;case"source":R=o(O=>w(O.source.id),"coloring");break;case"target":R=o(O=>w(O.target.id),"coloring");break;default:R=D}C.append("path").attr("d",n8()).attr("stroke",R).attr("stroke-width",O=>Math.max(1,O.width)),Vc(void 0,h,0,p)},"draw"),Qke={draw:xut}});var Jke,eSe=I(()=>{"use strict";Jke=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),"prepareTextForParsing")});var but,tSe,rSe=I(()=>{"use strict";but=o(t=>`.label { font-family: ${t.fontFamily}; - }`,"getStyles"),jxe=wrt});var Qxe={};dr(Qxe,{diagram:()=>Ert});var krt,Ert,Zxe=M(()=>{"use strict";xxe();Txe();Wxe();Xxe();Kxe();krt=_4.parse.bind(_4);_4.parse=t=>krt(Yxe(t));Ert={styles:jxe,parser:_4,db:bxe,renderer:qxe}});var _rt,yy,fz=M(()=>{"use strict";qn();Ra();tr();ci();_rt=ur.packet,yy=class{constructor(){this.packet=[];this.setAccTitle=Rr;this.getAccTitle=Mr;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.getAccDescription=Or;this.setAccDescription=Ir}static{o(this,"PacketDB")}getConfig(){let e=Vn({..._rt,...Qt().packet});return e.showBits&&(e.paddingY+=10),e}getPacket(){return this.packet}pushWord(e){e.length>0&&this.packet.push(e)}clear(){Sr(),this.packet=[]}}});var Drt,Lrt,Rrt,dz,tbe=M(()=>{"use strict";Uf();pt();r0();fz();Drt=1e4,Lrt=o((t,e)=>{nl(t,e);let r=-1,n=[],i=1,{bitsPerRow:a}=e.getConfig();for(let{start:s,end:l,bits:u,label:h}of t.blocks){if(s!==void 0&&l!==void 0&&l{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];let n=e*r-1,i=e*r;return[{start:t.start,end:n,label:t.label,bits:n-t.start},{start:i,end:t.end,label:t.label,bits:t.end-i}]},"getNextFittingBlock"),dz={parser:{yy:void 0},parse:o(async t=>{let e=await bs("packet",t),r=dz.parser?.yy;if(!(r instanceof yy))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");X.debug(e),Lrt(e,r)},"parse")}});var Nrt,Mrt,rbe,nbe=M(()=>{"use strict";tu();Ei();Nrt=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),{rowHeight:s,paddingY:l,bitWidth:u,bitsPerRow:h}=a,f=i.getPacket(),d=i.getDiagramTitle(),p=s+l,m=p*(f.length+1)-(d?0:s),g=u*h+2,y=aa(e);y.attr("viewbox",`0 0 ${g} ${m}`),mn(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())Mrt(y,x,v,a);y.append("text").text(d).attr("x",g/2).attr("y",m-p/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),Mrt=o((t,e,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=t.append("g"),f=r*(n+a)+a;for(let d of e){let p=d.start%l*s+1,m=(d.end-d.start+1)*s-i;if(h.append("rect").attr("x",p).attr("y",f).attr("width",m).attr("height",n).attr("class","packetBlock"),h.append("text").attr("x",p+m/2).attr("y",f+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(d.label),!u)continue;let g=d.end===d.start,y=f-2;h.append("text").attr("x",p+(g?m/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",g?"middle":"start").text(d.start),g||h.append("text").attr("x",p+m).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(d.end)}},"drawWord"),rbe={draw:Nrt}});var Irt,ibe,abe=M(()=>{"use strict";tr();Irt={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},ibe=o(({packet:t}={})=>{let e=Vn(Irt,t);return` + }`,"getStyles"),tSe=but});var nSe={};vr(nSe,{diagram:()=>wut});var Tut,wut,iSe=I(()=>{"use strict";Eke();Ake();Zke();eSe();rSe();Tut=u3.parse.bind(u3);u3.parse=t=>Tut(Jke(t));wut={styles:tSe,parser:u3,db:Cke,renderer:Qke}});var Cut,zv,KU=I(()=>{"use strict";ti();Ka();sr();ki();Cut=gr.packet,zv=class{constructor(){this.packet=[];this.setAccTitle=zr;this.getAccTitle=Vr;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.getAccDescription=Ur;this.setAccDescription=qr}static{o(this,"PacketDB")}getConfig(){let e=Qn({...Cut,...tr().packet});return e.showBits&&(e.paddingY+=10),e}getPacket(){return this.packet}pushWord(e){e.length>0&&this.packet.push(e)}clear(){Mr(),this.packet=[]}}});var Aut,_ut,Dut,QU,oSe=I(()=>{"use strict";sp();gt();$m();KU();Aut=1e4,_ut=o((t,e)=>{Pl(t,e);let r=-1,n=[],i=1,{bitsPerRow:a}=e.getConfig();for(let{start:s,end:l,bits:u,label:h}of t.blocks){if(s!==void 0&&l!==void 0&&l{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];let n=e*r-1,i=e*r;return[{start:t.start,end:n,label:t.label,bits:n-t.start},{start:i,end:t.end,label:t.label,bits:t.end-i}]},"getNextFittingBlock"),QU={parser:{yy:void 0},parse:o(async t=>{let e=await Vs("packet",t),r=QU.parser?.yy;if(!(r instanceof zv))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");X.debug(e),_ut(e,r)},"parse")}});var Rut,Lut,lSe,cSe=I(()=>{"use strict";Uu();Fi();Rut=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),{rowHeight:s,paddingY:l,bitWidth:u,bitsPerRow:h}=a,f=i.getPacket(),d=i.getDiagramTitle(),p=s+l,m=p*(f.length+1)-(d?0:s),g=u*h+2,y=Ca(e);y.attr("viewbox",`0 0 ${g} ${m}`),Sn(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())Lut(y,x,v,a);y.append("text").text(d).attr("x",g/2).attr("y",m-p/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),Lut=o((t,e,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=t.append("g"),f=r*(n+a)+a;for(let d of e){let p=d.start%l*s+1,m=(d.end-d.start+1)*s-i;if(h.append("rect").attr("x",p).attr("y",f).attr("width",m).attr("height",n).attr("class","packetBlock"),h.append("text").attr("x",p+m/2).attr("y",f+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(d.label),!u)continue;let g=d.end===d.start,y=f-2;h.append("text").attr("x",p+(g?m/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",g?"middle":"start").text(d.start),g||h.append("text").attr("x",p+m).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(d.end)}},"drawWord"),lSe={draw:Rut}});var Nut,uSe,hSe=I(()=>{"use strict";sr();Nut={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},uSe=o(({packet:t}={})=>{let e=Qn(Nut,t);return` .packetByte { font-size: ${e.byteFontSize}; } @@ -2538,7 +2570,7 @@ ${g}${Math.round(R*100)/100}${y}`:I,"getText");h.append("g").attr("class","node- stroke-width: ${e.blockStrokeWidth}; fill: ${e.blockFillColor}; } - `},"styles")});var sbe={};dr(sbe,{diagram:()=>Ort});var Ort,obe=M(()=>{"use strict";fz();tbe();nbe();abe();Ort={parser:dz,get db(){return new yy},renderer:rbe,styles:ibe}});var vy,ube,d0,Frt,$rt,hbe,zrt,Grt,Vrt,Urt,Hrt,qrt,Wrt,p0,pz=M(()=>{"use strict";qn();Ra();tr();ci();vy={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},ube={axes:[],curves:[],options:vy},d0=structuredClone(ube),Frt=ur.radar,$rt=o(()=>Vn({...Frt,...Qt().radar}),"getConfig"),hbe=o(()=>d0.axes,"getAxes"),zrt=o(()=>d0.curves,"getCurves"),Grt=o(()=>d0.options,"getOptions"),Vrt=o(t=>{d0.axes=t.map(e=>({name:e.name,label:e.label??e.name}))},"setAxes"),Urt=o(t=>{d0.curves=t.map(e=>({name:e.name,label:e.label??e.name,entries:Hrt(e.entries)}))},"setCurves"),Hrt=o(t=>{if(t[0].axis==null)return t.map(r=>r.value);let e=hbe();if(e.length===0)throw new Error("Axes must be populated before curves for reference entries");return e.map(r=>{let n=t.find(i=>i.axis?.$refText===r.name);if(n===void 0)throw new Error("Missing entry for axis "+r.label);return n.value})},"computeCurveEntries"),qrt=o(t=>{let e=t.reduce((r,n)=>(r[n.name]=n,r),{});d0.options={showLegend:e.showLegend?.value??vy.showLegend,ticks:e.ticks?.value??vy.ticks,max:e.max?.value??vy.max,min:e.min?.value??vy.min,graticule:e.graticule?.value??vy.graticule}},"setOptions"),Wrt=o(()=>{Sr(),d0=structuredClone(ube)},"clear"),p0={getAxes:hbe,getCurves:zrt,getOptions:Grt,setAxes:Vrt,setCurves:Urt,setOptions:qrt,getConfig:$rt,clear:Wrt,setAccTitle:Rr,getAccTitle:Mr,setDiagramTitle:$r,getDiagramTitle:Pr,getAccDescription:Or,setAccDescription:Ir}});var Yrt,fbe,dbe=M(()=>{"use strict";Uf();pt();r0();pz();Yrt=o(t=>{nl(t,p0);let{axes:e,curves:r,options:n}=t;p0.setAxes(e),p0.setCurves(r),p0.setOptions(n)},"populate"),fbe={parse:o(async t=>{let e=await bs("radar",t);X.debug(e),Yrt(e)},"parse")}});function Zrt(t,e,r,n,i,a,s){let l=e.length,u=Math.min(s.width,s.height)/2;r.forEach((h,f)=>{if(h.entries.length!==l)return;let d=h.entries.map((p,m)=>{let g=2*Math.PI*m/l-Math.PI/2,y=Jrt(p,n,i,u),v=y*Math.cos(g),x=y*Math.sin(g);return{x:v,y:x}});a==="circle"?t.append("path").attr("d",ent(d,s.curveTension)).attr("class",`radarCurve-${f}`):a==="polygon"&&t.append("polygon").attr("points",d.map(p=>`${p.x},${p.y}`).join(" ")).attr("class",`radarCurve-${f}`)})}function Jrt(t,e,r,n){let i=Math.min(Math.max(t,e),r);return n*(i-e)/(r-e)}function ent(t,e){let r=t.length,n=`M${t[0].x},${t[0].y}`;for(let i=0;i{let h=t.append("g").attr("transform",`translate(${i}, ${a+u*s})`);h.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${u}`),h.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(l.label)})}var Xrt,jrt,Krt,Qrt,pbe,mbe=M(()=>{"use strict";tu();Xrt=o((t,e,r,n)=>{let i=n.db,a=i.getAxes(),s=i.getCurves(),l=i.getOptions(),u=i.getConfig(),h=i.getDiagramTitle(),f=aa(e),d=jrt(f,u),p=l.max??Math.max(...s.map(y=>Math.max(...y.entries))),m=l.min,g=Math.min(u.width,u.height)/2;Krt(d,a,g,l.ticks,l.graticule),Qrt(d,a,g,u),Zrt(d,a,s,m,p,l.graticule,u),tnt(d,s,l.showLegend,u),d.append("text").attr("class","radarTitle").text(h).attr("x",0).attr("y",-u.height/2-u.marginTop)},"draw"),jrt=o((t,e)=>{let r=e.width+e.marginLeft+e.marginRight,n=e.height+e.marginTop+e.marginBottom,i={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return t.attr("viewbox",`0 0 ${r} ${n}`).attr("width",r).attr("height",n),t.append("g").attr("transform",`translate(${i.x}, ${i.y})`)},"drawFrame"),Krt=o((t,e,r,n,i)=>{if(i==="circle")for(let a=0;a{let d=2*f*Math.PI/a-Math.PI/2,p=l*Math.cos(d),m=l*Math.sin(d);return`${p},${m}`}).join(" ");t.append("polygon").attr("points",u).attr("class","radarGraticule")}}},"drawGraticule"),Qrt=o((t,e,r,n)=>{let i=e.length;for(let a=0;a{"use strict";tr();Py();qn();rnt=o((t,e)=>{let r="";for(let n=0;nMut});var Mut,dSe=I(()=>{"use strict";KU();oSe();cSe();hSe();Mut={parser:QU,get db(){return new zv},renderer:lSe,styles:uSe}});var Gv,gSe,Km,Put,But,ySe,Fut,$ut,zut,Gut,Vut,qut,Uut,Qm,ZU=I(()=>{"use strict";ti();Ka();sr();ki();Gv={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},gSe={axes:[],curves:[],options:Gv},Km=structuredClone(gSe),Put=gr.radar,But=o(()=>Qn({...Put,...tr().radar}),"getConfig"),ySe=o(()=>Km.axes,"getAxes"),Fut=o(()=>Km.curves,"getCurves"),$ut=o(()=>Km.options,"getOptions"),zut=o(t=>{Km.axes=t.map(e=>({name:e.name,label:e.label??e.name}))},"setAxes"),Gut=o(t=>{Km.curves=t.map(e=>({name:e.name,label:e.label??e.name,entries:Vut(e.entries)}))},"setCurves"),Vut=o(t=>{if(t[0].axis==null)return t.map(r=>r.value);let e=ySe();if(e.length===0)throw new Error("Axes must be populated before curves for reference entries");return e.map(r=>{let n=t.find(i=>i.axis?.$refText===r.name);if(n===void 0)throw new Error("Missing entry for axis "+r.label);return n.value})},"computeCurveEntries"),qut=o(t=>{let e=t.reduce((r,n)=>(r[n.name]=n,r),{});Km.options={showLegend:e.showLegend?.value??Gv.showLegend,ticks:e.ticks?.value??Gv.ticks,max:e.max?.value??Gv.max,min:e.min?.value??Gv.min,graticule:e.graticule?.value??Gv.graticule}},"setOptions"),Uut=o(()=>{Mr(),Km=structuredClone(gSe)},"clear"),Qm={getAxes:ySe,getCurves:Fut,getOptions:$ut,setAxes:zut,setCurves:Gut,setOptions:qut,getConfig:But,clear:Uut,setAccTitle:zr,getAccTitle:Vr,setDiagramTitle:Xr,getDiagramTitle:Wr,getAccDescription:Ur,setAccDescription:qr}});var Wut,vSe,xSe=I(()=>{"use strict";sp();gt();$m();ZU();Wut=o(t=>{Pl(t,Qm);let{axes:e,curves:r,options:n}=t;Qm.setAxes(e),Qm.setCurves(r),Qm.setOptions(n)},"populate"),vSe={parse:o(async t=>{let e=await Vs("radar",t);X.debug(e),Wut(e)},"parse")}});function Kut(t,e,r,n,i,a,s){let l=e.length,u=Math.min(s.width,s.height)/2;r.forEach((h,f)=>{if(h.entries.length!==l)return;let d=h.entries.map((p,m)=>{let g=2*Math.PI*m/l-Math.PI/2,y=Qut(p,n,i,u),v=y*Math.cos(g),x=y*Math.sin(g);return{x:v,y:x}});a==="circle"?t.append("path").attr("d",Zut(d,s.curveTension)).attr("class",`radarCurve-${f}`):a==="polygon"&&t.append("polygon").attr("points",d.map(p=>`${p.x},${p.y}`).join(" ")).attr("class",`radarCurve-${f}`)})}function Qut(t,e,r,n){let i=Math.min(Math.max(t,e),r);return n*(i-e)/(r-e)}function Zut(t,e){let r=t.length,n=`M${t[0].x},${t[0].y}`;for(let i=0;i{let h=t.append("g").attr("transform",`translate(${i}, ${a+u*s})`);h.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${u}`),h.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(l.label)})}var Hut,Yut,jut,Xut,bSe,TSe=I(()=>{"use strict";Uu();Hut=o((t,e,r,n)=>{let i=n.db,a=i.getAxes(),s=i.getCurves(),l=i.getOptions(),u=i.getConfig(),h=i.getDiagramTitle(),f=Ca(e),d=Yut(f,u),p=l.max??Math.max(...s.map(y=>Math.max(...y.entries))),m=l.min,g=Math.min(u.width,u.height)/2;jut(d,a,g,l.ticks,l.graticule),Xut(d,a,g,u),Kut(d,a,s,m,p,l.graticule,u),Jut(d,s,l.showLegend,u),d.append("text").attr("class","radarTitle").text(h).attr("x",0).attr("y",-u.height/2-u.marginTop)},"draw"),Yut=o((t,e)=>{let r=e.width+e.marginLeft+e.marginRight,n=e.height+e.marginTop+e.marginBottom,i={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return t.attr("viewbox",`0 0 ${r} ${n}`).attr("width",r).attr("height",n),t.append("g").attr("transform",`translate(${i.x}, ${i.y})`)},"drawFrame"),jut=o((t,e,r,n,i)=>{if(i==="circle")for(let a=0;a{let d=2*f*Math.PI/a-Math.PI/2,p=l*Math.cos(d),m=l*Math.sin(d);return`${p},${m}`}).join(" ");t.append("polygon").attr("points",u).attr("class","radarGraticule")}}},"drawGraticule"),Xut=o((t,e,r,n)=>{let i=e.length;for(let a=0;a{"use strict";sr();a2();ti();eht=o((t,e)=>{let r="";for(let n=0;n{let e=mh(),r=Qt(),n=Vn(e,r.themeVariables),i=Vn(n.radar,t);return{themeVariables:n,radarOptions:i}},"buildRadarStyleOptions"),gbe=o(({radar:t}={})=>{let{themeVariables:e,radarOptions:r}=nnt(t);return` + `}return r},"genIndexStyles"),tht=o(t=>{let e=uf(),r=tr(),n=Qn(e,r.themeVariables),i=Qn(n.radar,t);return{themeVariables:n,radarOptions:i}},"buildRadarStyleOptions"),wSe=o(({radar:t}={})=>{let{themeVariables:e,radarOptions:r}=tht(t);return` .radarTitle { font-size: ${e.fontSize}; color: ${e.titleColor}; @@ -2579,13 +2611,13 @@ ${g}${Math.round(R*100)/100}${y}`:I,"getText");h.append("g").attr("class","node- font-size: ${r.legendFontSize}px; dominant-baseline: hanging; } - ${rnt(e,r)} - `},"styles")});var vbe={};dr(vbe,{diagram:()=>int});var int,xbe=M(()=>{"use strict";pz();dbe();mbe();ybe();int={parser:fbe,db:p0,renderer:pbe,styles:gbe}});var mz,wbe,kbe=M(()=>{"use strict";mz=(function(){var t=o(function(T,S,w,k){for(w=w||{},k=T.length;k--;w[T[k]]=S);return w},"o"),e=[1,15],r=[1,7],n=[1,13],i=[1,14],a=[1,19],s=[1,16],l=[1,17],u=[1,18],h=[8,30],f=[8,10,21,28,29,30,31,39,43,46],d=[1,23],p=[1,24],m=[8,10,15,16,21,28,29,30,31,39,43,46],g=[8,10,15,16,21,27,28,29,30,31,39,43,46],y=[1,49],v={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:o(function(S,w,k,C,A,L,I){var R=L.length-1;switch(A){case 4:C.getLogger().debug("Rule: separator (NL) ");break;case 5:C.getLogger().debug("Rule: separator (Space) ");break;case 6:C.getLogger().debug("Rule: separator (EOF) ");break;case 7:C.getLogger().debug("Rule: hierarchy: ",L[R-1]),C.setHierarchy(L[R-1]);break;case 8:C.getLogger().debug("Stop NL ");break;case 9:C.getLogger().debug("Stop EOF ");break;case 10:C.getLogger().debug("Stop NL2 ");break;case 11:C.getLogger().debug("Stop EOF2 ");break;case 12:C.getLogger().debug("Rule: statement: ",L[R]),typeof L[R].length=="number"?this.$=L[R]:this.$=[L[R]];break;case 13:C.getLogger().debug("Rule: statement #2: ",L[R-1]),this.$=[L[R-1]].concat(L[R]);break;case 14:C.getLogger().debug("Rule: link: ",L[R],S),this.$={edgeTypeStr:L[R],label:""};break;case 15:C.getLogger().debug("Rule: LABEL link: ",L[R-3],L[R-1],L[R]),this.$={edgeTypeStr:L[R],label:L[R-1]};break;case 18:let E=parseInt(L[R]),_=C.generateId();this.$={id:_,type:"space",label:"",width:E,children:[]};break;case 23:C.getLogger().debug("Rule: (nodeStatement link node) ",L[R-2],L[R-1],L[R]," typestr: ",L[R-1].edgeTypeStr);let D=C.edgeStrToEdgeData(L[R-1].edgeTypeStr);this.$=[{id:L[R-2].id,label:L[R-2].label,type:L[R-2].type,directions:L[R-2].directions},{id:L[R-2].id+"-"+L[R].id,start:L[R-2].id,end:L[R].id,label:L[R-1].label,type:"edge",directions:L[R].directions,arrowTypeEnd:D,arrowTypeStart:"arrow_open"},{id:L[R].id,label:L[R].label,type:C.typeStr2Type(L[R].typeStr),directions:L[R].directions}];break;case 24:C.getLogger().debug("Rule: nodeStatement (abc88 node size) ",L[R-1],L[R]),this.$={id:L[R-1].id,label:L[R-1].label,type:C.typeStr2Type(L[R-1].typeStr),directions:L[R-1].directions,widthInColumns:parseInt(L[R],10)};break;case 25:C.getLogger().debug("Rule: nodeStatement (node) ",L[R]),this.$={id:L[R].id,label:L[R].label,type:C.typeStr2Type(L[R].typeStr),directions:L[R].directions,widthInColumns:1};break;case 26:C.getLogger().debug("APA123",this?this:"na"),C.getLogger().debug("COLUMNS: ",L[R]),this.$={type:"column-setting",columns:L[R]==="auto"?-1:parseInt(L[R])};break;case 27:C.getLogger().debug("Rule: id-block statement : ",L[R-2],L[R-1]);let O=C.generateId();this.$={...L[R-2],type:"composite",children:L[R-1]};break;case 28:C.getLogger().debug("Rule: blockStatement : ",L[R-2],L[R-1],L[R]);let N=C.generateId();this.$={id:N,type:"composite",label:"",children:L[R-1]};break;case 29:C.getLogger().debug("Rule: node (NODE_ID separator): ",L[R]),this.$={id:L[R]};break;case 30:C.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",L[R-1],L[R]),this.$={id:L[R-1],label:L[R].label,typeStr:L[R].typeStr,directions:L[R].directions};break;case 31:C.getLogger().debug("Rule: dirList: ",L[R]),this.$=[L[R]];break;case 32:C.getLogger().debug("Rule: dirList: ",L[R-1],L[R]),this.$=[L[R-1]].concat(L[R]);break;case 33:C.getLogger().debug("Rule: nodeShapeNLabel: ",L[R-2],L[R-1],L[R]),this.$={typeStr:L[R-2]+L[R],label:L[R-1]};break;case 34:C.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",L[R-3],L[R-2]," #3:",L[R-1],L[R]),this.$={typeStr:L[R-3]+L[R],label:L[R-2],directions:L[R-1]};break;case 35:case 36:this.$={type:"classDef",id:L[R-1].trim(),css:L[R].trim()};break;case 37:this.$={type:"applyClass",id:L[R-1].trim(),styleClass:L[R].trim()};break;case 38:this.$={type:"applyStyles",id:L[R-1].trim(),stylesStr:L[R].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:e,11:3,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{8:[1,20]},t(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:e,21:r,28:n,29:i,31:a,39:s,43:l,46:u}),t(f,[2,16],{14:22,15:d,16:p}),t(f,[2,17]),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),t(f,[2,21]),t(f,[2,22]),t(m,[2,25],{27:[1,25]}),t(f,[2,26]),{19:26,26:12,31:a},{10:e,11:27,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},t(g,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},t(h,[2,13]),{26:35,31:a},{31:[2,14]},{17:[1,36]},t(m,[2,24]),{10:e,11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},t(g,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(f,[2,28]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),{36:[1,47]},{33:48,34:y},{15:[1,50]},t(f,[2,27]),t(g,[2,33]),{38:[1,51]},{33:52,34:y,38:[2,31]},{31:[2,15]},t(g,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(S,w){if(w.recoverable)this.trace(S);else{var k=new Error(S);throw k.hash=w,k}},"parseError"),parse:o(function(S){var w=this,k=[0],C=[],A=[null],L=[],I=this.table,R="",E=0,_=0,D=0,O=2,N=1,P=L.slice.call(arguments,1),B=Object.create(this.lexer),F={yy:{}};for(var V in this.yy)Object.prototype.hasOwnProperty.call(this.yy,V)&&(F.yy[V]=this.yy[V]);B.setInput(S,F.yy),F.yy.lexer=B,F.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var $=B.yylloc;L.push($);var U=B.options&&B.options.ranges;typeof F.yy.parseError=="function"?this.parseError=F.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function j(Te){k.length=k.length-2*Te,A.length=A.length-Te,L.length=L.length-Te}o(j,"popStack");function ee(){var Te;return Te=C.pop()||B.lex()||N,typeof Te!="number"&&(Te instanceof Array&&(C=Te,Te=C.pop()),Te=w.symbols_[Te]||Te),Te}o(ee,"lex");for(var q,oe,Q,ue,te,re,J={},K,ae,Z,de;;){if(Q=k[k.length-1],this.defaultActions[Q]?ue=this.defaultActions[Q]:((q===null||typeof q>"u")&&(q=ee()),ue=I[Q]&&I[Q][q]),typeof ue>"u"||!ue.length||!ue[0]){var ne="";de=[];for(K in I[Q])this.terminals_[K]&&K>O&&de.push("'"+this.terminals_[K]+"'");B.showPosition?ne="Parse error on line "+(E+1)+`: + ${eht(e,r)} + `},"styles")});var SSe={};vr(SSe,{diagram:()=>rht});var rht,ESe=I(()=>{"use strict";ZU();xSe();TSe();kSe();rht={parser:vSe,db:Qm,renderer:bSe,styles:wSe}});var JU,_Se,DSe=I(()=>{"use strict";JU=(function(){var t=o(function(T,E,w,k){for(w=w||{},k=T.length;k--;w[T[k]]=E);return w},"o"),e=[1,15],r=[1,7],n=[1,13],i=[1,14],a=[1,19],s=[1,16],l=[1,17],u=[1,18],h=[8,30],f=[8,10,21,28,29,30,31,39,43,46],d=[1,23],p=[1,24],m=[8,10,15,16,21,28,29,30,31,39,43,46],g=[8,10,15,16,21,27,28,29,30,31,39,43,46],y=[1,49],v={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:o(function(E,w,k,C,D,R,O){var L=R.length-1;switch(D){case 4:C.getLogger().debug("Rule: separator (NL) ");break;case 5:C.getLogger().debug("Rule: separator (Space) ");break;case 6:C.getLogger().debug("Rule: separator (EOF) ");break;case 7:C.getLogger().debug("Rule: hierarchy: ",R[L-1]),C.setHierarchy(R[L-1]);break;case 8:C.getLogger().debug("Stop NL ");break;case 9:C.getLogger().debug("Stop EOF ");break;case 10:C.getLogger().debug("Stop NL2 ");break;case 11:C.getLogger().debug("Stop EOF2 ");break;case 12:C.getLogger().debug("Rule: statement: ",R[L]),typeof R[L].length=="number"?this.$=R[L]:this.$=[R[L]];break;case 13:C.getLogger().debug("Rule: statement #2: ",R[L-1]),this.$=[R[L-1]].concat(R[L]);break;case 14:C.getLogger().debug("Rule: link: ",R[L],E),this.$={edgeTypeStr:R[L],label:""};break;case 15:C.getLogger().debug("Rule: LABEL link: ",R[L-3],R[L-1],R[L]),this.$={edgeTypeStr:R[L],label:R[L-1]};break;case 18:let S=parseInt(R[L]),A=C.generateId();this.$={id:A,type:"space",label:"",width:S,children:[]};break;case 23:C.getLogger().debug("Rule: (nodeStatement link node) ",R[L-2],R[L-1],R[L]," typestr: ",R[L-1].edgeTypeStr);let _=C.edgeStrToEdgeData(R[L-1].edgeTypeStr);this.$=[{id:R[L-2].id,label:R[L-2].label,type:R[L-2].type,directions:R[L-2].directions},{id:R[L-2].id+"-"+R[L].id,start:R[L-2].id,end:R[L].id,label:R[L-1].label,type:"edge",directions:R[L].directions,arrowTypeEnd:_,arrowTypeStart:"arrow_open"},{id:R[L].id,label:R[L].label,type:C.typeStr2Type(R[L].typeStr),directions:R[L].directions}];break;case 24:C.getLogger().debug("Rule: nodeStatement (abc88 node size) ",R[L-1],R[L]),this.$={id:R[L-1].id,label:R[L-1].label,type:C.typeStr2Type(R[L-1].typeStr),directions:R[L-1].directions,widthInColumns:parseInt(R[L],10)};break;case 25:C.getLogger().debug("Rule: nodeStatement (node) ",R[L]),this.$={id:R[L].id,label:R[L].label,type:C.typeStr2Type(R[L].typeStr),directions:R[L].directions,widthInColumns:1};break;case 26:C.getLogger().debug("APA123",this?this:"na"),C.getLogger().debug("COLUMNS: ",R[L]),this.$={type:"column-setting",columns:R[L]==="auto"?-1:parseInt(R[L])};break;case 27:C.getLogger().debug("Rule: id-block statement : ",R[L-2],R[L-1]);let N=C.generateId();this.$={...R[L-2],type:"composite",children:R[L-1]};break;case 28:C.getLogger().debug("Rule: blockStatement : ",R[L-2],R[L-1],R[L]);let M=C.generateId();this.$={id:M,type:"composite",label:"",children:R[L-1]};break;case 29:C.getLogger().debug("Rule: node (NODE_ID separator): ",R[L]),this.$={id:R[L]};break;case 30:C.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",R[L-1],R[L]),this.$={id:R[L-1],label:R[L].label,typeStr:R[L].typeStr,directions:R[L].directions};break;case 31:C.getLogger().debug("Rule: dirList: ",R[L]),this.$=[R[L]];break;case 32:C.getLogger().debug("Rule: dirList: ",R[L-1],R[L]),this.$=[R[L-1]].concat(R[L]);break;case 33:C.getLogger().debug("Rule: nodeShapeNLabel: ",R[L-2],R[L-1],R[L]),this.$={typeStr:R[L-2]+R[L],label:R[L-1]};break;case 34:C.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",R[L-3],R[L-2]," #3:",R[L-1],R[L]),this.$={typeStr:R[L-3]+R[L],label:R[L-2],directions:R[L-1]};break;case 35:case 36:this.$={type:"classDef",id:R[L-1].trim(),css:R[L].trim()};break;case 37:this.$={type:"applyClass",id:R[L-1].trim(),styleClass:R[L].trim()};break;case 38:this.$={type:"applyStyles",id:R[L-1].trim(),stylesStr:R[L].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:e,11:3,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{8:[1,20]},t(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:e,21:r,28:n,29:i,31:a,39:s,43:l,46:u}),t(f,[2,16],{14:22,15:d,16:p}),t(f,[2,17]),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),t(f,[2,21]),t(f,[2,22]),t(m,[2,25],{27:[1,25]}),t(f,[2,26]),{19:26,26:12,31:a},{10:e,11:27,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},t(g,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},t(h,[2,13]),{26:35,31:a},{31:[2,14]},{17:[1,36]},t(m,[2,24]),{10:e,11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},t(g,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(f,[2,28]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),{36:[1,47]},{33:48,34:y},{15:[1,50]},t(f,[2,27]),t(g,[2,33]),{38:[1,51]},{33:52,34:y,38:[2,31]},{31:[2,15]},t(g,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(E,w){if(w.recoverable)this.trace(E);else{var k=new Error(E);throw k.hash=w,k}},"parseError"),parse:o(function(E){var w=this,k=[0],C=[],D=[null],R=[],O=this.table,L="",S=0,A=0,_=0,N=2,M=1,P=R.slice.call(arguments,1),B=Object.create(this.lexer),F={yy:{}};for(var G in this.yy)Object.prototype.hasOwnProperty.call(this.yy,G)&&(F.yy[G]=this.yy[G]);B.setInput(E,F.yy),F.yy.lexer=B,F.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var $=B.yylloc;R.push($);var V=B.options&&B.options.ranges;typeof F.yy.parseError=="function"?this.parseError=F.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function K(Te){k.length=k.length-2*Te,D.length=D.length-Te,R.length=R.length-Te}o(K,"popStack");function ee(){var Te;return Te=C.pop()||B.lex()||M,typeof Te!="number"&&(Te instanceof Array&&(C=Te,Te=C.pop()),Te=w.symbols_[Te]||Te),Te}o(ee,"lex");for(var H,he,Z,de,re,ne,te={},Q,le,J,ge;;){if(Z=k[k.length-1],this.defaultActions[Z]?de=this.defaultActions[Z]:((H===null||typeof H>"u")&&(H=ee()),de=O[Z]&&O[Z][H]),typeof de>"u"||!de.length||!de[0]){var ie="";ge=[];for(Q in O[Z])this.terminals_[Q]&&Q>N&&ge.push("'"+this.terminals_[Q]+"'");B.showPosition?ie="Parse error on line "+(S+1)+`: `+B.showPosition()+` -Expecting `+de.join(", ")+", got '"+(this.terminals_[q]||q)+"'":ne="Parse error on line "+(E+1)+": Unexpected "+(q==N?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(ne,{text:B.match,token:this.terminals_[q]||q,line:B.yylineno,loc:$,expected:de})}if(ue[0]instanceof Array&&ue.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Q+", token: "+q);switch(ue[0]){case 1:k.push(q),A.push(B.yytext),L.push(B.yylloc),k.push(ue[1]),q=null,oe?(q=oe,oe=null):(_=B.yyleng,R=B.yytext,E=B.yylineno,$=B.yylloc,D>0&&D--);break;case 2:if(ae=this.productions_[ue[1]][1],J.$=A[A.length-ae],J._$={first_line:L[L.length-(ae||1)].first_line,last_line:L[L.length-1].last_line,first_column:L[L.length-(ae||1)].first_column,last_column:L[L.length-1].last_column},U&&(J._$.range=[L[L.length-(ae||1)].range[0],L[L.length-1].range[1]]),re=this.performAction.apply(J,[R,_,E,F.yy,ue[1],A,L].concat(P)),typeof re<"u")return re;ae&&(k=k.slice(0,-1*ae*2),A=A.slice(0,-1*ae),L=L.slice(0,-1*ae)),k.push(this.productions_[ue[1]][0]),A.push(J.$),L.push(J._$),Z=I[k[k.length-2]][k[k.length-1]],k.push(Z);break;case 3:return!0}}return!0},"parse")},x=(function(){var T={EOF:1,parseError:o(function(w,k){if(this.yy.parser)this.yy.parser.parseError(w,k);else throw new Error(w)},"parseError"),setInput:o(function(S,w){return this.yy=w||this.yy||{},this._input=S,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var w=S.match(/(?:\r\n?|\n).*/g);return w?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},"input"),unput:o(function(S){var w=S.length,k=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;var C=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),k.length-1&&(this.yylineno-=k.length-1);var A=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:k?(k.length===C.length?this.yylloc.first_column:0)+C[C.length-k.length].length-k[0].length:this.yylloc.first_column-w},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-w]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(S){this.unput(this.match.slice(S))},"less"),pastInput:o(function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var S=this.pastInput(),w=new Array(S.length+1).join("-");return S+this.upcomingInput()+` -`+w+"^"},"showPosition"),test_match:o(function(S,w){var k,C,A;if(this.options.backtrack_lexer&&(A={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(A.yylloc.range=this.yylloc.range.slice(0))),C=S[0].match(/(?:\r\n?|\n).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(S[0].length),this.matched+=S[0],k=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),k)return k;if(this._backtrack){for(var L in A)this[L]=A[L];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,w,k,C;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),L=0;Lw[0].length)){if(w=k,C=L,this.options.backtrack_lexer){if(S=this.test_match(k,A[L]),S!==!1)return S;if(this._backtrack){w=!1;continue}else return!1}else if(!this.options.flex)break}return w?(S=this.test_match(w,A[C]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var w=this.next();return w||this.lex()},"lex"),begin:o(function(w){this.conditionStack.push(w)},"begin"),popState:o(function(){var w=this.conditionStack.length-1;return w>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(w){return w=this.conditionStack.length-1-Math.abs(w||0),w>=0?this.conditionStack[w]:"INITIAL"},"topState"),pushState:o(function(w){this.begin(w)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(w,k,C,A){var L=A;switch(C){case 0:return w.getLogger().debug("Found block-beta"),10;break;case 1:return w.getLogger().debug("Found id-block"),29;break;case 2:return w.getLogger().debug("Found block"),10;break;case 3:w.getLogger().debug(".",k.yytext);break;case 4:w.getLogger().debug("_",k.yytext);break;case 5:return 5;case 6:return k.yytext=-1,28;break;case 7:return k.yytext=k.yytext.replace(/columns\s+/,""),w.getLogger().debug("COLUMNS (LEX)",k.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:w.getLogger().debug("LEX: POPPING STR:",k.yytext),this.popState();break;case 13:return w.getLogger().debug("LEX: STR end:",k.yytext),"STR";break;case 14:return k.yytext=k.yytext.replace(/space\:/,""),w.getLogger().debug("SPACE NUM (LEX)",k.yytext),21;break;case 15:return k.yytext="1",w.getLogger().debug("COLUMNS (LEX)",k.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),w.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),w.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),w.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),w.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),w.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),w.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),w.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),w.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),w.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),w.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),w.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),w.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return w.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return w.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return w.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return w.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return w.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return w.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return w.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),w.getLogger().debug("LEX ARR START"),37;break;case 74:return w.getLogger().debug("Lex: NODE_ID",k.yytext),31;break;case 75:return w.getLogger().debug("Lex: EOF",k.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:w.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:w.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return w.getLogger().debug("LEX: NODE_DESCR:",k.yytext),"NODE_DESCR";break;case 83:w.getLogger().debug("LEX POPPING"),this.popState();break;case 84:w.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (right): dir:",k.yytext),"DIR";break;case 86:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (left):",k.yytext),"DIR";break;case 87:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (x):",k.yytext),"DIR";break;case 88:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (y):",k.yytext),"DIR";break;case 89:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (up):",k.yytext),"DIR";break;case 90:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (down):",k.yytext),"DIR";break;case 91:return k.yytext="]>",w.getLogger().debug("Lex (ARROW_DIR end):",k.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return w.getLogger().debug("Lex: LINK","#"+k.yytext+"#"),15;break;case 93:return w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 94:return w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 95:return w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 96:return w.getLogger().debug("Lex: START_LINK",k.yytext),this.pushState("LLABEL"),16;break;case 97:return w.getLogger().debug("Lex: START_LINK",k.yytext),this.pushState("LLABEL"),16;break;case 98:return w.getLogger().debug("Lex: START_LINK",k.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return w.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),w.getLogger().debug("Lex: LINK","#"+k.yytext+"#"),15;break;case 102:return this.popState(),w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 103:return this.popState(),w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 104:return w.getLogger().debug("Lex: COLON",k.yytext),k.yytext=k.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return T})();v.lexer=x;function b(){this.yy={}}return o(b,"Parser"),b.prototype=v,v.Parser=b,new b})();mz.parser=mz;wbe=mz});function pnt(t){switch(X.debug("typeStr2Type",t),t){case"[]":return"square";case"()":return X.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function mnt(t){switch(X.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}function gnt(t){switch(t.replace(/^[\s-]+|[\s-]+$/g,"")){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}var ql,yz,gz,Ebe,Sbe,ont,Abe,lnt,DC,cnt,unt,hnt,fnt,_be,vz,N4,dnt,Cbe,ynt,vnt,xnt,bnt,Tnt,wnt,knt,Ent,Snt,Cnt,Ant,Dbe,Lbe=M(()=>{"use strict";hR();qn();Xt();pt();gr();ci();ql=new Map,yz=[],gz=new Map,Ebe="color",Sbe="fill",ont="bgFill",Abe=",",lnt=ge(),DC=new Map,cnt=o(t=>tt.sanitizeText(t,lnt),"sanitizeText"),unt=o(function(t,e=""){let r=DC.get(t);r||(r={id:t,styles:[],textStyles:[]},DC.set(t,r)),e?.split(Abe).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(Ebe).exec(n)){let s=i.replace(Sbe,ont).replace(Ebe,Sbe);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),hnt=o(function(t,e=""){let r=ql.get(t);e!=null&&(r.styles=e.split(Abe))},"addStyle2Node"),fnt=o(function(t,e){t.split(",").forEach(function(r){let n=ql.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},ql.set(i,n)}n.classes||(n.classes=[]),n.classes.push(e)})},"setCssClass"),_be=o((t,e)=>{let r=t.flat(),n=[],a=r.find(s=>s?.type==="column-setting")?.columns??-1;for(let s of r){if(typeof a=="number"&&a>0&&s.type!=="column-setting"&&typeof s.widthInColumns=="number"&&s.widthInColumns>a&&X.warn(`Block ${s.id} width ${s.widthInColumns} exceeds configured column width ${a}`),s.label&&(s.label=cnt(s.label)),s.type==="classDef"){unt(s.id,s.css);continue}if(s.type==="applyClass"){fnt(s.id,s?.styleClass??"");continue}if(s.type==="applyStyles"){s?.stylesStr&&hnt(s.id,s?.stylesStr);continue}if(s.type==="column-setting")e.columns=s.columns??-1;else if(s.type==="edge"){let l=(gz.get(s.id)??0)+1;gz.set(s.id,l),s.id=l+"-"+s.id,yz.push(s)}else{s.label||(s.type==="composite"?s.label="":s.label=s.id);let l=ql.get(s.id);if(l===void 0?ql.set(s.id,s):(s.type!=="na"&&(l.type=s.type),s.label!==s.id&&(l.label=s.label)),s.children&&_be(s.children,s),s.type==="space"){let u=s.width??1;for(let h=0;h{X.debug("Clear called"),Sr(),N4={id:"root",type:"composite",children:[],columns:-1},ql=new Map([["root",N4]]),vz=[],DC=new Map,yz=[],gz=new Map},"clear");o(pnt,"typeStr2Type");o(mnt,"edgeTypeStr2Type");o(gnt,"edgeStrToEdgeData");Cbe=0,ynt=o(()=>(Cbe++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Cbe),"generateId"),vnt=o(t=>{N4.children=t,_be(t,N4),vz=N4.children},"setHierarchy"),xnt=o(t=>{let e=ql.get(t);return e?e.columns?e.columns:e.children?e.children.length:-1:-1},"getColumns"),bnt=o(()=>[...ql.values()],"getBlocksFlat"),Tnt=o(()=>vz||[],"getBlocks"),wnt=o(()=>yz,"getEdges"),knt=o(t=>ql.get(t),"getBlock"),Ent=o(t=>{ql.set(t.id,t)},"setBlock"),Snt=o(()=>X,"getLogger"),Cnt=o(function(){return DC},"getClasses"),Ant={getConfig:o(()=>Qt().block,"getConfig"),typeStr2Type:pnt,edgeTypeStr2Type:mnt,edgeStrToEdgeData:gnt,getLogger:Snt,getBlocksFlat:bnt,getBlocks:Tnt,getEdges:wnt,setHierarchy:vnt,getBlock:knt,setBlock:Ent,getColumns:xnt,getClasses:Cnt,clear:dnt,generateId:ynt},Dbe=Ant});var LC,_nt,Rbe,Nbe=M(()=>{"use strict";eo();yg();LC=o((t,e)=>{let r=ld,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Ka(n,i,a,e)},"fade"),_nt=o(t=>`.label { +Expecting `+ge.join(", ")+", got '"+(this.terminals_[H]||H)+"'":ie="Parse error on line "+(S+1)+": Unexpected "+(H==M?"end of input":"'"+(this.terminals_[H]||H)+"'"),this.parseError(ie,{text:B.match,token:this.terminals_[H]||H,line:B.yylineno,loc:$,expected:ge})}if(de[0]instanceof Array&&de.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Z+", token: "+H);switch(de[0]){case 1:k.push(H),D.push(B.yytext),R.push(B.yylloc),k.push(de[1]),H=null,he?(H=he,he=null):(A=B.yyleng,L=B.yytext,S=B.yylineno,$=B.yylloc,_>0&&_--);break;case 2:if(le=this.productions_[de[1]][1],te.$=D[D.length-le],te._$={first_line:R[R.length-(le||1)].first_line,last_line:R[R.length-1].last_line,first_column:R[R.length-(le||1)].first_column,last_column:R[R.length-1].last_column},V&&(te._$.range=[R[R.length-(le||1)].range[0],R[R.length-1].range[1]]),ne=this.performAction.apply(te,[L,A,S,F.yy,de[1],D,R].concat(P)),typeof ne<"u")return ne;le&&(k=k.slice(0,-1*le*2),D=D.slice(0,-1*le),R=R.slice(0,-1*le)),k.push(this.productions_[de[1]][0]),D.push(te.$),R.push(te._$),J=O[k[k.length-2]][k[k.length-1]],k.push(J);break;case 3:return!0}}return!0},"parse")},x=(function(){var T={EOF:1,parseError:o(function(w,k){if(this.yy.parser)this.yy.parser.parseError(w,k);else throw new Error(w)},"parseError"),setInput:o(function(E,w){return this.yy=w||this.yy||{},this._input=E,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var E=this._input[0];this.yytext+=E,this.yyleng++,this.offset++,this.match+=E,this.matched+=E;var w=E.match(/(?:\r\n?|\n).*/g);return w?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),E},"input"),unput:o(function(E){var w=E.length,k=E.split(/(?:\r\n?|\n)/g);this._input=E+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;var C=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),k.length-1&&(this.yylineno-=k.length-1);var D=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:k?(k.length===C.length?this.yylloc.first_column:0)+C[C.length-k.length].length-k[0].length:this.yylloc.first_column-w},this.options.ranges&&(this.yylloc.range=[D[0],D[0]+this.yyleng-w]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(E){this.unput(this.match.slice(E))},"less"),pastInput:o(function(){var E=this.matched.substr(0,this.matched.length-this.match.length);return(E.length>20?"...":"")+E.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var E=this.match;return E.length<20&&(E+=this._input.substr(0,20-E.length)),(E.substr(0,20)+(E.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var E=this.pastInput(),w=new Array(E.length+1).join("-");return E+this.upcomingInput()+` +`+w+"^"},"showPosition"),test_match:o(function(E,w){var k,C,D;if(this.options.backtrack_lexer&&(D={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(D.yylloc.range=this.yylloc.range.slice(0))),C=E[0].match(/(?:\r\n?|\n).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+E[0].length},this.yytext+=E[0],this.match+=E[0],this.matches=E,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(E[0].length),this.matched+=E[0],k=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),k)return k;if(this._backtrack){for(var R in D)this[R]=D[R];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var E,w,k,C;this._more||(this.yytext="",this.match="");for(var D=this._currentRules(),R=0;Rw[0].length)){if(w=k,C=R,this.options.backtrack_lexer){if(E=this.test_match(k,D[R]),E!==!1)return E;if(this._backtrack){w=!1;continue}else return!1}else if(!this.options.flex)break}return w?(E=this.test_match(w,D[C]),E!==!1?E:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var w=this.next();return w||this.lex()},"lex"),begin:o(function(w){this.conditionStack.push(w)},"begin"),popState:o(function(){var w=this.conditionStack.length-1;return w>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(w){return w=this.conditionStack.length-1-Math.abs(w||0),w>=0?this.conditionStack[w]:"INITIAL"},"topState"),pushState:o(function(w){this.begin(w)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(w,k,C,D){var R=D;switch(C){case 0:return w.getLogger().debug("Found block-beta"),10;break;case 1:return w.getLogger().debug("Found id-block"),29;break;case 2:return w.getLogger().debug("Found block"),10;break;case 3:w.getLogger().debug(".",k.yytext);break;case 4:w.getLogger().debug("_",k.yytext);break;case 5:return 5;case 6:return k.yytext=-1,28;break;case 7:return k.yytext=k.yytext.replace(/columns\s+/,""),w.getLogger().debug("COLUMNS (LEX)",k.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:w.getLogger().debug("LEX: POPPING STR:",k.yytext),this.popState();break;case 13:return w.getLogger().debug("LEX: STR end:",k.yytext),"STR";break;case 14:return k.yytext=k.yytext.replace(/space\:/,""),w.getLogger().debug("SPACE NUM (LEX)",k.yytext),21;break;case 15:return k.yytext="1",w.getLogger().debug("COLUMNS (LEX)",k.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),w.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),w.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),w.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),w.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),w.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),w.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),w.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),w.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),w.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),w.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),w.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),w.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return w.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return w.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return w.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return w.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return w.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return w.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return w.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),w.getLogger().debug("LEX ARR START"),37;break;case 74:return w.getLogger().debug("Lex: NODE_ID",k.yytext),31;break;case 75:return w.getLogger().debug("Lex: EOF",k.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:w.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:w.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return w.getLogger().debug("LEX: NODE_DESCR:",k.yytext),"NODE_DESCR";break;case 83:w.getLogger().debug("LEX POPPING"),this.popState();break;case 84:w.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (right): dir:",k.yytext),"DIR";break;case 86:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (left):",k.yytext),"DIR";break;case 87:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (x):",k.yytext),"DIR";break;case 88:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (y):",k.yytext),"DIR";break;case 89:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (up):",k.yytext),"DIR";break;case 90:return k.yytext=k.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (down):",k.yytext),"DIR";break;case 91:return k.yytext="]>",w.getLogger().debug("Lex (ARROW_DIR end):",k.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return w.getLogger().debug("Lex: LINK","#"+k.yytext+"#"),15;break;case 93:return w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 94:return w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 95:return w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 96:return w.getLogger().debug("Lex: START_LINK",k.yytext),this.pushState("LLABEL"),16;break;case 97:return w.getLogger().debug("Lex: START_LINK",k.yytext),this.pushState("LLABEL"),16;break;case 98:return w.getLogger().debug("Lex: START_LINK",k.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return w.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),w.getLogger().debug("Lex: LINK","#"+k.yytext+"#"),15;break;case 102:return this.popState(),w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 103:return this.popState(),w.getLogger().debug("Lex: LINK",k.yytext),15;break;case 104:return w.getLogger().debug("Lex: COLON",k.yytext),k.yytext=k.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return T})();v.lexer=x;function b(){this.yy={}}return o(b,"Parser"),b.prototype=v,v.Parser=b,new b})();JU.parser=JU;_Se=JU});function fht(t){switch(X.debug("typeStr2Type",t),t){case"[]":return"square";case"()":return X.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function dht(t){switch(X.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}function pht(t){switch(t.replace(/^[\s-]+|[\s-]+$/g,"")){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}var Dc,tW,eW,RSe,LSe,aht,MSe,sht,i8,oht,lht,cht,uht,ISe,rW,p3,hht,NSe,mht,ght,yht,vht,xht,bht,Tht,wht,kht,Sht,Eht,OSe,PSe=I(()=>{"use strict";zM();ti();Qt();gt();wr();ki();Dc=new Map,tW=[],eW=new Map,RSe="color",LSe="fill",aht="bgFill",MSe=",",sht=xe(),i8=new Map,oht=o(t=>nt.sanitizeText(t,sht),"sanitizeText"),lht=o(function(t,e=""){let r=i8.get(t);r||(r={id:t,styles:[],textStyles:[]},i8.set(t,r)),e?.split(MSe).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(RSe).exec(n)){let s=i.replace(LSe,aht).replace(RSe,LSe);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),cht=o(function(t,e=""){let r=Dc.get(t);e!=null&&(r.styles=e.split(MSe))},"addStyle2Node"),uht=o(function(t,e){t.split(",").forEach(function(r){let n=Dc.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},Dc.set(i,n)}n.classes||(n.classes=[]),n.classes.push(e)})},"setCssClass"),ISe=o((t,e)=>{let r=t.flat(),n=[],a=r.find(s=>s?.type==="column-setting")?.columns??-1;for(let s of r){if(typeof a=="number"&&a>0&&s.type!=="column-setting"&&typeof s.widthInColumns=="number"&&s.widthInColumns>a&&X.warn(`Block ${s.id} width ${s.widthInColumns} exceeds configured column width ${a}`),s.label&&(s.label=oht(s.label)),s.type==="classDef"){lht(s.id,s.css);continue}if(s.type==="applyClass"){uht(s.id,s?.styleClass??"");continue}if(s.type==="applyStyles"){s?.stylesStr&&cht(s.id,s?.stylesStr);continue}if(s.type==="column-setting")e.columns=s.columns??-1;else if(s.type==="edge"){let l=(eW.get(s.id)??0)+1;eW.set(s.id,l),s.id=l+"-"+s.id,tW.push(s)}else{s.label||(s.type==="composite"?s.label="":s.label=s.id);let l=Dc.get(s.id);if(l===void 0?Dc.set(s.id,s):(s.type!=="na"&&(l.type=s.type),s.label!==s.id&&(l.label=s.label)),s.children&&ISe(s.children,s),s.type==="space"){let u=s.width??1;for(let h=0;h{X.debug("Clear called"),Mr(),p3={id:"root",type:"composite",children:[],columns:-1},Dc=new Map([["root",p3]]),rW=[],i8=new Map,tW=[],eW=new Map},"clear");o(fht,"typeStr2Type");o(dht,"edgeTypeStr2Type");o(pht,"edgeStrToEdgeData");NSe=0,mht=o(()=>(NSe++,"id-"+Math.random().toString(36).substr(2,12)+"-"+NSe),"generateId"),ght=o(t=>{p3.children=t,ISe(t,p3),rW=p3.children},"setHierarchy"),yht=o(t=>{let e=Dc.get(t);return e?e.columns?e.columns:e.children?e.children.length:-1:-1},"getColumns"),vht=o(()=>[...Dc.values()],"getBlocksFlat"),xht=o(()=>rW||[],"getBlocks"),bht=o(()=>tW,"getEdges"),Tht=o(t=>Dc.get(t),"getBlock"),wht=o(t=>{Dc.set(t.id,t)},"setBlock"),kht=o(()=>X,"getLogger"),Sht=o(function(){return i8},"getClasses"),Eht={getConfig:o(()=>tr().block,"getConfig"),typeStr2Type:fht,edgeTypeStr2Type:dht,edgeStrToEdgeData:pht,getLogger:kht,getBlocksFlat:vht,getBlocks:xht,getEdges:bht,setHierarchy:ght,getBlock:Tht,setBlock:wht,getColumns:yht,getClasses:Sht,clear:hht,generateId:mht},OSe=Eht});var a8,Cht,BSe,FSe=I(()=>{"use strict";_o();ey();a8=o((t,e)=>{let r=Ep,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return vs(n,i,a,e)},"fade"),Cht=o(t=>`.label { font-family: ${t.fontFamily}; color: ${t.nodeTextColor||t.textColor}; } @@ -2655,14 +2687,14 @@ Expecting `+de.join(", ")+", got '"+(this.terminals_[q]||q)+"'":ne="Parse error /* For html labels only */ .labelBkg { - background-color: ${LC(t.edgeLabelBackground,.5)}; + background-color: ${a8(t.edgeLabelBackground,.5)}; // background-color: } .node .cluster { - // fill: ${LC(t.mainBkg,.5)}; - fill: ${LC(t.clusterBkg,.5)}; - stroke: ${LC(t.clusterBorder,.2)}; + // fill: ${a8(t.mainBkg,.5)}; + fill: ${a8(t.clusterBkg,.5)}; + stroke: ${a8(t.clusterBorder,.2)}; box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px; stroke-width: 1px; } @@ -2697,11 +2729,11 @@ Expecting `+de.join(", ")+", got '"+(this.terminals_[q]||q)+"'":ne="Parse error font-size: 18px; fill: ${t.textColor}; } - ${zc()} -`,"getStyles"),Rbe=_nt});var Dnt,Lnt,Rnt,Nnt,Mnt,Int,Ont,Pnt,Bnt,Fnt,$nt,Mbe,Ibe=M(()=>{"use strict";pt();Dnt=o((t,e,r,n)=>{e.forEach(i=>{$nt[i](t,r,n)})},"insertMarkers"),Lnt=o((t,e,r)=>{X.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),Rnt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),Nnt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),Mnt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Int=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),Ont=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),Pnt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),Bnt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),Fnt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),$nt={extension:Lnt,composition:Rnt,aggregation:Nnt,dependency:Mnt,lollipop:Int,point:Ont,circle:Pnt,cross:Bnt,barb:Fnt},Mbe=Dnt});function znt(t,e){if(t===0||!Number.isInteger(t))throw new Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw new Error("Position must be a non-negative integer."+e);if(t<0)return{px:e,py:0};if(t===1)return{px:0,py:e};let r=e%t,n=Math.floor(e/t);return{px:r,py:n}}function xz(t,e,r=0,n=0){X.debug("setBlockSizes abc95 (start)",t.id,t?.size?.x,"block width =",t?.size,"siblingWidth",r),t?.size?.width||(t.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(t.children?.length>0){for(let m of t.children)xz(m,e);let s=Gnt(t);i=s.width,a=s.height,X.debug("setBlockSizes abc95 maxWidth of",t.id,":s children is ",i,a);for(let m of t.children)m.size&&(X.debug(`abc95 Setting size of children of ${t.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+Ti*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,X.debug(`abc95 updating size of ${t.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of t.children)xz(m,e,i,a);let l=t.columns??-1,u=0;for(let m of t.children)u+=m.widthInColumns??1;let h=t.children.length;l>0&&l0?Math.min(t.children.length,l):t.children.length;if(m>0){let g=(d-m*Ti-Ti)/m;X.debug("abc95 (growing to fit) width",t.id,d,t.size?.width,g);for(let y of t.children)y.size&&(y.size.width=g)}}t.size={width:d,height:p,x:0,y:0}}X.debug("setBlockSizes abc94 (done)",t.id,t?.size?.x,t?.size?.width,t?.size?.y,t?.size?.height)}function Obe(t,e){X.debug(`abc85 layout blocks (=>layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`);let r=t.columns??-1;if(X.debug("layoutBlocks columns abc95",t.id,"=>",r,t),t.children&&t.children.length>0){let n=t?.children[0]?.size?.width??0,i=t.children.length*n+(t.children.length-1)*Ti;X.debug("widthOfChildren 88",i,"posX");let a=0;X.debug("abc91 block?.size?.x",t.id,t?.size?.x);let s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-Ti,l=0;for(let u of t.children){let h=t;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=znt(r,a);if(m!=l&&(l=m,s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-Ti,X.debug("New row in layout for block",t.id," and child ",u.id,l)),X.debug(`abc89 layout blocks (child) id: ${u.id} Pos: ${a} (px, py) ${p},${m} (${h?.size?.x},${h?.size?.y}) parent: ${h.id} width: ${f}${Ti}`),h.size){let y=f/2;u.size.x=s+Ti+y,X.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${y} padding=${Ti} width=${f} halfWidth=${y} => x:${u.size.x} y:${u.size.y} ${u.widthInColumns} (width * (child?.w || 1)) / 2 ${f*(u?.widthInColumns??1)/2}`),s=u.size.x+y,u.size.y=h.size.y-h.size.height/2+m*(d+Ti)+d/2+Ti,X.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${Ti}${y}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&Obe(u,e);let g=u?.widthInColumns??1;r>0&&(g=Math.min(g,r-a%r)),a+=g,X.debug("abc88 columnsPos",u,a)}}X.debug(`layout blocks (<==layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`)}function Pbe(t,{minX:e,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(t.size&&t.id!=="root"){let{x:a,y:s,width:l,height:u}=t.size;a-l/2n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(t.children)for(let a of t.children)({minX:e,minY:r,maxX:n,maxY:i}=Pbe(a,{minX:e,minY:r,maxX:n,maxY:i}));return{minX:e,minY:r,maxX:n,maxY:i}}function Bbe(t){let e=t.getBlock("root");if(!e)return;xz(e,t,0,0),Obe(e,t),X.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=Pbe(e),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var Ti,Gnt,Fbe=M(()=>{"use strict";pt();Xt();Ti=ge()?.block?.padding??8;o(znt,"calculateBlockPosition");Gnt=o(t=>{let e=0,r=0;for(let n of t.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};X.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>e&&(e=i/(t.widthInColumns??1)),a>r&&(r=a))}return{width:e,height:r}},"getMaxChildSize");o(xz,"setBlockSizes");o(Obe,"layoutBlocks");o(Pbe,"findBounds");o(Bbe,"layout")});function $be(t,e){e&&t.attr("style",e)}function Vnt(t,e){let r=qe(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),n=r.append("xhtml:div"),i=t.label,a=t.isNode?"nodeLabel":"edgeLabel",s=n.append("span");return s.html(sr(i,e)),$be(s,t.labelStyle),s.attr("class",a),$be(n,t.labelStyle),n.style("display","inline-block"),n.style("white-space","nowrap"),n.attr("xmlns","http://www.w3.org/1999/xhtml"),r.node()}var Unt,ks,RC=M(()=>{"use strict";yr();Xt();gr();pt();zo();tr();o($be,"applyStyle");o(Vnt,"addHtmlLabel");Unt=o(async(t,e,r,n)=>{let i=t||"";typeof i=="object"&&(i=i[0]);let a=ge();if(vr(a.flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),X.debug("vertexText"+i);let s=await k9(Ji(i)),l={isNode:n,label:s,labelStyle:e.replace("fill:","color:")};return Vnt(l,a)}else{let s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",e.replace("color:","fill:"));let l=[];typeof i=="string"?l=i.split(/\\n|\n|/gi):Array.isArray(i)?l=i:l=[];for(let u of l){let h=document.createElementNS("http://www.w3.org/2000/svg","tspan");h.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),h.setAttribute("dy","1em"),h.setAttribute("x","0"),r?h.setAttribute("class","title-row"):h.setAttribute("class","row"),h.textContent=u.trim(),s.appendChild(h)}return s}},"createLabel"),ks=Unt});var Gbe,Hnt,zbe,Vbe=M(()=>{"use strict";pt();Gbe=o((t,e,r,n,i)=>{e.arrowTypeStart&&zbe(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&zbe(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),Hnt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},zbe=o((t,e,r,n,i,a)=>{let s=Hnt[r];if(!s){X.warn(`Unknown arrow type: ${r}`);return}let l=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function NC(t,e){ge().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}var bz,Ya,Hbe,qbe,qnt,Wnt,Ube,Wbe,Ybe=M(()=>{"use strict";pt();RC();zo();yr();Xt();tr();gr();X9();P2();Vbe();bz={},Ya={},Hbe=o(async(t,e)=>{let r=ge(),n=vr(r.flowchart.htmlLabels),i=e.labelType==="markdown"?di(t,e.label,{style:e.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):await ks(e.label,e.labelStyle),a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(i);let l=i.getBBox();if(n){let h=i.children[0],f=qe(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),bz[e.id]=a,e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=await ks(e.startLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Ya[e.id]||(Ya[e.id]={}),Ya[e.id].startLeft=f,NC(u,e.startLabelLeft)}if(e.startLabelRight){let h=await ks(e.startLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),Ya[e.id]||(Ya[e.id]={}),Ya[e.id].startRight=f,NC(u,e.startLabelRight)}if(e.endLabelLeft){let h=await ks(e.endLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Ya[e.id]||(Ya[e.id]={}),Ya[e.id].endLeft=f,NC(u,e.endLabelLeft)}if(e.endLabelRight){let h=await ks(e.endLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),Ya[e.id]||(Ya[e.id]={}),Ya[e.id].endRight=f,NC(u,e.endLabelRight)}return i},"insertEdgeLabel");o(NC,"setTerminalWidth");qbe=o((t,e)=>{X.debug("Moving label abc88 ",t.id,t.label,bz[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=ge(),{subGraphTitleTotalMargin:i}=Pu(n);if(t.label){let a=bz[t.id],s=t.x,l=t.y;if(r){let u=qt.calcLabelPosition(r);X.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=Ya[t.id].startLeft,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=Ya[t.id].startRight,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=Ya[t.id].endLeft,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=Ya[t.id].endRight,s=t.x,l=t.y;if(r){let u=qt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),qnt=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),Wnt=o((t,e,r)=>{X.debug(`intersection calc abc89: + ${Su()} +`,"getStyles"),BSe=Cht});var Aht,_ht,Dht,Rht,Lht,Nht,Mht,Iht,Oht,Pht,Bht,$Se,zSe=I(()=>{"use strict";gt();Aht=o((t,e,r,n)=>{e.forEach(i=>{Bht[i](t,r,n)})},"insertMarkers"),_ht=o((t,e,r)=>{X.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),Dht=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),Rht=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),Lht=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Nht=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),Mht=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),Iht=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),Oht=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),Pht=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),Bht={extension:_ht,composition:Dht,aggregation:Rht,dependency:Lht,lollipop:Nht,point:Mht,circle:Iht,cross:Oht,barb:Pht},$Se=Aht});function Fht(t,e){if(t===0||!Number.isInteger(t))throw new Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw new Error("Position must be a non-negative integer."+e);if(t<0)return{px:e,py:0};if(t===1)return{px:0,py:e};let r=e%t,n=Math.floor(e/t);return{px:r,py:n}}function nW(t,e,r=0,n=0){X.debug("setBlockSizes abc95 (start)",t.id,t?.size?.x,"block width =",t?.size,"siblingWidth",r),t?.size?.width||(t.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(t.children?.length>0){for(let m of t.children)nW(m,e);let s=$ht(t);i=s.width,a=s.height,X.debug("setBlockSizes abc95 maxWidth of",t.id,":s children is ",i,a);for(let m of t.children)m.size&&(X.debug(`abc95 Setting size of children of ${t.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+Oi*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,X.debug(`abc95 updating size of ${t.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of t.children)nW(m,e,i,a);let l=t.columns??-1,u=0;for(let m of t.children)u+=m.widthInColumns??1;let h=t.children.length;l>0&&l0?Math.min(t.children.length,l):t.children.length;if(m>0){let g=(d-m*Oi-Oi)/m;X.debug("abc95 (growing to fit) width",t.id,d,t.size?.width,g);for(let y of t.children)y.size&&(y.size.width=g)}}t.size={width:d,height:p,x:0,y:0}}X.debug("setBlockSizes abc94 (done)",t.id,t?.size?.x,t?.size?.width,t?.size?.y,t?.size?.height)}function GSe(t,e){X.debug(`abc85 layout blocks (=>layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`);let r=t.columns??-1;if(X.debug("layoutBlocks columns abc95",t.id,"=>",r,t),t.children&&t.children.length>0){let n=t?.children[0]?.size?.width??0,i=t.children.length*n+(t.children.length-1)*Oi;X.debug("widthOfChildren 88",i,"posX");let a=0;X.debug("abc91 block?.size?.x",t.id,t?.size?.x);let s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-Oi,l=0;for(let u of t.children){let h=t;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=Fht(r,a);if(m!=l&&(l=m,s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-Oi,X.debug("New row in layout for block",t.id," and child ",u.id,l)),X.debug(`abc89 layout blocks (child) id: ${u.id} Pos: ${a} (px, py) ${p},${m} (${h?.size?.x},${h?.size?.y}) parent: ${h.id} width: ${f}${Oi}`),h.size){let y=f/2;u.size.x=s+Oi+y,X.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${y} padding=${Oi} width=${f} halfWidth=${y} => x:${u.size.x} y:${u.size.y} ${u.widthInColumns} (width * (child?.w || 1)) / 2 ${f*(u?.widthInColumns??1)/2}`),s=u.size.x+y,u.size.y=h.size.y-h.size.height/2+m*(d+Oi)+d/2+Oi,X.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${Oi}${y}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&GSe(u,e);let g=u?.widthInColumns??1;r>0&&(g=Math.min(g,r-a%r)),a+=g,X.debug("abc88 columnsPos",u,a)}}X.debug(`layout blocks (<==layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`)}function VSe(t,{minX:e,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(t.size&&t.id!=="root"){let{x:a,y:s,width:l,height:u}=t.size;a-l/2n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(t.children)for(let a of t.children)({minX:e,minY:r,maxX:n,maxY:i}=VSe(a,{minX:e,minY:r,maxX:n,maxY:i}));return{minX:e,minY:r,maxX:n,maxY:i}}function qSe(t){let e=t.getBlock("root");if(!e)return;nW(e,t,0,0),GSe(e,t),X.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=VSe(e),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var Oi,$ht,USe=I(()=>{"use strict";gt();Qt();Oi=xe()?.block?.padding??8;o(Fht,"calculateBlockPosition");$ht=o(t=>{let e=0,r=0;for(let n of t.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};X.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>e&&(e=i/(t.widthInColumns??1)),a>r&&(r=a))}return{width:e,height:r}},"getMaxChildSize");o(nW,"setBlockSizes");o(GSe,"layoutBlocks");o(VSe,"findBounds");o(qSe,"layout")});function WSe(t,e){e&&t.attr("style",e)}function zht(t,e){let r=He(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),n=r.append("xhtml:div"),i=t.label,a=t.isNode?"nodeLabel":"edgeLabel",s=n.append("span");return s.html(fr(i,e)),WSe(s,t.labelStyle),s.attr("class",a),WSe(n,t.labelStyle),n.style("display","inline-block"),n.style("white-space","nowrap"),n.attr("xmlns","http://www.w3.org/1999/xhtml"),r.node()}var Ght,Ws,s8=I(()=>{"use strict";kr();Qt();wr();gt();yl();sr();o(WSe,"applyStyle");o(zht,"addHtmlLabel");Ght=o(async(t,e,r,n)=>{let i=t||"";typeof i=="object"&&(i=i[0]);let a=xe();if(Sr(a.flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),X.debug("vertexText"+i);let s=await ZN(ga(i)),l={isNode:n,label:s,labelStyle:e.replace("fill:","color:")};return zht(l,a)}else{let s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",e.replace("color:","fill:"));let l=[];typeof i=="string"?l=i.split(/\\n|\n|/gi):Array.isArray(i)?l=i:l=[];for(let u of l){let h=document.createElementNS("http://www.w3.org/2000/svg","tspan");h.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),h.setAttribute("dy","1em"),h.setAttribute("x","0"),r?h.setAttribute("class","title-row"):h.setAttribute("class","row"),h.textContent=u.trim(),s.appendChild(h)}return s}},"createLabel"),Ws=Ght});var YSe,Vht,HSe,jSe=I(()=>{"use strict";gt();YSe=o((t,e,r,n,i)=>{e.arrowTypeStart&&HSe(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&HSe(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),Vht={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},HSe=o((t,e,r,n,i,a)=>{let s=Vht[r];if(!s){X.warn(`Unknown arrow type: ${r}`);return}let l=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function o8(t,e){xe().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}var iW,ms,KSe,QSe,qht,Uht,XSe,ZSe,JSe=I(()=>{"use strict";gt();s8();yl();kr();Qt();sr();wr();kM();ab();jSe();iW={},ms={},KSe=o(async(t,e)=>{let r=xe(),n=Sr(r.flowchart.htmlLabels),i=e.labelType==="markdown"?Ai(t,e.label,{style:e.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):await Ws(e.label,e.labelStyle),a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(i);let l=i.getBBox();if(n){let h=i.children[0],f=He(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),iW[e.id]=a,e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=await Ws(e.startLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),ms[e.id]||(ms[e.id]={}),ms[e.id].startLeft=f,o8(u,e.startLabelLeft)}if(e.startLabelRight){let h=await Ws(e.startLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),ms[e.id]||(ms[e.id]={}),ms[e.id].startRight=f,o8(u,e.startLabelRight)}if(e.endLabelLeft){let h=await Ws(e.endLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),ms[e.id]||(ms[e.id]={}),ms[e.id].endLeft=f,o8(u,e.endLabelLeft)}if(e.endLabelRight){let h=await Ws(e.endLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),ms[e.id]||(ms[e.id]={}),ms[e.id].endRight=f,o8(u,e.endLabelRight)}return i},"insertEdgeLabel");o(o8,"setTerminalWidth");QSe=o((t,e)=>{X.debug("Moving label abc88 ",t.id,t.label,iW[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=xe(),{subGraphTitleTotalMargin:i}=Eh(n);if(t.label){let a=iW[t.id],s=t.x,l=t.y;if(r){let u=jt.calcLabelPosition(r);X.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=ms[t.id].startLeft,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=ms[t.id].startRight,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=ms[t.id].endLeft,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=ms[t.id].endRight,s=t.x,l=t.y;if(r){let u=jt.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),qht=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),Uht=o((t,e,r)=>{X.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(e)} insidePoint : ${JSON.stringify(r)} - node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{X.debug("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(!qnt(e,a)&&!i){let s=Wnt(e,n,a),l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},"cutPathAtIntersect"),Wbe=o(function(t,e,r,n,i,a,s){let l=r.points;X.debug("abc88 InsertEdge: edge=",r,"e=",e);let u=!1,h=a.node(e.v);var f=a.node(e.w);f?.intersect&&h?.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(h.intersect(l[0])),l.push(f.intersect(l[l.length-1]))),r.toCluster&&(X.debug("to cluster abc88",n[r.toCluster]),l=Ube(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(X.debug("from cluster abc88",n[r.fromCluster]),l=Ube(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(S=>!Number.isNaN(S.y)),p=No;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=fw(r),y=Cl().x(m).y(g).curve(p),v;switch(r.thickness){case"normal":v="edge-thickness-normal";break;case"thick":v="edge-thickness-thick";break;case"invisible":v="edge-thickness-thick";break;default:v=""}switch(r.pattern){case"solid":v+=" edge-pattern-solid";break;case"dotted":v+=" edge-pattern-dotted";break;case"dashed":v+=" edge-pattern-dashed";break}let x=t.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+v+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(ge().flowchart.arrowMarkerAbsolute||ge().state.arrowMarkerAbsolute)&&(b=md(!0)),Gbe(x,r,b,s,i);let T={};return u&&(T.updatedPath=l),T.originalPath=r.points,T},"insertEdge")});var Ynt,Xbe,jbe=M(()=>{"use strict";Ynt=o(t=>{let e=new Set;for(let r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r);break}return e},"expandAndDeduplicateDirections"),Xbe=o((t,e,r)=>{let n=Ynt(t),i=2,a=e.height+2*r.padding,s=a/i,l=e.width+2*s+r.padding,u=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:l/2,y:2*u},{x:l-s,y:0},{x:l,y:0},{x:l,y:-a/3},{x:l+2*u,y:-a/2},{x:l,y:-2*a/3},{x:l,y:-a},{x:l-s,y:-a},{x:l/2,y:-a-2*u},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*u,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:l-s,y:-a},{x:l,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:l,y:-s},{x:l,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:l,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:l,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:l,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:l,y:0},{x:0,y:-s},{x:l,y:-a}]:n.has("left")&&n.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-a}]:n.has("right")?[{x:s,y:-u},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a+u}]:n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u}]:n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints")});function Xnt(t,e){return t.intersect(e)}var Kbe,Qbe=M(()=>{"use strict";o(Xnt,"intersectNode");Kbe=Xnt});function jnt(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(jnt,"intersectEllipse");MC=jnt});function Knt(t,e,r){return MC(t,e,e,r)}var Zbe,Jbe=M(()=>{"use strict";Tz();o(Knt,"intersectCircle");Zbe=Knt});function Qnt(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&e4e(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&e4e(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function e4e(t,e){return t*e>0}var t4e,r4e=M(()=>{"use strict";o(Qnt,"intersectLine");o(e4e,"sameSign");t4e=Qnt});function Znt(t,e,r){var n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));for(var u=n-t.width/2-s,h=i-t.height/2-l,f=0;f1&&a.sort(function(g,y){var v=g.x-r.x,x=g.y-r.y,b=Math.sqrt(v*v+x*x),T=y.x-r.x,S=y.y-r.y,w=Math.sqrt(T*T+S*S);return b{"use strict";r4e();n4e=Znt;o(Znt,"intersectPolygon")});var Jnt,a4e,s4e=M(()=>{"use strict";Jnt=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),a4e=Jnt});var $n,wz=M(()=>{"use strict";Qbe();Jbe();Tz();i4e();s4e();$n={node:Kbe,circle:Zbe,ellipse:MC,polygon:n4e,rect:a4e}});function Wl(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Li,ti,kz=M(()=>{"use strict";RC();zo();Xt();yr();gr();tr();Li=o(async(t,e,r,n)=>{let i=ge(),a,s=e.useHtmlLabels||vr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=t.insert("g").attr("class",a).attr("id",e.domId||e.id),u=l.insert("g").attr("class","label").attr("style",e.labelStyle),h;e.labelText===void 0?h="":h=typeof e.labelText=="string"?e.labelText:e.labelText[0];let f=u.node(),d;e.labelType==="markdown"?d=di(u,sr(Ji(h),i),{useHtmlLabels:s,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(await ks(sr(Ji(h),i),e.labelStyle,!1,n));let p=d.getBBox(),m=e.padding/2;if(vr(i.flowchart.htmlLabels)){let g=d.children[0],y=qe(d),v=g.getElementsByTagName("img");if(v){let x=h.replace(/]*>/g,"").trim()==="";await Promise.all([...v].map(b=>new Promise(T=>{function S(){if(b.style.display="flex",b.style.flexDirection="column",x){let w=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,C=parseInt(w,10)*5+"px";b.style.minWidth=C,b.style.maxWidth=C}else b.style.width="100%";T(b)}o(S,"setupImage"),setTimeout(()=>{b.complete&&S()}),b.addEventListener("error",S),b.addEventListener("load",S)})))}p=g.getBoundingClientRect(),y.attr("width",p.width),y.attr("height",p.height)}return s?u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):u.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),u.insert("rect",":first-child"),{shapeSvg:l,bbox:p,halfPadding:m,label:u}},"labelHelper"),ti=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds");o(Wl,"insertPolygonShape")});var eit,o4e,l4e=M(()=>{"use strict";kz();pt();Xt();wz();eit=o(async(t,e)=>{e.useHtmlLabels||ge().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Li(t,e,"node "+e.classes,!0);X.info("Classes = ",e.classes);let s=n.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),ti(e,s),e.intersect=function(l){return $n.rect(e,l)},n},"note"),o4e=eit});function Ez(t,e,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");e.includes("t")?(X.debug("add top border"),a(r)):s(r),e.includes("r")?(X.debug("add right border"),a(n)):s(n),e.includes("b")?(X.debug("add bottom border"),a(r)):s(r),e.includes("l")?(X.debug("add left border"),a(n)):s(n),t.attr("stroke-dasharray",i.join(" "))}var c4e,To,u4e,tit,rit,nit,iit,ait,sit,oit,lit,cit,uit,hit,fit,dit,pit,mit,git,yit,vit,xit,h4e,bit,Tit,f4e,IC,Sz,d4e,p4e=M(()=>{"use strict";yr();Xt();gr();pt();jbe();RC();wz();l4e();kz();c4e=o(t=>t?" "+t:"","formatClass"),To=o((t,e)=>`${e||"node default"}${c4e(t.classes)} ${c4e(t.class)}`,"getClassesFromNode"),u4e=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=i+a,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];X.info("Question main (Circle)");let u=Wl(r,s,s,l);return u.attr("style",e.style),ti(e,u),e.intersect=function(h){return X.warn("Intersect called"),$n.polygon(e,l,h)},r},"question"),tit=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(s){return $n.circle(e,14,s)},r},"choice"),rit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=4,a=n.height+e.padding,s=a/i,l=n.width+2*s+e.padding,u=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],h=Wl(r,l,a,u);return h.attr("style",e.style),ti(e,h),e.intersect=function(f){return $n.polygon(e,u,f)},r},"hexagon"),nit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,l=n.width+2*s+e.padding,u=Xbe(e.directions,n,e),h=Wl(r,l,a,u);return h.attr("style",e.style),ti(e,h),e.intersect=function(f){return $n.polygon(e,u,f)},r},"block_arrow"),iit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Wl(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(u){return $n.polygon(e,s,u)},r},"rect_left_inv_arrow"),ait=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],l=Wl(r,i,a,s);return l.attr("style",e.style),ti(e,l),e.intersect=function(u){return $n.polygon(e,s,u)},r},"lean_right"),sit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],l=Wl(r,i,a,s);return l.attr("style",e.style),ti(e,l),e.intersect=function(u){return $n.polygon(e,s,u)},r},"lean_left"),oit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],l=Wl(r,i,a,s);return l.attr("style",e.style),ti(e,l),e.intersect=function(u){return $n.polygon(e,s,u)},r},"trapezoid"),lit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],l=Wl(r,i,a,s);return l.attr("style",e.style),ti(e,l),e.intersect=function(u){return $n.polygon(e,s,u)},r},"inv_trapezoid"),cit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],l=Wl(r,i,a,s);return l.attr("style",e.style),ti(e,l),e.intersect=function(u){return $n.polygon(e,s,u)},r},"rect_right_inv_arrow"),uit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+e.padding,u="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,h=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return ti(e,h),e.intersect=function(f){let d=$n.rect(e,f),p=d.x-e.x;if(a!=0&&(Math.abs(p)e.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-e.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),hit=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(t,e,"node "+e.classes+" "+e.class,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(Ez(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{X.warn(`Unknown node property ${d}`)})}return ti(e,a),e.intersect=function(f){return $n.rect(e,f)},r},"rect"),fit=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(t,e,"node "+e.classes,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(Ez(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{X.warn(`Unknown node property ${d}`)})}return ti(e,a),e.intersect=function(f){return $n.rect(e,f)},r},"composite"),dit=o(async(t,e)=>{let{shapeSvg:r}=await Li(t,e,"label",!0);X.trace("Classes = ",e.class);let n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),e.props){let s=new Set(Object.keys(e.props));e.props.borders&&(Ez(n,e.props.borders,i,a),s.delete("borders")),s.forEach(l=>{X.warn(`Unknown node property ${l}`)})}return ti(e,n),e.intersect=function(s){return $n.rect(e,s)},r},"labelRect");o(Ez,"applyNodePropertyBorders");pit=o(async(t,e)=>{let r;e.classes?r="node "+e.classes:r="node default";let n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=e.labelText.flat?e.labelText.flat():e.labelText,u="";typeof l=="object"?u=l[0]:u=l,X.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(await ks(u,e.labelStyle,!0,!0)),f={width:0,height:0};if(vr(ge().flowchart.htmlLabels)){let y=h.children[0],v=qe(h);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}X.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(await ks(d.join?d.join("
    "):d,e.labelStyle,!0,!0));if(vr(ge().flowchart.htmlLabels)){let y=m.children[0],v=qe(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=e.padding/2;return qe(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),qe(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.height+e.padding,a=n.width+i/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return ti(e,s),e.intersect=function(l){return $n.rect(e,l)},r},"stadium"),git=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(t,e,To(e,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),X.info("Circle main"),ti(e,a),e.intersect=function(s){return X.info("Circle intersect",e,n.width/2+i,s),$n.circle(e,n.width/2+i,s)},r},"circle"),yit=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(t,e,To(e,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",e.class),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i+a).attr("width",n.width+e.padding+a*2).attr("height",n.height+e.padding+a*2),u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),X.info("DoubleCircle main"),ti(e,l),e.intersect=function(h){return X.info("DoubleCircle intersect",e,n.width/2+i+a,h),$n.circle(e,n.width/2+i+a,h)},r},"doublecircle"),vit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Li(t,e,To(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],l=Wl(r,i,a,s);return l.attr("style",e.style),ti(e,l),e.intersect=function(u){return $n.polygon(e,s,u)},r},"subroutine"),xit=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),ti(e,n),e.intersect=function(i){return $n.circle(e,7,i)},r},"start"),h4e=o((t,e,r)=>{let n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,a=10;r==="LR"&&(i=10,a=70);let s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return ti(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(l){return $n.rect(e,l)},n},"forkJoin"),bit=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),ti(e,i),e.intersect=function(a){return $n.circle(e,7,a)},r},"end"),Tit=o(async(t,e)=>{let r=e.padding/2,n=4,i=8,a;e.classes?a="node "+e.classes:a="node default";let s=t.insert("g").attr("class",a).attr("id",e.domId||e.id),l=s.insert("rect",":first-child"),u=s.insert("line"),h=s.insert("line"),f=0,d=n,p=s.insert("g").attr("class","label"),m=0,g=e.classData.annotations?.[0],y=e.classData.annotations[0]?"\xAB"+e.classData.annotations[0]+"\xBB":"",v=p.node().appendChild(await ks(y,e.labelStyle,!0,!0)),x=v.getBBox();if(vr(ge().flowchart.htmlLabels)){let A=v.children[0],L=qe(v);x=A.getBoundingClientRect(),L.attr("width",x.width),L.attr("height",x.height)}e.classData.annotations[0]&&(d+=x.height+n,f+=x.width);let b=e.classData.label;e.classData.type!==void 0&&e.classData.type!==""&&(ge().flowchart.htmlLabels?b+="<"+e.classData.type+">":b+="<"+e.classData.type+">");let T=p.node().appendChild(await ks(b,e.labelStyle,!0,!0));qe(T).attr("class","classTitle");let S=T.getBBox();if(vr(ge().flowchart.htmlLabels)){let A=T.children[0],L=qe(T);S=A.getBoundingClientRect(),L.attr("width",S.width),L.attr("height",S.height)}d+=S.height+n,S.width>f&&(f=S.width);let w=[];e.classData.members.forEach(async A=>{let L=A.getDisplayDetails(),I=L.displayText;ge().flowchart.htmlLabels&&(I=I.replace(//g,">"));let R=p.node().appendChild(await ks(I,L.cssStyle?L.cssStyle:e.labelStyle,!0,!0)),E=R.getBBox();if(vr(ge().flowchart.htmlLabels)){let _=R.children[0],D=qe(R);E=_.getBoundingClientRect(),D.attr("width",E.width),D.attr("height",E.height)}E.width>f&&(f=E.width),d+=E.height+n,w.push(R)}),d+=i;let k=[];if(e.classData.methods.forEach(async A=>{let L=A.getDisplayDetails(),I=L.displayText;ge().flowchart.htmlLabels&&(I=I.replace(//g,">"));let R=p.node().appendChild(await ks(I,L.cssStyle?L.cssStyle:e.labelStyle,!0,!0)),E=R.getBBox();if(vr(ge().flowchart.htmlLabels)){let _=R.children[0],D=qe(R);E=_.getBoundingClientRect(),D.attr("width",E.width),D.attr("height",E.height)}E.width>f&&(f=E.width),d+=E.height+n,k.push(R)}),d+=i,g){let A=(f-x.width)/2;qe(v).attr("transform","translate( "+(-1*f/2+A)+", "+-1*d/2+")"),m=x.height+n}let C=(f-S.width)/2;return qe(T).attr("transform","translate( "+(-1*f/2+C)+", "+(-1*d/2+m)+")"),m+=S.height+n,u.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,w.forEach(A=>{qe(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let L=A?.getBBox();m+=(L?.height??0)+n}),m+=i,h.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,k.forEach(A=>{qe(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let L=A?.getBBox();m+=(L?.height??0)+n}),l.attr("style",e.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+e.padding).attr("height",d+e.padding),ti(e,l),e.intersect=function(A){return $n.rect(e,A)},s},"class_box"),f4e={rhombus:u4e,composite:fit,question:u4e,rect:hit,labelRect:dit,rectWithTitle:pit,choice:tit,circle:git,doublecircle:yit,stadium:mit,hexagon:rit,block_arrow:nit,rect_left_inv_arrow:iit,lean_right:ait,lean_left:sit,trapezoid:oit,inv_trapezoid:lit,rect_right_inv_arrow:cit,cylinder:uit,start:xit,end:bit,note:o4e,subroutine:vit,fork:h4e,join:h4e,class_box:Tit},IC={},Sz=o(async(t,e,r)=>{let n,i;if(e.link){let a;ge().securityLevel==="sandbox"?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=await f4e[e.shape](n,e,r)}else i=await f4e[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),IC[e.id]=n,e.haveCallback&&IC[e.id].attr("class",IC[e.id].attr("class")+" clickable"),n},"insertNode"),d4e=o(t=>{let e=IC[t.id];X.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});function m4e(t,e,r=!1){let n=t,i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i=i+" flowchart-label";let a=0,s="",l;switch(n.type){case"round":a=5,s="rect";break;case"composite":a=0,s="composite",l=0;break;case"square":s="rect";break;case"diamond":s="question";break;case"hexagon":s="hexagon";break;case"block_arrow":s="block_arrow";break;case"odd":s="rect_left_inv_arrow";break;case"lean_right":s="lean_right";break;case"lean_left":s="lean_left";break;case"trapezoid":s="trapezoid";break;case"inv_trapezoid":s="inv_trapezoid";break;case"rect_left_inv_arrow":s="rect_left_inv_arrow";break;case"circle":s="circle";break;case"ellipse":s="ellipse";break;case"stadium":s="stadium";break;case"subroutine":s="subroutine";break;case"cylinder":s="cylinder";break;case"group":s="rect";break;case"doublecircle":s="doublecircle";break;default:s="rect"}let u=zL(n?.styles??[]),h=n.label,f=n.size??{width:0,height:0,x:0,y:0};return{labelStyle:u.labelStyle,shape:s,labelText:h,rx:a,ry:a,class:i,style:u.style,id:n.id,directions:n.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:r,intersect:void 0,type:n.type,padding:l??Qt()?.block?.padding??0}}async function wit(t,e,r){let n=m4e(e,r,!1);if(n.type==="group")return;let i=Qt(),a=await Sz(t,n,{config:i}),s=a.node().getBBox(),l=r.getBlock(n.id);l.size={width:s.width,height:s.height,x:0,y:0,node:a},r.setBlock(l),a.remove()}async function kit(t,e,r){let n=m4e(e,r,!0);if(r.getBlock(n.id).type!=="space"){let a=Qt();await Sz(t,n,{config:a}),e.intersect=n?.intersect,d4e(n)}}async function Cz(t,e,r,n){for(let i of e)await n(t,i,r),i.children&&await Cz(t,i.children,r,n)}async function g4e(t,e,r){await Cz(t,e,r,wit)}async function y4e(t,e,r){await Cz(t,e,r,kit)}async function v4e(t,e,r,n,i){let a=new cn({multigraph:!0,compound:!0});a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let s of r)s.size&&a.setNode(s.id,{width:s.size.width,height:s.size.height,intersect:s.intersect});for(let s of e)if(s.start&&s.end){let l=n.getBlock(s.start),u=n.getBlock(s.end);if(l?.size&&u?.size){let h=l.size,f=u.size,d=[{x:h.x,y:h.y},{x:h.x+(f.x-h.x)/2,y:h.y+(f.y-h.y)/2},{x:f.x,y:f.y}];Wbe(t,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",a,i),s.label&&(await Hbe(t,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),qbe({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var x4e=M(()=>{"use strict";qo();qn();Ybe();p4e();tr();o(m4e,"getNodeFromBlock");o(wit,"calculateBlockSize");o(kit,"insertBlockPositioned");o(Cz,"performOperations");o(g4e,"calculateBlockSizes");o(y4e,"insertBlocks");o(v4e,"insertEdges")});var Eit,Sit,b4e,T4e=M(()=>{"use strict";yr();qn();Ibe();pt();Ei();Fbe();x4e();Eit=o(function(t,e){return e.db.getClasses()},"getClasses"),Sit=o(async function(t,e,r,n){let{securityLevel:i,block:a}=Qt(),s=n.db,l;i==="sandbox"&&(l=qe("#i"+e));let u=i==="sandbox"?qe(l.nodes()[0].contentDocument.body):qe("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):qe(`[id="${e}"]`);Mbe(h,["point","circle","cross"],n.type,e);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await g4e(g,d,s);let y=Bbe(s);if(await y4e(g,d,s),await v4e(g,m,p,s,e),y){let v=y,x=Math.max(1,Math.round(.125*(v.width/v.height))),b=v.height+x+10,T=v.width+10,{useMaxWidth:S}=a;mn(h,b,T,!!S),X.debug("Here Bounds",y,v),h.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),b4e={draw:Sit,getClasses:Eit}});var w4e={};dr(w4e,{diagram:()=>Cit});var Cit,k4e=M(()=>{"use strict";kbe();Lbe();Nbe();T4e();Cit={parser:wbe,db:Dbe,renderer:b4e,styles:Rbe}});var Az,_z,M4,C4e,Dz,Xa,nu,I4,A4e,Lit,O4,_4e,D4e,L4e,R4e,N4e,OC,td,PC=M(()=>{"use strict";Az={L:"left",R:"right",T:"top",B:"bottom"},_z={L:o(t=>`${t},${t/2} 0,${t} 0,0`,"L"),R:o(t=>`0,${t/2} ${t},0 ${t},${t}`,"R"),T:o(t=>`0,0 ${t},0 ${t/2},${t}`,"T"),B:o(t=>`${t/2},0 ${t},${t} 0,${t}`,"B")},M4={L:o((t,e)=>t-e+2,"L"),R:o((t,e)=>t-2,"R"),T:o((t,e)=>t-e+2,"T"),B:o((t,e)=>t-2,"B")},C4e=o(function(t){return Xa(t)?t==="L"?"R":"L":t==="T"?"B":"T"},"getOppositeArchitectureDirection"),Dz=o(function(t){let e=t;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),Xa=o(function(t){let e=t;return e==="L"||e==="R"},"isArchitectureDirectionX"),nu=o(function(t){let e=t;return e==="T"||e==="B"},"isArchitectureDirectionY"),I4=o(function(t,e){let r=Xa(t)&&nu(e),n=nu(t)&&Xa(e);return r||n},"isArchitectureDirectionXY"),A4e=o(function(t){let e=t[0],r=t[1],n=Xa(e)&&nu(r),i=nu(e)&&Xa(r);return n||i},"isArchitecturePairXY"),Lit=o(function(t){return t!=="LL"&&t!=="RR"&&t!=="TT"&&t!=="BB"},"isValidArchitectureDirectionPair"),O4=o(function(t,e){let r=`${t}${e}`;return Lit(r)?r:void 0},"getArchitectureDirectionPair"),_4e=o(function([t,e],r){let n=r[0],i=r[1];return Xa(n)?nu(i)?[t+(n==="L"?-1:1),e+(i==="T"?1:-1)]:[t+(n==="L"?-1:1),e]:Xa(i)?[t+(i==="L"?1:-1),e+(n==="T"?1:-1)]:[t,e+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),D4e=o(function(t){return t==="LT"||t==="TL"?[1,1]:t==="BL"||t==="LB"?[1,-1]:t==="BR"||t==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),L4e=o(function(t,e){return I4(t,e)?"bend":Xa(t)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),R4e=o(function(t){return t.type==="service"},"isArchitectureService"),N4e=o(function(t){return t.type==="junction"},"isArchitectureJunction"),OC=o(t=>t.data(),"edgeData"),td=o(t=>t.data(),"nodeData")});var Rit,xy,Lz=M(()=>{"use strict";qn();Ra();tr();ci();PC();Rit=ur.architecture,xy=class{constructor(){this.nodes={};this.groups={};this.edges=[];this.registeredIds={};this.elements={};this.setAccTitle=Rr;this.getAccTitle=Mr;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.getAccDescription=Or;this.setAccDescription=Ir;this.clear()}static{o(this,"ArchitectureDB")}clear(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},Sr()}addService({id:e,icon:r,in:n,title:i,iconText:a}){if(this.registeredIds[e]!==void 0)throw new Error(`The service id [${e}] is already in use by another ${this.registeredIds[e]}`);if(n!==void 0){if(e===n)throw new Error(`The service [${e}] cannot be placed within itself`);if(this.registeredIds[n]===void 0)throw new Error(`The service [${e}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[n]==="node")throw new Error(`The service [${e}]'s parent is not a group`)}this.registeredIds[e]="node",this.nodes[e]={id:e,type:"service",icon:r,iconText:a,title:i,edges:[],in:n}}getServices(){return Object.values(this.nodes).filter(R4e)}addJunction({id:e,in:r}){this.registeredIds[e]="node",this.nodes[e]={id:e,type:"junction",edges:[],in:r}}getJunctions(){return Object.values(this.nodes).filter(N4e)}getNodes(){return Object.values(this.nodes)}getNode(e){return this.nodes[e]??null}addGroup({id:e,icon:r,in:n,title:i}){if(this.registeredIds?.[e]!==void 0)throw new Error(`The group id [${e}] is already in use by another ${this.registeredIds[e]}`);if(n!==void 0){if(e===n)throw new Error(`The group [${e}] cannot be placed within itself`);if(this.registeredIds?.[n]===void 0)throw new Error(`The group [${e}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[n]==="node")throw new Error(`The group [${e}]'s parent is not a group`)}this.registeredIds[e]="group",this.groups[e]={id:e,icon:r,title:i,in:n}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:e,rhsId:r,lhsDir:n,rhsDir:i,lhsInto:a,rhsInto:s,lhsGroup:l,rhsGroup:u,title:h}){if(!Dz(n))throw new Error(`Invalid direction given for left hand side of edge ${e}--${r}. Expected (L,R,T,B) got ${String(n)}`);if(!Dz(i))throw new Error(`Invalid direction given for right hand side of edge ${e}--${r}. Expected (L,R,T,B) got ${String(i)}`);if(this.nodes[e]===void 0&&this.groups[e]===void 0)throw new Error(`The left-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[r]===void 0&&this.groups[r]===void 0)throw new Error(`The right-hand id [${r}] does not yet exist. Please create the service/group before declaring an edge to it.`);let f=this.nodes[e].in,d=this.nodes[r].in;if(l&&f&&d&&f==d)throw new Error(`The left-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(u&&f&&d&&f==d)throw new Error(`The right-hand id [${r}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let p={lhsId:e,lhsDir:n,lhsInto:a,lhsGroup:l,rhsId:r,rhsDir:i,rhsInto:s,rhsGroup:u,title:h};this.edges.push(p),this.nodes[e]&&this.nodes[r]&&(this.nodes[e].edges.push(this.edges[this.edges.length-1]),this.nodes[r].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}getDataStructures(){if(this.dataStructures===void 0){let e={},r=Object.entries(this.nodes).reduce((u,[h,f])=>(u[h]=f.edges.reduce((d,p)=>{let m=this.getNode(p.lhsId)?.in,g=this.getNode(p.rhsId)?.in;if(m&&g&&m!==g){let y=L4e(p.lhsDir,p.rhsDir);y!=="bend"&&(e[m]??={},e[m][g]=y,e[g]??={},e[g][m]=y)}if(p.lhsId===h){let y=O4(p.lhsDir,p.rhsDir);y&&(d[y]=p.rhsId)}else{let y=O4(p.rhsDir,p.lhsDir);y&&(d[y]=p.lhsId)}return d},{}),u),{}),n=Object.keys(r)[0],i={[n]:1},a=Object.keys(r).reduce((u,h)=>h===n?u:{...u,[h]:1},{}),s=o(u=>{let h={[u]:[0,0]},f=[u];for(;f.length>0;){let d=f.shift();if(d){i[d]=1,delete a[d];let p=r[d],[m,g]=h[d];Object.entries(p).forEach(([y,v])=>{i[v]||(h[v]=_4e([m,g],y),f.push(v))})}}return h},"BFS"),l=[s(n)];for(;Object.keys(a).length>0;)l.push(s(Object.keys(a)[0]));this.dataStructures={adjList:r,spatialMaps:l,groupAlignments:e}}return this.dataStructures}setElementForId(e,r){this.elements[e]=r}getElementById(e){return this.elements[e]}getConfig(){return Vn({...Rit,...Qt().architecture})}getConfigField(e){return this.getConfig()[e]}}});var Nit,Rz,M4e=M(()=>{"use strict";Uf();pt();r0();Lz();Nit=o((t,e)=>{nl(t,e),t.groups.map(r=>e.addGroup(r)),t.services.map(r=>e.addService({...r,type:"service"})),t.junctions.map(r=>e.addJunction({...r,type:"junction"})),t.edges.map(r=>e.addEdge(r))},"populateDb"),Rz={parser:{yy:void 0},parse:o(async t=>{let e=await bs("architecture",t);X.debug(e);let r=Rz.parser?.yy;if(!(r instanceof xy))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Nit(e,r)},"parse")}});var Mit,I4e,O4e=M(()=>{"use strict";Mit=o(t=>` + node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{X.debug("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(!qht(e,a)&&!i){let s=Uht(e,n,a),l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},"cutPathAtIntersect"),ZSe=o(function(t,e,r,n,i,a,s){let l=r.points;X.debug("abc88 InsertEdge: edge=",r,"e=",e);let u=!1,h=a.node(e.v);var f=a.node(e.w);f?.intersect&&h?.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(h.intersect(l[0])),l.push(f.intersect(l[l.length-1]))),r.toCluster&&(X.debug("to cluster abc88",n[r.toCluster]),l=XSe(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(X.debug("from cluster abc88",n[r.fromCluster]),l=XSe(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(E=>!Number.isNaN(E.y)),p=cl;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=Xk(r),y=ac().x(m).y(g).curve(p),v;switch(r.thickness){case"normal":v="edge-thickness-normal";break;case"thick":v="edge-thickness-thick";break;case"invisible":v="edge-thickness-thick";break;default:v=""}switch(r.pattern){case"solid":v+=" edge-pattern-solid";break;case"dotted":v+=" edge-pattern-dotted";break;case"dashed":v+=" edge-pattern-dashed";break}let x=t.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+v+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(xe().flowchart.arrowMarkerAbsolute||xe().state.arrowMarkerAbsolute)&&(b=Np(!0)),YSe(x,r,b,s,i);let T={};return u&&(T.updatedPath=l),T.originalPath=r.points,T},"insertEdge")});var Wht,eEe,tEe=I(()=>{"use strict";Wht=o(t=>{let e=new Set;for(let r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r);break}return e},"expandAndDeduplicateDirections"),eEe=o((t,e,r)=>{let n=Wht(t),i=2,a=e.height+2*r.padding,s=a/i,l=e.width+2*s+r.padding,u=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:l/2,y:2*u},{x:l-s,y:0},{x:l,y:0},{x:l,y:-a/3},{x:l+2*u,y:-a/2},{x:l,y:-2*a/3},{x:l,y:-a},{x:l-s,y:-a},{x:l/2,y:-a-2*u},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*u,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:l-s,y:-a},{x:l,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:l,y:-s},{x:l,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:l,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:l,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:l,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:l,y:0},{x:0,y:-s},{x:l,y:-a}]:n.has("left")&&n.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-a}]:n.has("right")?[{x:s,y:-u},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a+u}]:n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u}]:n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints")});function Hht(t,e){return t.intersect(e)}var rEe,nEe=I(()=>{"use strict";o(Hht,"intersectNode");rEe=Hht});function Yht(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(Yht,"intersectEllipse");l8=Yht});function jht(t,e,r){return l8(t,e,e,r)}var iEe,aEe=I(()=>{"use strict";aW();o(jht,"intersectCircle");iEe=jht});function Xht(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&sEe(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&sEe(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function sEe(t,e){return t*e>0}var oEe,lEe=I(()=>{"use strict";o(Xht,"intersectLine");o(sEe,"sameSign");oEe=Xht});function Kht(t,e,r){var n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));for(var u=n-t.width/2-s,h=i-t.height/2-l,f=0;f1&&a.sort(function(g,y){var v=g.x-r.x,x=g.y-r.y,b=Math.sqrt(v*v+x*x),T=y.x-r.x,E=y.y-r.y,w=Math.sqrt(T*T+E*E);return b{"use strict";lEe();cEe=Kht;o(Kht,"intersectPolygon")});var Qht,hEe,fEe=I(()=>{"use strict";Qht=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),hEe=Qht});var jn,sW=I(()=>{"use strict";nEe();aEe();aW();uEe();fEe();jn={node:rEe,circle:iEe,ellipse:l8,polygon:cEe,rect:hEe}});function Rc(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Wi,fi,oW=I(()=>{"use strict";s8();yl();Qt();kr();wr();sr();Wi=o(async(t,e,r,n)=>{let i=xe(),a,s=e.useHtmlLabels||Sr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=t.insert("g").attr("class",a).attr("id",e.domId||e.id),u=l.insert("g").attr("class","label").attr("style",e.labelStyle),h;e.labelText===void 0?h="":h=typeof e.labelText=="string"?e.labelText:e.labelText[0];let f=u.node(),d;e.labelType==="markdown"?d=Ai(u,fr(ga(h),i),{useHtmlLabels:s,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(await Ws(fr(ga(h),i),e.labelStyle,!1,n));let p=d.getBBox(),m=e.padding/2;if(Sr(i.flowchart.htmlLabels)){let g=d.children[0],y=He(d),v=g.getElementsByTagName("img");if(v){let x=h.replace(/]*>/g,"").trim()==="";await Promise.all([...v].map(b=>new Promise(T=>{function E(){if(b.style.display="flex",b.style.flexDirection="column",x){let w=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,C=parseInt(w,10)*5+"px";b.style.minWidth=C,b.style.maxWidth=C}else b.style.width="100%";T(b)}o(E,"setupImage"),setTimeout(()=>{b.complete&&E()}),b.addEventListener("error",E),b.addEventListener("load",E)})))}p=g.getBoundingClientRect(),y.attr("width",p.width),y.attr("height",p.height)}return s?u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):u.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),u.insert("rect",":first-child"),{shapeSvg:l,bbox:p,halfPadding:m,label:u}},"labelHelper"),fi=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds");o(Rc,"insertPolygonShape")});var Zht,dEe,pEe=I(()=>{"use strict";oW();gt();Qt();sW();Zht=o(async(t,e)=>{e.useHtmlLabels||xe().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Wi(t,e,"node "+e.classes,!0);X.info("Classes = ",e.classes);let s=n.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),fi(e,s),e.intersect=function(l){return jn.rect(e,l)},n},"note"),dEe=Zht});function lW(t,e,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");e.includes("t")?(X.debug("add top border"),a(r)):s(r),e.includes("r")?(X.debug("add right border"),a(n)):s(n),e.includes("b")?(X.debug("add bottom border"),a(r)):s(r),e.includes("l")?(X.debug("add left border"),a(n)):s(n),t.attr("stroke-dasharray",i.join(" "))}var mEe,Zo,gEe,Jht,eft,tft,rft,nft,ift,aft,sft,oft,lft,cft,uft,hft,fft,dft,pft,mft,gft,yft,yEe,vft,xft,vEe,c8,cW,xEe,bEe=I(()=>{"use strict";kr();Qt();wr();gt();tEe();s8();sW();pEe();oW();mEe=o(t=>t?" "+t:"","formatClass"),Zo=o((t,e)=>`${e||"node default"}${mEe(t.classes)} ${mEe(t.class)}`,"getClassesFromNode"),gEe=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=i+a,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];X.info("Question main (Circle)");let u=Rc(r,s,s,l);return u.attr("style",e.style),fi(e,u),e.intersect=function(h){return X.warn("Intersect called"),jn.polygon(e,l,h)},r},"question"),Jht=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(s){return jn.circle(e,14,s)},r},"choice"),eft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=4,a=n.height+e.padding,s=a/i,l=n.width+2*s+e.padding,u=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],h=Rc(r,l,a,u);return h.attr("style",e.style),fi(e,h),e.intersect=function(f){return jn.polygon(e,u,f)},r},"hexagon"),tft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,l=n.width+2*s+e.padding,u=eEe(e.directions,n,e),h=Rc(r,l,a,u);return h.attr("style",e.style),fi(e,h),e.intersect=function(f){return jn.polygon(e,u,f)},r},"block_arrow"),rft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Rc(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(u){return jn.polygon(e,s,u)},r},"rect_left_inv_arrow"),nft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],l=Rc(r,i,a,s);return l.attr("style",e.style),fi(e,l),e.intersect=function(u){return jn.polygon(e,s,u)},r},"lean_right"),ift=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],l=Rc(r,i,a,s);return l.attr("style",e.style),fi(e,l),e.intersect=function(u){return jn.polygon(e,s,u)},r},"lean_left"),aft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],l=Rc(r,i,a,s);return l.attr("style",e.style),fi(e,l),e.intersect=function(u){return jn.polygon(e,s,u)},r},"trapezoid"),sft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],l=Rc(r,i,a,s);return l.attr("style",e.style),fi(e,l),e.intersect=function(u){return jn.polygon(e,s,u)},r},"inv_trapezoid"),oft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],l=Rc(r,i,a,s);return l.attr("style",e.style),fi(e,l),e.intersect=function(u){return jn.polygon(e,s,u)},r},"rect_right_inv_arrow"),lft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+e.padding,u="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,h=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return fi(e,h),e.intersect=function(f){let d=jn.rect(e,f),p=d.x-e.x;if(a!=0&&(Math.abs(p)e.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-e.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),cft=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Wi(t,e,"node "+e.classes+" "+e.class,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(lW(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{X.warn(`Unknown node property ${d}`)})}return fi(e,a),e.intersect=function(f){return jn.rect(e,f)},r},"rect"),uft=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Wi(t,e,"node "+e.classes,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(lW(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{X.warn(`Unknown node property ${d}`)})}return fi(e,a),e.intersect=function(f){return jn.rect(e,f)},r},"composite"),hft=o(async(t,e)=>{let{shapeSvg:r}=await Wi(t,e,"label",!0);X.trace("Classes = ",e.class);let n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),e.props){let s=new Set(Object.keys(e.props));e.props.borders&&(lW(n,e.props.borders,i,a),s.delete("borders")),s.forEach(l=>{X.warn(`Unknown node property ${l}`)})}return fi(e,n),e.intersect=function(s){return jn.rect(e,s)},r},"labelRect");o(lW,"applyNodePropertyBorders");fft=o(async(t,e)=>{let r;e.classes?r="node "+e.classes:r="node default";let n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=e.labelText.flat?e.labelText.flat():e.labelText,u="";typeof l=="object"?u=l[0]:u=l,X.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(await Ws(u,e.labelStyle,!0,!0)),f={width:0,height:0};if(Sr(xe().flowchart.htmlLabels)){let y=h.children[0],v=He(h);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}X.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(await Ws(d.join?d.join("
    "):d,e.labelStyle,!0,!0));if(Sr(xe().flowchart.htmlLabels)){let y=m.children[0],v=He(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=e.padding/2;return He(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),He(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.height+e.padding,a=n.width+i/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return fi(e,s),e.intersect=function(l){return jn.rect(e,l)},r},"stadium"),pft=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Wi(t,e,Zo(e,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),X.info("Circle main"),fi(e,a),e.intersect=function(s){return X.info("Circle intersect",e,n.width/2+i,s),jn.circle(e,n.width/2+i,s)},r},"circle"),mft=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Wi(t,e,Zo(e,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",e.class),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i+a).attr("width",n.width+e.padding+a*2).attr("height",n.height+e.padding+a*2),u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),X.info("DoubleCircle main"),fi(e,l),e.intersect=function(h){return X.info("DoubleCircle intersect",e,n.width/2+i+a,h),jn.circle(e,n.width/2+i+a,h)},r},"doublecircle"),gft=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Wi(t,e,Zo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],l=Rc(r,i,a,s);return l.attr("style",e.style),fi(e,l),e.intersect=function(u){return jn.polygon(e,s,u)},r},"subroutine"),yft=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),fi(e,n),e.intersect=function(i){return jn.circle(e,7,i)},r},"start"),yEe=o((t,e,r)=>{let n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,a=10;r==="LR"&&(i=10,a=70);let s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return fi(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(l){return jn.rect(e,l)},n},"forkJoin"),vft=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),fi(e,i),e.intersect=function(a){return jn.circle(e,7,a)},r},"end"),xft=o(async(t,e)=>{let r=e.padding/2,n=4,i=8,a;e.classes?a="node "+e.classes:a="node default";let s=t.insert("g").attr("class",a).attr("id",e.domId||e.id),l=s.insert("rect",":first-child"),u=s.insert("line"),h=s.insert("line"),f=0,d=n,p=s.insert("g").attr("class","label"),m=0,g=e.classData.annotations?.[0],y=e.classData.annotations[0]?"\xAB"+e.classData.annotations[0]+"\xBB":"",v=p.node().appendChild(await Ws(y,e.labelStyle,!0,!0)),x=v.getBBox();if(Sr(xe().flowchart.htmlLabels)){let D=v.children[0],R=He(v);x=D.getBoundingClientRect(),R.attr("width",x.width),R.attr("height",x.height)}e.classData.annotations[0]&&(d+=x.height+n,f+=x.width);let b=e.classData.label;e.classData.type!==void 0&&e.classData.type!==""&&(xe().flowchart.htmlLabels?b+="<"+e.classData.type+">":b+="<"+e.classData.type+">");let T=p.node().appendChild(await Ws(b,e.labelStyle,!0,!0));He(T).attr("class","classTitle");let E=T.getBBox();if(Sr(xe().flowchart.htmlLabels)){let D=T.children[0],R=He(T);E=D.getBoundingClientRect(),R.attr("width",E.width),R.attr("height",E.height)}d+=E.height+n,E.width>f&&(f=E.width);let w=[];e.classData.members.forEach(async D=>{let R=D.getDisplayDetails(),O=R.displayText;xe().flowchart.htmlLabels&&(O=O.replace(//g,">"));let L=p.node().appendChild(await Ws(O,R.cssStyle?R.cssStyle:e.labelStyle,!0,!0)),S=L.getBBox();if(Sr(xe().flowchart.htmlLabels)){let A=L.children[0],_=He(L);S=A.getBoundingClientRect(),_.attr("width",S.width),_.attr("height",S.height)}S.width>f&&(f=S.width),d+=S.height+n,w.push(L)}),d+=i;let k=[];if(e.classData.methods.forEach(async D=>{let R=D.getDisplayDetails(),O=R.displayText;xe().flowchart.htmlLabels&&(O=O.replace(//g,">"));let L=p.node().appendChild(await Ws(O,R.cssStyle?R.cssStyle:e.labelStyle,!0,!0)),S=L.getBBox();if(Sr(xe().flowchart.htmlLabels)){let A=L.children[0],_=He(L);S=A.getBoundingClientRect(),_.attr("width",S.width),_.attr("height",S.height)}S.width>f&&(f=S.width),d+=S.height+n,k.push(L)}),d+=i,g){let D=(f-x.width)/2;He(v).attr("transform","translate( "+(-1*f/2+D)+", "+-1*d/2+")"),m=x.height+n}let C=(f-E.width)/2;return He(T).attr("transform","translate( "+(-1*f/2+C)+", "+(-1*d/2+m)+")"),m+=E.height+n,u.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,w.forEach(D=>{He(D).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let R=D?.getBBox();m+=(R?.height??0)+n}),m+=i,h.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,k.forEach(D=>{He(D).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let R=D?.getBBox();m+=(R?.height??0)+n}),l.attr("style",e.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+e.padding).attr("height",d+e.padding),fi(e,l),e.intersect=function(D){return jn.rect(e,D)},s},"class_box"),vEe={rhombus:gEe,composite:uft,question:gEe,rect:cft,labelRect:hft,rectWithTitle:fft,choice:Jht,circle:pft,doublecircle:mft,stadium:dft,hexagon:eft,block_arrow:tft,rect_left_inv_arrow:rft,lean_right:nft,lean_left:ift,trapezoid:aft,inv_trapezoid:sft,rect_right_inv_arrow:oft,cylinder:lft,start:yft,end:vft,note:dEe,subroutine:gft,fork:yEe,join:yEe,class_box:xft},c8={},cW=o(async(t,e,r)=>{let n,i;if(e.link){let a;xe().securityLevel==="sandbox"?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=await vEe[e.shape](n,e,r)}else i=await vEe[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),c8[e.id]=n,e.haveCallback&&c8[e.id].attr("class",c8[e.id].attr("class")+" clickable"),n},"insertNode"),xEe=o(t=>{let e=c8[t.id];X.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});function TEe(t,e,r=!1){let n=t,i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i=i+" flowchart-label";let a=0,s="",l;switch(n.type){case"round":a=5,s="rect";break;case"composite":a=0,s="composite",l=0;break;case"square":s="rect";break;case"diamond":s="question";break;case"hexagon":s="hexagon";break;case"block_arrow":s="block_arrow";break;case"odd":s="rect_left_inv_arrow";break;case"lean_right":s="lean_right";break;case"lean_left":s="lean_left";break;case"trapezoid":s="trapezoid";break;case"inv_trapezoid":s="inv_trapezoid";break;case"rect_left_inv_arrow":s="rect_left_inv_arrow";break;case"circle":s="circle";break;case"ellipse":s="ellipse";break;case"stadium":s="stadium";break;case"subroutine":s="subroutine";break;case"cylinder":s="cylinder";break;case"group":s="rect";break;case"doublecircle":s="doublecircle";break;default:s="rect"}let u=mN(n?.styles??[]),h=n.label,f=n.size??{width:0,height:0,x:0,y:0};return{labelStyle:u.labelStyle,shape:s,labelText:h,rx:a,ry:a,class:i,style:u.style,id:n.id,directions:n.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:r,intersect:void 0,type:n.type,padding:l??tr()?.block?.padding??0}}async function bft(t,e,r){let n=TEe(e,r,!1);if(n.type==="group")return;let i=tr(),a=await cW(t,n,{config:i}),s=a.node().getBBox(),l=r.getBlock(n.id);l.size={width:s.width,height:s.height,x:0,y:0,node:a},r.setBlock(l),a.remove()}async function Tft(t,e,r){let n=TEe(e,r,!0);if(r.getBlock(n.id).type!=="space"){let a=tr();await cW(t,n,{config:a}),e.intersect=n?.intersect,xEe(n)}}async function uW(t,e,r,n){for(let i of e)await n(t,i,r),i.children&&await uW(t,i.children,r,n)}async function wEe(t,e,r){await uW(t,e,r,bft)}async function kEe(t,e,r){await uW(t,e,r,Tft)}async function SEe(t,e,r,n,i){let a=new vn({multigraph:!0,compound:!0});a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let s of r)s.size&&a.setNode(s.id,{width:s.size.width,height:s.size.height,intersect:s.intersect});for(let s of e)if(s.start&&s.end){let l=n.getBlock(s.start),u=n.getBlock(s.end);if(l?.size&&u?.size){let h=l.size,f=u.size,d=[{x:h.x,y:h.y},{x:h.x+(f.x-h.x)/2,y:h.y+(f.y-h.y)/2},{x:f.x,y:f.y}];ZSe(t,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",a,i),s.label&&(await KSe(t,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),QSe({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var EEe=I(()=>{"use strict";wl();ti();JSe();bEe();sr();o(TEe,"getNodeFromBlock");o(bft,"calculateBlockSize");o(Tft,"insertBlockPositioned");o(uW,"performOperations");o(wEe,"calculateBlockSizes");o(kEe,"insertBlocks");o(SEe,"insertEdges")});var wft,kft,CEe,AEe=I(()=>{"use strict";kr();ti();zSe();gt();Fi();USe();EEe();wft=o(function(t,e){return e.db.getClasses()},"getClasses"),kft=o(async function(t,e,r,n){let{securityLevel:i,block:a}=tr(),s=n.db,l;i==="sandbox"&&(l=He("#i"+e));let u=i==="sandbox"?He(l.nodes()[0].contentDocument.body):He("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):He(`[id="${e}"]`);$Se(h,["point","circle","cross"],n.type,e);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await wEe(g,d,s);let y=qSe(s);if(await kEe(g,d,s),await SEe(g,m,p,s,e),y){let v=y,x=Math.max(1,Math.round(.125*(v.width/v.height))),b=v.height+x+10,T=v.width+10,{useMaxWidth:E}=a;Sn(h,b,T,!!E),X.debug("Here Bounds",y,v),h.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),CEe={draw:kft,getClasses:wft}});var _Ee={};vr(_Ee,{diagram:()=>Sft});var Sft,DEe=I(()=>{"use strict";DSe();PSe();FSe();AEe();Sft={parser:_Se,db:OSe,renderer:CEe,styles:BSe}});var hW,fW,m3,NEe,dW,gs,Hu,g3,MEe,_ft,y3,IEe,OEe,PEe,BEe,FEe,u8,vp,h8=I(()=>{"use strict";hW={L:"left",R:"right",T:"top",B:"bottom"},fW={L:o(t=>`${t},${t/2} 0,${t} 0,0`,"L"),R:o(t=>`0,${t/2} ${t},0 ${t},${t}`,"R"),T:o(t=>`0,0 ${t},0 ${t/2},${t}`,"T"),B:o(t=>`${t/2},0 ${t},${t} 0,${t}`,"B")},m3={L:o((t,e)=>t-e+2,"L"),R:o((t,e)=>t-2,"R"),T:o((t,e)=>t-e+2,"T"),B:o((t,e)=>t-2,"B")},NEe=o(function(t){return gs(t)?t==="L"?"R":"L":t==="T"?"B":"T"},"getOppositeArchitectureDirection"),dW=o(function(t){let e=t;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),gs=o(function(t){let e=t;return e==="L"||e==="R"},"isArchitectureDirectionX"),Hu=o(function(t){let e=t;return e==="T"||e==="B"},"isArchitectureDirectionY"),g3=o(function(t,e){let r=gs(t)&&Hu(e),n=Hu(t)&&gs(e);return r||n},"isArchitectureDirectionXY"),MEe=o(function(t){let e=t[0],r=t[1],n=gs(e)&&Hu(r),i=Hu(e)&&gs(r);return n||i},"isArchitecturePairXY"),_ft=o(function(t){return t!=="LL"&&t!=="RR"&&t!=="TT"&&t!=="BB"},"isValidArchitectureDirectionPair"),y3=o(function(t,e){let r=`${t}${e}`;return _ft(r)?r:void 0},"getArchitectureDirectionPair"),IEe=o(function([t,e],r){let n=r[0],i=r[1];return gs(n)?Hu(i)?[t+(n==="L"?-1:1),e+(i==="T"?1:-1)]:[t+(n==="L"?-1:1),e]:gs(i)?[t+(i==="L"?1:-1),e+(n==="T"?1:-1)]:[t,e+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),OEe=o(function(t){return t==="LT"||t==="TL"?[1,1]:t==="BL"||t==="LB"?[1,-1]:t==="BR"||t==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),PEe=o(function(t,e){return g3(t,e)?"bend":gs(t)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),BEe=o(function(t){return t.type==="service"},"isArchitectureService"),FEe=o(function(t){return t.type==="junction"},"isArchitectureJunction"),u8=o(t=>t.data(),"edgeData"),vp=o(t=>t.data(),"nodeData")});var Dft,Vv,pW=I(()=>{"use strict";ti();Ka();sr();ki();h8();Dft=gr.architecture,Vv=class{constructor(){this.nodes={};this.groups={};this.edges=[];this.registeredIds={};this.elements={};this.setAccTitle=zr;this.getAccTitle=Vr;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.getAccDescription=Ur;this.setAccDescription=qr;this.clear()}static{o(this,"ArchitectureDB")}clear(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},Mr()}addService({id:e,icon:r,in:n,title:i,iconText:a}){if(this.registeredIds[e]!==void 0)throw new Error(`The service id [${e}] is already in use by another ${this.registeredIds[e]}`);if(n!==void 0){if(e===n)throw new Error(`The service [${e}] cannot be placed within itself`);if(this.registeredIds[n]===void 0)throw new Error(`The service [${e}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[n]==="node")throw new Error(`The service [${e}]'s parent is not a group`)}this.registeredIds[e]="node",this.nodes[e]={id:e,type:"service",icon:r,iconText:a,title:i,edges:[],in:n}}getServices(){return Object.values(this.nodes).filter(BEe)}addJunction({id:e,in:r}){this.registeredIds[e]="node",this.nodes[e]={id:e,type:"junction",edges:[],in:r}}getJunctions(){return Object.values(this.nodes).filter(FEe)}getNodes(){return Object.values(this.nodes)}getNode(e){return this.nodes[e]??null}addGroup({id:e,icon:r,in:n,title:i}){if(this.registeredIds?.[e]!==void 0)throw new Error(`The group id [${e}] is already in use by another ${this.registeredIds[e]}`);if(n!==void 0){if(e===n)throw new Error(`The group [${e}] cannot be placed within itself`);if(this.registeredIds?.[n]===void 0)throw new Error(`The group [${e}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[n]==="node")throw new Error(`The group [${e}]'s parent is not a group`)}this.registeredIds[e]="group",this.groups[e]={id:e,icon:r,title:i,in:n}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:e,rhsId:r,lhsDir:n,rhsDir:i,lhsInto:a,rhsInto:s,lhsGroup:l,rhsGroup:u,title:h}){if(!dW(n))throw new Error(`Invalid direction given for left hand side of edge ${e}--${r}. Expected (L,R,T,B) got ${String(n)}`);if(!dW(i))throw new Error(`Invalid direction given for right hand side of edge ${e}--${r}. Expected (L,R,T,B) got ${String(i)}`);if(this.nodes[e]===void 0&&this.groups[e]===void 0)throw new Error(`The left-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[r]===void 0&&this.groups[r]===void 0)throw new Error(`The right-hand id [${r}] does not yet exist. Please create the service/group before declaring an edge to it.`);let f=this.nodes[e].in,d=this.nodes[r].in;if(l&&f&&d&&f==d)throw new Error(`The left-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(u&&f&&d&&f==d)throw new Error(`The right-hand id [${r}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let p={lhsId:e,lhsDir:n,lhsInto:a,lhsGroup:l,rhsId:r,rhsDir:i,rhsInto:s,rhsGroup:u,title:h};this.edges.push(p),this.nodes[e]&&this.nodes[r]&&(this.nodes[e].edges.push(this.edges[this.edges.length-1]),this.nodes[r].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}getDataStructures(){if(this.dataStructures===void 0){let e={},r=Object.entries(this.nodes).reduce((u,[h,f])=>(u[h]=f.edges.reduce((d,p)=>{let m=this.getNode(p.lhsId)?.in,g=this.getNode(p.rhsId)?.in;if(m&&g&&m!==g){let y=PEe(p.lhsDir,p.rhsDir);y!=="bend"&&(e[m]??={},e[m][g]=y,e[g]??={},e[g][m]=y)}if(p.lhsId===h){let y=y3(p.lhsDir,p.rhsDir);y&&(d[y]=p.rhsId)}else{let y=y3(p.rhsDir,p.lhsDir);y&&(d[y]=p.lhsId)}return d},{}),u),{}),n=Object.keys(r)[0],i={[n]:1},a=Object.keys(r).reduce((u,h)=>h===n?u:{...u,[h]:1},{}),s=o(u=>{let h={[u]:[0,0]},f=[u];for(;f.length>0;){let d=f.shift();if(d){i[d]=1,delete a[d];let p=r[d],[m,g]=h[d];Object.entries(p).forEach(([y,v])=>{i[v]||(h[v]=IEe([m,g],y),f.push(v))})}}return h},"BFS"),l=[s(n)];for(;Object.keys(a).length>0;)l.push(s(Object.keys(a)[0]));this.dataStructures={adjList:r,spatialMaps:l,groupAlignments:e}}return this.dataStructures}setElementForId(e,r){this.elements[e]=r}getElementById(e){return this.elements[e]}getConfig(){return Qn({...Dft,...tr().architecture})}getConfigField(e){return this.getConfig()[e]}}});var Rft,mW,$Ee=I(()=>{"use strict";sp();gt();$m();pW();Rft=o((t,e)=>{Pl(t,e),t.groups.map(r=>e.addGroup(r)),t.services.map(r=>e.addService({...r,type:"service"})),t.junctions.map(r=>e.addJunction({...r,type:"junction"})),t.edges.map(r=>e.addEdge(r))},"populateDb"),mW={parser:{yy:void 0},parse:o(async t=>{let e=await Vs("architecture",t);X.debug(e);let r=mW.parser?.yy;if(!(r instanceof Vv))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Rft(e,r)},"parse")}});var Lft,zEe,GEe=I(()=>{"use strict";Lft=o(t=>` .edge { stroke-width: ${t.archEdgeWidth}; stroke: ${t.archEdgeColor}; @@ -2732,11 +2764,11 @@ Expecting `+de.join(", ")+", got '"+(this.terminals_[q]||q)+"'":ne="Parse error display: -webkit-box; -webkit-box-orient: vertical; } -`,"getStyles"),I4e=Mit});var Mz=sa((P4,Nz)=>{"use strict";o((function(e,r){typeof P4=="object"&&typeof Nz=="object"?Nz.exports=r():typeof define=="function"&&define.amd?define([],r):typeof P4=="object"?P4.layoutBase=r():e.layoutBase=r()}),"webpackUniversalModuleDefinition")(P4,function(){return(function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=28)})([(function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s}),(function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(5);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp?(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(p+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(m+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>m?(this.rect.y-=(this.labelHeight-m)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(m+this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h}),(function(t,e,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=i}),(function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(7),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,T=0;T-1&&k>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(w,1),x.target!=x.source&&x.target.edges.splice(k,1);var S=x.source.owner.getEdges().indexOf(x);if(S==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,T=this.getNodes(),S=T.length,w=0;wv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(T[0].getParent().paddingLeft!=null?b=T[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,T,S,w,k,C,A=this.nodes,L=A.length,I=0;IT&&(y=T),vw&&(x=w),bT&&(y=T),vw&&(x=w),b=this.nodes.length){var L=0;v.forEach(function(I){I.owner==g&&L++}),L==this.nodes.length&&(this.isConnected=!0)}},t.exports=p}),(function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(6),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=A,!1;if(hf)return l[0]=p,l[1]=h,l[2]=k,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,E=!0):(l[0]=g,l[1]=m,E=!0):D===N&&(u>f?(l[0]=p,l[1]=m,E=!0):(l[0]=x,l[1]=v,E=!0)),-O===N?f>u?(l[2]=C,l[3]=A,_=!0):(l[2]=k,l[3]=w,_=!0):O===N&&(f>u?(l[2]=S,l[3]=w,_=!0):(l[2]=L,l[3]=A,_=!0)),E&&_)return!1;if(u>f?h>d?(P=this.getCardinalDirection(D,N,4),B=this.getCardinalDirection(O,N,2)):(P=this.getCardinalDirection(-D,N,3),B=this.getCardinalDirection(-O,N,1)):h>d?(P=this.getCardinalDirection(-D,N,1),B=this.getCardinalDirection(-O,N,3)):(P=this.getCardinalDirection(D,N,2),B=this.getCardinalDirection(O,N,4)),!E)switch(P){case 1:V=m,F=u+-T/N,l[0]=F,l[1]=V;break;case 2:F=x,V=h+b*N,l[0]=F,l[1]=V;break;case 3:V=v,F=u+T/N,l[0]=F,l[1]=V;break;case 4:F=y,V=h+-b*N,l[0]=F,l[1]=V;break}if(!_)switch(B){case 1:U=w,$=f+-R/N,l[2]=$,l[3]=U;break;case 2:$=L,U=d+I*N,l[2]=$,l[3]=U;break;case 3:U=A,$=f+R/N,l[2]=$,l[3]=U;break;case 4:$=C,U=d+-I*N,l[2]=$,l[3]=U;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,T=void 0,S=void 0,w=void 0,k=void 0,C=void 0,A=void 0,L=void 0;return T=p-f,w=h-d,C=d*f-h*p,S=v-g,k=m-y,A=y*g-m*v,L=T*k-S*w,L===0?null:(x=(w*A-k*C)/L,b=(S*C-T*A)/L,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l=0){var v=(-m+Math.sqrt(m*m-4*p*g))/(2*p),x=(-m-Math.sqrt(m*m-4*p*g))/(2*p),b=null;return v>=0&&v<=1?[v]:x>=0&&x<=1?[x]:b}else return null},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,t.exports=i}),(function(t,e,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n}),(function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n}),(function(t,e,r){"use strict";var n=(function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i}),(function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(T.push(w[0]);T.length>0&&g;){var k=T[0];T.splice(0,1),b.add(k);for(var C=k.getEdges(),x=0;x-1&&w.splice(R,1)}b=new Set,S=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(A,1);var L=S.getNeighborsList();L.forEach(function(E){if(y.indexOf(E)<0){var _=v.get(E),D=_-1;D==1&&k.push(E),v.set(E,D)}})}y=y.concat(k),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p}),(function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n}),(function(t,e,r){"use strict";var n=r(5);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i}),(function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mT||b>T)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(T=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||T>=x[0].length)){for(var S=0;Sh},"_defaultCompareFunction")}]),l})();t.exports=s}),(function(t,e,r){"use strict";function n(){}o(n,"SVD"),n.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var a=Math.min(this.m,this.n);this.s=(function(dt){for(var nt=[];dt-- >0;)nt.push(0);return nt})(Math.min(this.m+1,this.n)),this.U=(function(dt){var nt=o(function bt(wt){if(wt.length==0)return 0;for(var yt=[],ft=0;ft0;)nt.push(0);return nt})(this.n),l=(function(dt){for(var nt=[];dt-- >0;)nt.push(0);return nt})(this.m),u=!0,h=!0,f=Math.min(this.m-1,this.n),d=Math.max(0,Math.min(this.n-2,this.m)),p=0;p=0;N--)if(this.s[N]!==0){for(var P=N+1;P=0;ee--){if((function(dt,nt){return dt&&nt})(ee0;){var Z=void 0,de=void 0;for(Z=_-2;Z>=-1&&Z!==-1;Z--)if(Math.abs(s[Z])<=ae+K*(Math.abs(this.s[Z])+Math.abs(this.s[Z+1]))){s[Z]=0;break}if(Z===_-2)de=4;else{var ne=void 0;for(ne=_-1;ne>=Z&&ne!==Z;ne--){var Te=(ne!==_?Math.abs(s[ne]):0)+(ne!==Z+1?Math.abs(s[ne-1]):0);if(Math.abs(this.s[ne])<=ae+K*Te){this.s[ne]=0;break}}ne===Z?de=3:ne===_-1?de=1:(de=2,Z=ne)}switch(Z++,de){case 1:{var W=s[_-2];s[_-2]=0;for(var Ve=_-2;Ve>=Z;Ve--){var pe=n.hypot(this.s[Ve],W),Be=this.s[Ve]/pe,Ye=W/pe;if(this.s[Ve]=pe,Ve!==Z&&(W=-Ye*s[Ve-1],s[Ve-1]=Be*s[Ve-1]),h)for(var He=0;He=this.s[Z+1]);){var lt=this.s[Z];if(this.s[Z]=this.s[Z+1],this.s[Z+1]=lt,h&&ZMath.abs(a)?(s=a/i,s=Math.abs(i)*Math.sqrt(1+s*s)):a!=0?(s=i/a,s=Math.abs(a)*Math.sqrt(1+s*s)):s=0,s},t.exports=n}),(function(t,e,r){"use strict";var n=(function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o((function(e,r){typeof B4=="object"&&typeof Iz=="object"?Iz.exports=r(Mz()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof B4=="object"?B4.coseBase=r(Mz()):e.coseBase=r(e.layoutBase)}),"webpackUniversalModuleDefinition")(B4,function(t){return(()=>{"use strict";var e={45:((a,s,l)=>{var u={};u.layoutBase=l(551),u.CoSEConstants=l(806),u.CoSEEdge=l(767),u.CoSEGraph=l(880),u.CoSEGraphManager=l(578),u.CoSELayout=l(765),u.CoSENode=l(991),u.ConstraintHandler=l(902),a.exports=u}),806:((a,s,l)=>{var u=l(551).FDLayoutConstants;function h(){}o(h,"CoSEConstants");for(var f in u)h[f]=u[f];h.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,h.DEFAULT_RADIAL_SEPARATION=u.DEFAULT_EDGE_LENGTH,h.DEFAULT_COMPONENT_SEPERATION=60,h.TILE=!0,h.TILING_PADDING_VERTICAL=10,h.TILING_PADDING_HORIZONTAL=10,h.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,h.ENFORCE_CONSTRAINTS=!0,h.APPLY_LAYOUT=!0,h.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,h.TREE_REDUCTION_ON_INCREMENTAL=!0,h.PURE_INCREMENTAL=h.DEFAULT_INCREMENTAL,a.exports=h}),767:((a,s,l)=>{var u=l(551).FDLayoutEdge;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEEdge"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h}),880:((a,s,l)=>{var u=l(551).LGraph;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEGraph"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h}),578:((a,s,l)=>{var u=l(551).LGraphManager;function h(d){u.call(this,d)}o(h,"CoSEGraphManager"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h}),765:((a,s,l)=>{var u=l(551).FDLayout,h=l(578),f=l(880),d=l(991),p=l(767),m=l(806),g=l(902),y=l(551).FDLayoutConstants,v=l(551).LayoutConstants,x=l(551).Point,b=l(551).PointD,T=l(551).DimensionD,S=l(551).Layout,w=l(551).Integer,k=l(551).IGeometry,C=l(551).LGraph,A=l(551).Transform,L=l(551).LinkedList;function I(){u.call(this),this.toBeTiled={},this.constraints={}}o(I,"CoSELayout"),I.prototype=Object.create(u.prototype);for(var R in u)I[R]=u[R];I.prototype.newGraphManager=function(){var E=new h(this);return this.graphManager=E,E},I.prototype.newGraph=function(E){return new f(null,this.graphManager,E)},I.prototype.newNode=function(E){return new d(this.graphManager,E)},I.prototype.newEdge=function(E){return new p(null,null,E)},I.prototype.initParameters=function(){u.prototype.initParameters.call(this,arguments),this.isSubLayout||(m.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=m.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=m.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=y.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=y.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=y.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},I.prototype.initSpringEmbedder=function(){u.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/y.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},I.prototype.layout=function(){var E=v.DEFAULT_CREATE_BENDS_AS_NEEDED;return E&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},I.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(m.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var _=new Set(this.getAllNodes()),D=this.nodesWithGravity.filter(function(P){return _.has(P)});this.graphManager.setAllNodesToApplyGravitation(D)}}else{var E=this.getFlatForest();if(E.length>0)this.positionNodesRadially(E);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var _=new Set(this.getAllNodes()),D=this.nodesWithGravity.filter(function(O){return _.has(O)});this.graphManager.setAllNodesToApplyGravitation(D),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(g.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),m.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},I.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%y.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),_=this.nodesWithGravity.filter(function(N){return E.has(N)});this.graphManager.setAllNodesToApplyGravitation(_),this.graphManager.updateBounds(),this.updateGrid(),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var D=!this.isTreeGrowing&&!this.isGrowthFinished,O=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(D,O),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},I.prototype.getPositionsData=function(){for(var E=this.graphManager.getAllNodes(),_={},D=0;D0&&this.updateDisplacements();for(var D=0;D0&&(O.fixedNodeWeight=P)}}if(this.constraints.relativePlacementConstraint){var B=new Map,F=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(Q){E.fixedNodesOnHorizontal.add(Q),E.fixedNodesOnVertical.add(Q)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var V=this.constraints.alignmentConstraint.vertical,D=0;D=2*Q.length/3;re--)ue=Math.floor(Math.random()*(re+1)),te=Q[re],Q[re]=Q[ue],Q[ue]=te;return Q},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(Q){if(Q.left){var ue=B.has(Q.left)?B.get(Q.left):Q.left,te=B.has(Q.right)?B.get(Q.right):Q.right;E.nodesInRelativeHorizontal.includes(ue)||(E.nodesInRelativeHorizontal.push(ue),E.nodeToRelativeConstraintMapHorizontal.set(ue,[]),E.dummyToNodeForVerticalAlignment.has(ue)?E.nodeToTempPositionMapHorizontal.set(ue,E.idToNodeMap.get(E.dummyToNodeForVerticalAlignment.get(ue)[0]).getCenterX()):E.nodeToTempPositionMapHorizontal.set(ue,E.idToNodeMap.get(ue).getCenterX())),E.nodesInRelativeHorizontal.includes(te)||(E.nodesInRelativeHorizontal.push(te),E.nodeToRelativeConstraintMapHorizontal.set(te,[]),E.dummyToNodeForVerticalAlignment.has(te)?E.nodeToTempPositionMapHorizontal.set(te,E.idToNodeMap.get(E.dummyToNodeForVerticalAlignment.get(te)[0]).getCenterX()):E.nodeToTempPositionMapHorizontal.set(te,E.idToNodeMap.get(te).getCenterX())),E.nodeToRelativeConstraintMapHorizontal.get(ue).push({right:te,gap:Q.gap}),E.nodeToRelativeConstraintMapHorizontal.get(te).push({left:ue,gap:Q.gap})}else{var re=F.has(Q.top)?F.get(Q.top):Q.top,J=F.has(Q.bottom)?F.get(Q.bottom):Q.bottom;E.nodesInRelativeVertical.includes(re)||(E.nodesInRelativeVertical.push(re),E.nodeToRelativeConstraintMapVertical.set(re,[]),E.dummyToNodeForHorizontalAlignment.has(re)?E.nodeToTempPositionMapVertical.set(re,E.idToNodeMap.get(E.dummyToNodeForHorizontalAlignment.get(re)[0]).getCenterY()):E.nodeToTempPositionMapVertical.set(re,E.idToNodeMap.get(re).getCenterY())),E.nodesInRelativeVertical.includes(J)||(E.nodesInRelativeVertical.push(J),E.nodeToRelativeConstraintMapVertical.set(J,[]),E.dummyToNodeForHorizontalAlignment.has(J)?E.nodeToTempPositionMapVertical.set(J,E.idToNodeMap.get(E.dummyToNodeForHorizontalAlignment.get(J)[0]).getCenterY()):E.nodeToTempPositionMapVertical.set(J,E.idToNodeMap.get(J).getCenterY())),E.nodeToRelativeConstraintMapVertical.get(re).push({bottom:J,gap:Q.gap}),E.nodeToRelativeConstraintMapVertical.get(J).push({top:re,gap:Q.gap})}});else{var U=new Map,j=new Map;this.constraints.relativePlacementConstraint.forEach(function(Q){if(Q.left){var ue=B.has(Q.left)?B.get(Q.left):Q.left,te=B.has(Q.right)?B.get(Q.right):Q.right;U.has(ue)?U.get(ue).push(te):U.set(ue,[te]),U.has(te)?U.get(te).push(ue):U.set(te,[ue])}else{var re=F.has(Q.top)?F.get(Q.top):Q.top,J=F.has(Q.bottom)?F.get(Q.bottom):Q.bottom;j.has(re)?j.get(re).push(J):j.set(re,[J]),j.has(J)?j.get(J).push(re):j.set(J,[re])}});var ee=o(function(ue,te){var re=[],J=[],K=new L,ae=new Set,Z=0;return ue.forEach(function(de,ne){if(!ae.has(ne)){re[Z]=[],J[Z]=!1;var Te=ne;for(K.push(Te),ae.add(Te),re[Z].push(Te);K.length!=0;){Te=K.shift(),te.has(Te)&&(J[Z]=!0);var W=ue.get(Te);W.forEach(function(Ve){ae.has(Ve)||(K.push(Ve),ae.add(Ve),re[Z].push(Ve))})}Z++}}),{components:re,isFixed:J}},"constructComponents"),q=ee(U,E.fixedNodesOnHorizontal);this.componentsOnHorizontal=q.components,this.fixedComponentsOnHorizontal=q.isFixed;var oe=ee(j,E.fixedNodesOnVertical);this.componentsOnVertical=oe.components,this.fixedComponentsOnVertical=oe.isFixed}}},I.prototype.updateDisplacements=function(){var E=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(oe){var Q=E.idToNodeMap.get(oe.nodeId);Q.displacementX=0,Q.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var _=this.constraints.alignmentConstraint.vertical,D=0;D<_.length;D++){for(var O=0,N=0;N<_[D].length;N++){if(this.fixedNodeSet.has(_[D][N])){O=0;break}O+=this.idToNodeMap.get(_[D][N]).displacementX}for(var P=O/_[D].length,N=0;N<_[D].length;N++)this.idToNodeMap.get(_[D][N]).displacementX=P}if(this.constraints.alignmentConstraint.horizontal)for(var B=this.constraints.alignmentConstraint.horizontal,D=0;D1){var F;for(F=0;FO&&(O=Math.floor(B.y)),P=Math.floor(B.x+m.DEFAULT_COMPONENT_SEPERATION)}this.transform(new b(v.WORLD_CENTER_X-B.x/2,v.WORLD_CENTER_Y-B.y/2))},I.radialLayout=function(E,_,D){var O=Math.max(this.maxDiagonalInTree(E),m.DEFAULT_RADIAL_SEPARATION);I.branchRadialLayout(_,null,0,359,0,O);var N=C.calculateBounds(E),P=new A;P.setDeviceOrgX(N.getMinX()),P.setDeviceOrgY(N.getMinY()),P.setWorldOrgX(D.x),P.setWorldOrgY(D.y);for(var B=0;B1;){var re=te[0];te.splice(0,1);var J=ee.indexOf(re);J>=0&&ee.splice(J,1),Q--,q--}_!=null?ue=(ee.indexOf(te[0])+1)%Q:ue=0;for(var K=Math.abs(O-D)/q,ae=ue;oe!=q;ae=++ae%Q){var Z=ee[ae].getOtherEnd(E);if(Z!=_){var de=(D+oe*K)%360,ne=(de+K)%360;I.branchRadialLayout(Z,E,de,ne,N+P,P),oe++}}},I.maxDiagonalInTree=function(E){for(var _=w.MIN_VALUE,D=0;D_&&(_=N)}return _},I.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},I.prototype.groupZeroDegreeMembers=function(){var E=this,_={};this.memberGroups={},this.idToDummyNode={};for(var D=[],O=this.graphManager.getAllNodes(),N=0;N"u"&&(_[F]=[]),_[F]=_[F].concat(P)}Object.keys(_).forEach(function(V){if(_[V].length>1){var $="DummyCompound_"+V;E.memberGroups[$]=_[V];var U=_[V][0].getParent(),j=new d(E.graphManager);j.id=$,j.paddingLeft=U.paddingLeft||0,j.paddingRight=U.paddingRight||0,j.paddingBottom=U.paddingBottom||0,j.paddingTop=U.paddingTop||0,E.idToDummyNode[$]=j;var ee=E.getGraphManager().add(E.newGraph(),j),q=U.getChild();q.add(j);for(var oe=0;oe<_[V].length;oe++){var Q=_[V][oe];q.remove(Q),ee.add(Q)}}})},I.prototype.clearCompounds=function(){var E={},_={};this.performDFSOnCompounds();for(var D=0;DN?(O.rect.x-=(O.labelWidth-N)/2,O.setWidth(O.labelWidth),O.labelMarginLeft=(O.labelWidth-N)/2):O.labelPosHorizontal=="right"&&O.setWidth(N+O.labelWidth)),O.labelHeight&&(O.labelPosVertical=="top"?(O.rect.y-=O.labelHeight,O.setHeight(P+O.labelHeight),O.labelMarginTop=O.labelHeight):O.labelPosVertical=="center"&&O.labelHeight>P?(O.rect.y-=(O.labelHeight-P)/2,O.setHeight(O.labelHeight),O.labelMarginTop=(O.labelHeight-P)/2):O.labelPosVertical=="bottom"&&O.setHeight(P+O.labelHeight))}})},I.prototype.repopulateCompounds=function(){for(var E=this.compoundOrder.length-1;E>=0;E--){var _=this.compoundOrder[E],D=_.id,O=_.paddingLeft,N=_.paddingTop,P=_.labelMarginLeft,B=_.labelMarginTop;this.adjustLocations(this.tiledMemberPack[D],_.rect.x,_.rect.y,O,N,P,B)}},I.prototype.repopulateZeroDegreeMembers=function(){var E=this,_=this.tiledZeroDegreePack;Object.keys(_).forEach(function(D){var O=E.idToDummyNode[D],N=O.paddingLeft,P=O.paddingTop,B=O.labelMarginLeft,F=O.labelMarginTop;E.adjustLocations(_[D],O.rect.x,O.rect.y,N,P,B,F)})},I.prototype.getToBeTiled=function(E){var _=E.id;if(this.toBeTiled[_]!=null)return this.toBeTiled[_];var D=E.getChild();if(D==null)return this.toBeTiled[_]=!1,!1;for(var O=D.getNodes(),N=0;N0)return this.toBeTiled[_]=!1,!1;if(P.getChild()==null){this.toBeTiled[P.id]=!1;continue}if(!this.getToBeTiled(P))return this.toBeTiled[_]=!1,!1}return this.toBeTiled[_]=!0,!0},I.prototype.getNodeDegree=function(E){for(var _=E.id,D=E.getEdges(),O=0,N=0;NU&&(U=ee.rect.height)}D+=U+E.verticalPadding}},I.prototype.tileCompoundMembers=function(E,_){var D=this;this.tiledMemberPack=[],Object.keys(E).forEach(function(O){var N=_[O];if(D.tiledMemberPack[O]=D.tileNodes(E[O],N.paddingLeft+N.paddingRight),N.rect.width=D.tiledMemberPack[O].width,N.rect.height=D.tiledMemberPack[O].height,N.setCenter(D.tiledMemberPack[O].centerX,D.tiledMemberPack[O].centerY),N.labelMarginLeft=0,N.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var P=N.rect.width,B=N.rect.height;N.labelWidth&&(N.labelPosHorizontal=="left"?(N.rect.x-=N.labelWidth,N.setWidth(P+N.labelWidth),N.labelMarginLeft=N.labelWidth):N.labelPosHorizontal=="center"&&N.labelWidth>P?(N.rect.x-=(N.labelWidth-P)/2,N.setWidth(N.labelWidth),N.labelMarginLeft=(N.labelWidth-P)/2):N.labelPosHorizontal=="right"&&N.setWidth(P+N.labelWidth)),N.labelHeight&&(N.labelPosVertical=="top"?(N.rect.y-=N.labelHeight,N.setHeight(B+N.labelHeight),N.labelMarginTop=N.labelHeight):N.labelPosVertical=="center"&&N.labelHeight>B?(N.rect.y-=(N.labelHeight-B)/2,N.setHeight(N.labelHeight),N.labelMarginTop=(N.labelHeight-B)/2):N.labelPosVertical=="bottom"&&N.setHeight(B+N.labelHeight))}})},I.prototype.tileNodes=function(E,_){var D=this.tileNodesByFavoringDim(E,_,!0),O=this.tileNodesByFavoringDim(E,_,!1),N=this.getOrgRatio(D),P=this.getOrgRatio(O),B;return PF&&(F=oe.getWidth())});var V=P/N,$=B/N,U=Math.pow(D-O,2)+4*(V+O)*($+D)*N,j=(O-D+Math.sqrt(U))/(2*(V+O)),ee;_?(ee=Math.ceil(j),ee==j&&ee++):ee=Math.floor(j);var q=ee*(V+O)-O;return F>q&&(q=F),q+=O*2,q},I.prototype.tileNodesByFavoringDim=function(E,_,D){var O=m.TILING_PADDING_VERTICAL,N=m.TILING_PADDING_HORIZONTAL,P=m.TILING_COMPARE_BY,B={rows:[],rowWidth:[],rowHeight:[],width:0,height:_,verticalPadding:O,horizontalPadding:N,centerX:0,centerY:0};P&&(B.idealRowWidth=this.calcIdealRowWidth(E,D));var F=o(function(Q){return Q.rect.width*Q.rect.height},"getNodeArea"),V=o(function(Q,ue){return F(ue)-F(Q)},"areaCompareFcn");E.sort(function(oe,Q){var ue=V;return B.idealRowWidth?(ue=P,ue(oe.id,Q.id)):ue(oe,Q)});for(var $=0,U=0,j=0;j0&&(B+=E.horizontalPadding),E.rowWidth[D]=B,E.width0&&(F+=E.verticalPadding);var V=0;F>E.rowHeight[D]&&(V=E.rowHeight[D],E.rowHeight[D]=F,V=E.rowHeight[D]-V),E.height+=V,E.rows[D].push(_)},I.prototype.getShortestRowIndex=function(E){for(var _=-1,D=Number.MAX_VALUE,O=0;OD&&(_=O,D=E.rowWidth[O]);return _},I.prototype.canAddHorizontal=function(E,_,D){if(E.idealRowWidth){var O=E.rows.length-1,N=E.rowWidth[O];return N+_+E.horizontalPadding<=E.idealRowWidth}var P=this.getShortestRowIndex(E);if(P<0)return!0;var B=E.rowWidth[P];if(B+E.horizontalPadding+_<=E.width)return!0;var F=0;E.rowHeight[P]0&&(F=D+E.verticalPadding-E.rowHeight[P]);var V;E.width-B>=_+E.horizontalPadding?V=(E.height+F)/(B+_+E.horizontalPadding):V=(E.height+F)/E.width,F=D+E.verticalPadding;var $;return E.width<_?$=(E.height+F)/_:$=(E.height+F)/E.width,$<1&&($=1/$),V<1&&(V=1/V),V<$},I.prototype.shiftToLastRow=function(E){var _=this.getLongestRowIndex(E),D=E.rowWidth.length-1,O=E.rows[_],N=O[O.length-1],P=N.width+E.horizontalPadding;if(E.width-E.rowWidth[D]>P&&_!=D){O.splice(-1,1),E.rows[D].push(N),E.rowWidth[_]=E.rowWidth[_]-P,E.rowWidth[D]=E.rowWidth[D]+P,E.width=E.rowWidth[instance.getLongestRowIndex(E)];for(var B=Number.MIN_VALUE,F=0;FB&&(B=O[F].height);_>0&&(B+=E.verticalPadding);var V=E.rowHeight[_]+E.rowHeight[D];E.rowHeight[_]=B,E.rowHeight[D]0)for(var q=N;q<=P;q++)ee[0]+=this.grid[q][B-1].length+this.grid[q][B].length-1;if(P0)for(var q=B;q<=F;q++)ee[3]+=this.grid[N-1][q].length+this.grid[N][q].length-1;for(var oe=w.MAX_VALUE,Q,ue,te=0;te{var u=l(551).FDLayoutNode,h=l(551).IMath;function f(p,m,g,y){u.call(this,p,m,g,y)}o(f,"CoSENode"),f.prototype=Object.create(u.prototype);for(var d in u)f[d]=u[d];f.prototype.calculateDisplacement=function(){var p=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementX=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementX)),Math.abs(this.displacementY)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementY=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(p,m){for(var g=this.getChild().getNodes(),y,v=0;v{function u(g){if(Array.isArray(g)){for(var y=0,v=Array(g.length);y0){var et=0;Oe.forEach(function(lt){he=="horizontal"?(ye.set(lt,x.has(lt)?b[x.get(lt)]:se.get(lt)),et+=ye.get(lt)):(ye.set(lt,x.has(lt)?T[x.get(lt)]:se.get(lt)),et+=ye.get(lt))}),et=et/Oe.length,We.forEach(function(lt){z.has(lt)||ye.set(lt,et)})}else{var Ue=0;We.forEach(function(lt){he=="horizontal"?Ue+=x.has(lt)?b[x.get(lt)]:se.get(lt):Ue+=x.has(lt)?T[x.get(lt)]:se.get(lt)}),Ue=Ue/We.length,We.forEach(function(lt){ye.set(lt,Ue)})}});for(var ze=o(function(){var Oe=_e.shift(),et=Y.get(Oe);et.forEach(function(Ue){if(ye.get(Ue.id)lt&&(lt=yt),ftGt&&(Gt=ft)}}catch(Ct){Lt=!0,dt=Ct}finally{try{!vt&&nt.return&&nt.return()}finally{if(Lt)throw dt}}var Ur=(et+lt)/2-(Ue+Gt)/2,_t=!0,bn=!1,Br=void 0;try{for(var cr=We[Symbol.iterator](),ar;!(_t=(ar=cr.next()).done);_t=!0){var _r=ar.value;ye.set(_r,ye.get(_r)+Ur)}}catch(Ct){bn=!0,Br=Ct}finally{try{!_t&&cr.return&&cr.return()}finally{if(bn)throw Br}}})}return ye},"findAppropriatePositionForRelativePlacement"),R=o(function(Y){var he=0,z=0,se=0,le=0;if(Y.forEach(function(Re){Re.left?b[x.get(Re.left)]-b[x.get(Re.right)]>=0?he++:z++:T[x.get(Re.top)]-T[x.get(Re.bottom)]>=0?se++:le++}),he>z&&se>le)for(var ke=0;kez)for(var ve=0;vele)for(var ye=0;ye1)y.fixedNodeConstraint.forEach(function(xe,Y){O[Y]=[xe.position.x,xe.position.y],N[Y]=[b[x.get(xe.nodeId)],T[x.get(xe.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var xe=0;if(y.alignmentConstraint.vertical){for(var Y=y.alignmentConstraint.vertical,he=o(function(ye){var Re=new Set;Y[ye].forEach(function(Ke){Re.add(Ke)});var _e=new Set([].concat(u(Re)).filter(function(Ke){return F.has(Ke)})),ze=void 0;_e.size>0?ze=b[x.get(_e.values().next().value)]:ze=L(Re).x,Y[ye].forEach(function(Ke){O[xe]=[ze,T[x.get(Ke)]],N[xe]=[b[x.get(Ke)],T[x.get(Ke)]],xe++})},"_loop2"),z=0;z0?ze=b[x.get(_e.values().next().value)]:ze=L(Re).y,se[ye].forEach(function(Ke){O[xe]=[b[x.get(Ke)],ze],N[xe]=[b[x.get(Ke)],T[x.get(Ke)]],xe++})},"_loop3"),ke=0;kej&&(j=U[q].length,ee=q);if(j<$.size/2)R(y.relativePlacementConstraint),P=!1,B=!1;else{var oe=new Map,Q=new Map,ue=[];U[ee].forEach(function(xe){V.get(xe).forEach(function(Y){Y.direction=="horizontal"?(oe.has(xe)?oe.get(xe).push(Y):oe.set(xe,[Y]),oe.has(Y.id)||oe.set(Y.id,[]),ue.push({left:xe,right:Y.id})):(Q.has(xe)?Q.get(xe).push(Y):Q.set(xe,[Y]),Q.has(Y.id)||Q.set(Y.id,[]),ue.push({top:xe,bottom:Y.id}))})}),R(ue),B=!1;var te=I(oe,"horizontal"),re=I(Q,"vertical");U[ee].forEach(function(xe,Y){N[Y]=[b[x.get(xe)],T[x.get(xe)]],O[Y]=[],te.has(xe)?O[Y][0]=te.get(xe):O[Y][0]=b[x.get(xe)],re.has(xe)?O[Y][1]=re.get(xe):O[Y][1]=T[x.get(xe)]}),P=!0}}if(P){for(var J=void 0,K=d.transpose(O),ae=d.transpose(N),Z=0;Z0){var Be={x:0,y:0};y.fixedNodeConstraint.forEach(function(xe,Y){var he={x:b[x.get(xe.nodeId)],y:T[x.get(xe.nodeId)]},z=xe.position,se=A(z,he);Be.x+=se.x,Be.y+=se.y}),Be.x/=y.fixedNodeConstraint.length,Be.y/=y.fixedNodeConstraint.length,b.forEach(function(xe,Y){b[Y]+=Be.x}),T.forEach(function(xe,Y){T[Y]+=Be.y}),y.fixedNodeConstraint.forEach(function(xe){b[x.get(xe.nodeId)]=xe.position.x,T[x.get(xe.nodeId)]=xe.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Ye=y.alignmentConstraint.vertical,He=o(function(Y){var he=new Set;Ye[Y].forEach(function(le){he.add(le)});var z=new Set([].concat(u(he)).filter(function(le){return F.has(le)})),se=void 0;z.size>0?se=b[x.get(z.values().next().value)]:se=L(he).x,he.forEach(function(le){F.has(le)||(b[x.get(le)]=se)})},"_loop4"),Le=0;Le0?se=T[x.get(z.values().next().value)]:se=L(he).y,he.forEach(function(le){F.has(le)||(T[x.get(le)]=se)})},"_loop5"),Ce=0;Ce{a.exports=t})},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var P4e=sa((F4,Pz)=>{"use strict";o((function(e,r){typeof F4=="object"&&typeof Pz=="object"?Pz.exports=r(Oz()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof F4=="object"?F4.cytoscapeFcose=r(Oz()):e.cytoscapeFcose=r(e.coseBase)}),"webpackUniversalModuleDefinition")(F4,function(t){return(()=>{"use strict";var e={658:(a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(s){for(var l=arguments.length,u=Array(l>1?l-1:0),h=1;h{var u=(function(){function d(p,m){var g=[],y=!0,v=!1,x=void 0;try{for(var b=p[Symbol.iterator](),T;!(y=(T=b.next()).done)&&(g.push(T.value),!(m&&g.length===m));y=!0);}catch(S){v=!0,x=S}finally{try{!y&&b.return&&b.return()}finally{if(v)throw x}}return g}return o(d,"sliceIterator"),function(p,m){if(Array.isArray(p))return p;if(Symbol.iterator in Object(p))return d(p,m);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),h=l(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(d){for(var p={},m=0;m0&&P.merge($)});for(var B=0;B1){T=x[0],S=T.connectedEdges().length,x.forEach(function(N){N.connectedEdges().length0&&g.set("dummy"+(g.size+1),C),A},f.relocateComponent=function(d,p,m){if(!m.fixedNodeConstraint){var g=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,v=Number.POSITIVE_INFINITY,x=Number.NEGATIVE_INFINITY;if(m.quality=="draft"){var b=!0,T=!1,S=void 0;try{for(var w=p.nodeIndexes[Symbol.iterator](),k;!(b=(k=w.next()).done);b=!0){var C=k.value,A=u(C,2),L=A[0],I=A[1],R=m.cy.getElementById(L);if(R){var E=R.boundingBox(),_=p.xCoords[I]-E.w/2,D=p.xCoords[I]+E.w/2,O=p.yCoords[I]-E.h/2,N=p.yCoords[I]+E.h/2;_y&&(y=D),Ox&&(x=N)}}}catch($){T=!0,S=$}finally{try{!b&&w.return&&w.return()}finally{if(T)throw S}}var P=d.x-(y+g)/2,B=d.y-(x+v)/2;p.xCoords=p.xCoords.map(function($){return $+P}),p.yCoords=p.yCoords.map(function($){return $+B})}else{Object.keys(p).forEach(function($){var U=p[$],j=U.getRect().x,ee=U.getRect().x+U.getRect().width,q=U.getRect().y,oe=U.getRect().y+U.getRect().height;jy&&(y=ee),qx&&(x=oe)});var F=d.x-(y+g)/2,V=d.y-(x+v)/2;Object.keys(p).forEach(function($){var U=p[$];U.setCenter(U.getCenterX()+F,U.getCenterY()+V)})}}},f.calcBoundingBox=function(d,p,m,g){for(var y=Number.MAX_SAFE_INTEGER,v=Number.MIN_SAFE_INTEGER,x=Number.MAX_SAFE_INTEGER,b=Number.MIN_SAFE_INTEGER,T=void 0,S=void 0,w=void 0,k=void 0,C=d.descendants().not(":parent"),A=C.length,L=0;LT&&(y=T),vw&&(x=w),b{var u=l(548),h=l(140).CoSELayout,f=l(140).CoSENode,d=l(140).layoutBase.PointD,p=l(140).layoutBase.DimensionD,m=l(140).layoutBase.LayoutConstants,g=l(140).layoutBase.FDLayoutConstants,y=l(140).CoSEConstants,v=o(function(b,T){var S=b.cy,w=b.eles,k=w.nodes(),C=w.edges(),A=void 0,L=void 0,I=void 0,R={};b.randomize&&(A=T.nodeIndexes,L=T.xCoords,I=T.yCoords);var E=o(function($){return typeof $=="function"},"isFn"),_=o(function($,U){return E($)?$(U):$},"optFn"),D=u.calcParentsWithoutChildren(S,w),O=o(function V($,U,j,ee){for(var q=U.length,oe=0;oe0){var K=void 0;K=j.getGraphManager().add(j.newGraph(),te),V(K,ue,j,ee)}}},"processChildrenList"),N=o(function($,U,j){for(var ee=0,q=0,oe=0;oe0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=ee/q:E(b.idealEdgeLength)?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=50:y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=b.idealEdgeLength,y.MIN_REPULSION_DIST=g.MIN_REPULSION_DIST=g.DEFAULT_EDGE_LENGTH/10,y.DEFAULT_RADIAL_SEPARATION=g.DEFAULT_EDGE_LENGTH)},"processEdges"),P=o(function($,U){U.fixedNodeConstraint&&($.constraints.fixedNodeConstraint=U.fixedNodeConstraint),U.alignmentConstraint&&($.constraints.alignmentConstraint=U.alignmentConstraint),U.relativePlacementConstraint&&($.constraints.relativePlacementConstraint=U.relativePlacementConstraint)},"processConstraints");b.nestingFactor!=null&&(y.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=g.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=b.nestingFactor),b.gravity!=null&&(y.DEFAULT_GRAVITY_STRENGTH=g.DEFAULT_GRAVITY_STRENGTH=b.gravity),b.numIter!=null&&(y.MAX_ITERATIONS=g.MAX_ITERATIONS=b.numIter),b.gravityRange!=null&&(y.DEFAULT_GRAVITY_RANGE_FACTOR=g.DEFAULT_GRAVITY_RANGE_FACTOR=b.gravityRange),b.gravityCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_STRENGTH=g.DEFAULT_COMPOUND_GRAVITY_STRENGTH=b.gravityCompound),b.gravityRangeCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=g.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=b.gravityRangeCompound),b.initialEnergyOnIncremental!=null&&(y.DEFAULT_COOLING_FACTOR_INCREMENTAL=g.DEFAULT_COOLING_FACTOR_INCREMENTAL=b.initialEnergyOnIncremental),b.tilingCompareBy!=null&&(y.TILING_COMPARE_BY=b.tilingCompareBy),b.quality=="proof"?m.QUALITY=2:m.QUALITY=0,y.NODE_DIMENSIONS_INCLUDE_LABELS=g.NODE_DIMENSIONS_INCLUDE_LABELS=m.NODE_DIMENSIONS_INCLUDE_LABELS=b.nodeDimensionsIncludeLabels,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!b.randomize,y.ANIMATE=g.ANIMATE=m.ANIMATE=b.animate,y.TILE=b.tile,y.TILING_PADDING_VERTICAL=typeof b.tilingPaddingVertical=="function"?b.tilingPaddingVertical.call():b.tilingPaddingVertical,y.TILING_PADDING_HORIZONTAL=typeof b.tilingPaddingHorizontal=="function"?b.tilingPaddingHorizontal.call():b.tilingPaddingHorizontal,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!0,y.PURE_INCREMENTAL=!b.randomize,m.DEFAULT_UNIFORM_LEAF_NODE_SIZES=b.uniformNodeDimensions,b.step=="transformed"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!1),b.step=="enforced"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!1),b.step=="cose"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!0),b.step=="all"&&(b.randomize?y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!0),b.fixedNodeConstraint||b.alignmentConstraint||b.relativePlacementConstraint?y.TREE_REDUCTION_ON_INCREMENTAL=!1:y.TREE_REDUCTION_ON_INCREMENTAL=!0;var B=new h,F=B.newGraphManager();return O(F.addRoot(),u.getTopMostNodes(k),B,b),N(B,F,C),P(B,b),B.runLayout(),R},"coseLayout");a.exports={coseLayout:v}}),212:((a,s,l)=>{var u=(function(){function b(T,S){for(var w=0;w0)if(N){var F=d.getTopMostNodes(w.eles.nodes());if(E=d.connectComponents(k,w.eles,F),E.forEach(function(Te){var W=Te.boundingBox();_.push({x:W.x1+W.w/2,y:W.y1+W.h/2})}),w.randomize&&E.forEach(function(Te){w.eles=Te,A.push(m(w))}),w.quality=="default"||w.quality=="proof"){var V=k.collection();if(w.tile){var $=new Map,U=[],j=[],ee=0,q={nodeIndexes:$,xCoords:U,yCoords:j},oe=[];if(E.forEach(function(Te,W){Te.edges().length==0&&(Te.nodes().forEach(function(Ve,pe){V.merge(Te.nodes()[pe]),Ve.isParent()||(q.nodeIndexes.set(Te.nodes()[pe].id(),ee++),q.xCoords.push(Te.nodes()[0].position().x),q.yCoords.push(Te.nodes()[0].position().y))}),oe.push(W))}),V.length>1){var Q=V.boundingBox();_.push({x:Q.x1+Q.w/2,y:Q.y1+Q.h/2}),E.push(V),A.push(q);for(var ue=oe.length-1;ue>=0;ue--)E.splice(oe[ue],1),A.splice(oe[ue],1),_.splice(oe[ue],1)}}E.forEach(function(Te,W){w.eles=Te,R.push(y(w,A[W])),d.relocateComponent(_[W],R[W],w)})}else E.forEach(function(Te,W){d.relocateComponent(_[W],A[W],w)});var te=new Set;if(E.length>1){var re=[],J=C.filter(function(Te){return Te.css("display")=="none"});E.forEach(function(Te,W){var Ve=void 0;if(w.quality=="draft"&&(Ve=A[W].nodeIndexes),Te.nodes().not(J).length>0){var pe={};pe.edges=[],pe.nodes=[];var Be=void 0;Te.nodes().not(J).forEach(function(Ye){if(w.quality=="draft")if(!Ye.isParent())Be=Ve.get(Ye.id()),pe.nodes.push({x:A[W].xCoords[Be]-Ye.boundingbox().w/2,y:A[W].yCoords[Be]-Ye.boundingbox().h/2,width:Ye.boundingbox().w,height:Ye.boundingbox().h});else{var He=d.calcBoundingBox(Ye,A[W].xCoords,A[W].yCoords,Ve);pe.nodes.push({x:He.topLeftX,y:He.topLeftY,width:He.width,height:He.height})}else R[W][Ye.id()]&&pe.nodes.push({x:R[W][Ye.id()].getLeft(),y:R[W][Ye.id()].getTop(),width:R[W][Ye.id()].getWidth(),height:R[W][Ye.id()].getHeight()})}),Te.edges().forEach(function(Ye){var He=Ye.source(),Le=Ye.target();if(He.css("display")!="none"&&Le.css("display")!="none")if(w.quality=="draft"){var Ie=Ve.get(He.id()),Ne=Ve.get(Le.id()),Ce=[],Fe=[];if(He.isParent()){var fe=d.calcBoundingBox(He,A[W].xCoords,A[W].yCoords,Ve);Ce.push(fe.topLeftX+fe.width/2),Ce.push(fe.topLeftY+fe.height/2)}else Ce.push(A[W].xCoords[Ie]),Ce.push(A[W].yCoords[Ie]);if(Le.isParent()){var xe=d.calcBoundingBox(Le,A[W].xCoords,A[W].yCoords,Ve);Fe.push(xe.topLeftX+xe.width/2),Fe.push(xe.topLeftY+xe.height/2)}else Fe.push(A[W].xCoords[Ne]),Fe.push(A[W].yCoords[Ne]);pe.edges.push({startX:Ce[0],startY:Ce[1],endX:Fe[0],endY:Fe[1]})}else R[W][He.id()]&&R[W][Le.id()]&&pe.edges.push({startX:R[W][He.id()].getCenterX(),startY:R[W][He.id()].getCenterY(),endX:R[W][Le.id()].getCenterX(),endY:R[W][Le.id()].getCenterY()})}),pe.nodes.length>0&&(re.push(pe),te.add(W))}});var K=O.packComponents(re,w.randomize).shifts;if(w.quality=="draft")A.forEach(function(Te,W){var Ve=Te.xCoords.map(function(Be){return Be+K[W].dx}),pe=Te.yCoords.map(function(Be){return Be+K[W].dy});Te.xCoords=Ve,Te.yCoords=pe});else{var ae=0;te.forEach(function(Te){Object.keys(R[Te]).forEach(function(W){var Ve=R[Te][W];Ve.setCenter(Ve.getCenterX()+K[ae].dx,Ve.getCenterY()+K[ae].dy)}),ae++})}}}else{var P=w.eles.boundingBox();if(_.push({x:P.x1+P.w/2,y:P.y1+P.h/2}),w.randomize){var B=m(w);A.push(B)}w.quality=="default"||w.quality=="proof"?(R.push(y(w,A[0])),d.relocateComponent(_[0],R[0],w)):d.relocateComponent(_[0],A[0],w)}var Z=o(function(W,Ve){if(w.quality=="default"||w.quality=="proof"){typeof W=="number"&&(W=Ve);var pe=void 0,Be=void 0,Ye=W.data("id");return R.forEach(function(Le){Ye in Le&&(pe={x:Le[Ye].getRect().getCenterX(),y:Le[Ye].getRect().getCenterY()},Be=Le[Ye])}),w.nodeDimensionsIncludeLabels&&(Be.labelWidth&&(Be.labelPosHorizontal=="left"?pe.x+=Be.labelWidth/2:Be.labelPosHorizontal=="right"&&(pe.x-=Be.labelWidth/2)),Be.labelHeight&&(Be.labelPosVertical=="top"?pe.y+=Be.labelHeight/2:Be.labelPosVertical=="bottom"&&(pe.y-=Be.labelHeight/2))),pe==null&&(pe={x:W.position("x"),y:W.position("y")}),{x:pe.x,y:pe.y}}else{var He=void 0;return A.forEach(function(Le){var Ie=Le.nodeIndexes.get(W.id());Ie!=null&&(He={x:Le.xCoords[Ie],y:Le.yCoords[Ie]})}),He==null&&(He={x:W.position("x"),y:W.position("y")}),{x:He.x,y:He.y}}},"getPositions");if(w.quality=="default"||w.quality=="proof"||w.randomize){var de=d.calcParentsWithoutChildren(k,C),ne=C.filter(function(Te){return Te.css("display")=="none"});w.eles=C.not(ne),C.nodes().not(":parent").not(ne).layoutPositions(S,w,Z),de.length>0&&de.forEach(function(Te){Te.position(Z(Te))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")},"run")}]),b})();a.exports=x}),657:((a,s,l)=>{var u=l(548),h=l(140).layoutBase.Matrix,f=l(140).layoutBase.SVD,d=o(function(m){var g=m.cy,y=m.eles,v=y.nodes(),x=y.nodes(":parent"),b=new Map,T=new Map,S=new Map,w=[],k=[],C=[],A=[],L=[],I=[],R=[],E=[],_=void 0,D=void 0,O=1e8,N=1e-9,P=m.piTol,B=m.samplingType,F=m.nodeSeparation,V=void 0,$=o(function(){for(var he=0,z=0,se=!1;z=ke;){ye=le[ke++];for(var We=w[ye],Oe=0;Oeze&&(ze=L[Ue],Ke=Ue)}return Ke},"BFS"),j=o(function(he){var z=void 0;if(he){z=Math.floor(Math.random()*D),_=z;for(var le=0;le=1)break;ze=_e}for(var We=0;We=1)break;ze=_e}for(var et=0;et0&&(z.isParent()?w[he].push(S.get(z.id())):w[he].push(z.id()))})});var de=o(function(he){var z=T.get(he),se=void 0;b.get(he).forEach(function(le){g.getElementById(le).isParent()?se=S.get(le):se=le,w[z].push(se),w[T.get(se)].push(he)})},"_loop"),ne=!0,Te=!1,W=void 0;try{for(var Ve=b.keys()[Symbol.iterator](),pe;!(ne=(pe=Ve.next()).done);ne=!0){var Be=pe.value;de(Be)}}catch(Y){Te=!0,W=Y}finally{try{!ne&&Ve.return&&Ve.return()}finally{if(Te)throw W}}D=T.size;var Ye=void 0;if(D>2){V=D{var u=l(212),h=o(function(d){d&&d("layout","fcose",u)},"register");typeof cytoscape<"u"&&h(cytoscape),a.exports=h}),140:(a=>{a.exports=t})},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var by,m0,Bz=M(()=>{"use strict";nc();by=o(t=>`${t}`,"wrapIcon"),m0={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:by('')},server:{body:by('')},disk:{body:by('')},internet:{body:by('')},cloud:{body:by('')},unknown:AA,blank:{body:by("")}}}});var B4e,F4e,$4e,z4e,G4e=M(()=>{"use strict";Xt();zo();nc();gr();Bz();PC();tr();B4e=o(async function(t,e,r){let n=r.getConfigField("padding"),i=r.getConfigField("iconSize"),a=i/2,s=i/6,l=s/2;await Promise.all(e.edges().map(async u=>{let{source:h,sourceDir:f,sourceArrow:d,sourceGroup:p,target:m,targetDir:g,targetArrow:y,targetGroup:v,label:x}=OC(u),{x:b,y:T}=u[0].sourceEndpoint(),{x:S,y:w}=u[0].midpoint(),{x:k,y:C}=u[0].targetEndpoint(),A=n+4;if(p&&(Xa(f)?b+=f==="L"?-A:A:T+=f==="T"?-A:A+18),v&&(Xa(g)?k+=g==="L"?-A:A:C+=g==="T"?-A:A+18),!p&&r.getNode(h)?.type==="junction"&&(Xa(f)?b+=f==="L"?a:-a:T+=f==="T"?a:-a),!v&&r.getNode(m)?.type==="junction"&&(Xa(g)?k+=g==="L"?a:-a:C+=g==="T"?a:-a),u[0]._private.rscratch){let L=t.insert("g");if(L.insert("path").attr("d",`M ${b},${T} L ${S},${w} L${k},${C} `).attr("class","edge").attr("id",xc(h,m,{prefix:"L"})),d){let I=Xa(f)?M4[f](b,s):b-l,R=nu(f)?M4[f](T,s):T-l;L.insert("polygon").attr("points",_z[f](s)).attr("transform",`translate(${I},${R})`).attr("class","arrow")}if(y){let I=Xa(g)?M4[g](k,s):k-l,R=nu(g)?M4[g](C,s):C-l;L.insert("polygon").attr("points",_z[g](s)).attr("transform",`translate(${I},${R})`).attr("class","arrow")}if(x){let I=I4(f,g)?"XY":Xa(f)?"X":"Y",R=0;I==="X"?R=Math.abs(b-k):I==="Y"?R=Math.abs(T-C)/1.5:R=Math.abs(b-k)/2;let E=L.append("g");if(await di(E,x,{useHtmlLabels:!1,width:R,classes:"architecture-service-label"},ge()),E.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),I==="X")E.attr("transform","translate("+S+", "+w+")");else if(I==="Y")E.attr("transform","translate("+S+", "+w+") rotate(-90)");else if(I==="XY"){let _=O4(f,g);if(_&&A4e(_)){let D=E.node().getBoundingClientRect(),[O,N]=D4e(_);E.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*O*N*45})`);let P=E.node().getBoundingClientRect();E.attr("transform",` - translate(${S}, ${w-D.height/2}) - translate(${O*P.width/2}, ${N*P.height/2}) - rotate(${-1*O*N*45}, 0, ${D.height/2}) - `)}}}}}))},"drawEdges"),F4e=o(async function(t,e,r){let i=r.getConfigField("padding")*.75,a=r.getConfigField("fontSize"),l=r.getConfigField("iconSize")/2;await Promise.all(e.nodes().map(async u=>{let h=td(u);if(h.type==="group"){let{h:f,w:d,x1:p,y1:m}=u.boundingBox(),g=t.append("rect");g.attr("id",`group-${h.id}`).attr("x",p+l).attr("y",m+l).attr("width",d).attr("height",f).attr("class","node-bkg");let y=t.append("g"),v=p,x=m;if(h.icon){let b=y.append("g");b.html(`${await _s(h.icon,{height:i,width:i,fallbackPrefix:m0.prefix})}`),b.attr("transform","translate("+(v+l+1)+", "+(x+l+1)+")"),v+=i,x+=a/2-1-2}if(h.label){let b=y.append("g");await di(b,h.label,{useHtmlLabels:!1,width:d,classes:"architecture-service-label"},ge()),b.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),b.attr("transform","translate("+(v+l+4)+", "+(x+l+2)+")")}r.setElementForId(h.id,g)}}))},"drawGroups"),$4e=o(async function(t,e,r){let n=ge();for(let i of r){let a=e.append("g"),s=t.getConfigField("iconSize");if(i.title){let f=a.append("g");await di(f,i.title,{useHtmlLabels:!1,width:s*1.5,classes:"architecture-service-label"},n),f.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),f.attr("transform","translate("+s/2+", "+s+")")}let l=a.append("g");if(i.icon)l.html(`${await _s(i.icon,{height:s,width:s,fallbackPrefix:m0.prefix})}`);else if(i.iconText){l.html(`${await _s("blank",{height:s,width:s,fallbackPrefix:m0.prefix})}`);let p=l.append("g").append("foreignObject").attr("width",s).attr("height",s).append("div").attr("class","node-icon-text").attr("style",`height: ${s}px;`).append("div").html(sr(i.iconText,n)),m=parseInt(window.getComputedStyle(p.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;p.attr("style",`-webkit-line-clamp: ${Math.floor((s-2)/m)};`)}else l.append("path").attr("class","node-bkg").attr("id","node-"+i.id).attr("d",`M0 ${s} v${-s} q0,-5 5,-5 h${s} q5,0 5,5 v${s} H0 Z`);a.attr("id",`service-${i.id}`).attr("class","architecture-service");let{width:u,height:h}=a.node().getBBox();i.width=u,i.height=h,t.setElementForId(i.id,a)}return 0},"drawServices"),z4e=o(function(t,e,r){r.forEach(n=>{let i=e.append("g"),a=t.getConfigField("iconSize");i.append("g").append("rect").attr("id","node-"+n.id).attr("fill-opacity","0").attr("width",a).attr("height",a),i.attr("class","architecture-junction");let{width:l,height:u}=i._groups[0][0].getBBox();i.width=l,i.height=u,t.setElementForId(n.id,i)})},"drawJunctions")});function Iit(t,e,r){t.forEach(n=>{e.add({group:"nodes",data:{type:"service",id:n.id,icon:n.icon,label:n.title,parent:n.in,width:r.getConfigField("iconSize"),height:r.getConfigField("iconSize")},classes:"node-service"})})}function Oit(t,e,r){t.forEach(n=>{e.add({group:"nodes",data:{type:"junction",id:n.id,parent:n.in,width:r.getConfigField("iconSize"),height:r.getConfigField("iconSize")},classes:"node-junction"})})}function Pit(t,e){e.nodes().map(r=>{let n=td(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,t.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function Bit(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function Fit(t,e){t.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=I4(r.lhsDir,r.rhsDir)?"segments":"straight",m={id:`${n}-${i}`,label:d,source:n,sourceDir:u,sourceArrow:a,sourceGroup:s,sourceEndpoint:u==="L"?"0 50%":u==="R"?"100% 50%":u==="T"?"50% 0":"50% 100%",target:i,targetDir:h,targetArrow:l,targetGroup:f,targetEndpoint:h==="L"?"0 50%":h==="R"?"100% 50%":h==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:m,classes:p})})}function $it(t,e,r){let n=o((l,u)=>Object.entries(l).reduce((h,[f,d])=>{let p=0,m=Object.entries(d);if(m.length===1)return h[f]=m[0][1],h;for(let g=0;g{let u={},h={};return Object.entries(l).forEach(([f,[d,p]])=>{let m=t.getNode(f)?.in??"default";u[p]??={},u[p][m]??=[],u[p][m].push(f),h[d]??={},h[d][m]??=[],h[d][m].push(f)}),{horiz:Object.values(n(u,"horizontal")).filter(f=>f.length>1),vert:Object.values(n(h,"vertical")).filter(f=>f.length>1)}}),[a,s]=i.reduce(([l,u],{horiz:h,vert:f})=>[[...l,...h],[...u,...f]],[[],[]]);return{horizontal:a,vertical:s}}function zit(t,e){let r=[],n=o(a=>`${a[0]},${a[1]}`,"posToStr"),i=o(a=>a.split(",").map(s=>parseInt(s)),"strToPos");return t.forEach(a=>{let s=Object.fromEntries(Object.entries(a).map(([f,d])=>[n(d),f])),l=[n([0,0])],u={},h={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;l.length>0;){let f=l.shift();if(f){u[f]=1;let d=s[f];if(d){let p=i(f);Object.entries(h).forEach(([m,g])=>{let y=n([p[0]+g[0],p[1]+g[1]]),v=s[y];v&&!u[y]&&(l.push(y),r.push({[Az[m]]:v,[Az[C4e(m)]]:d,gap:1.5*e.getConfigField("iconSize")}))})}}}}),r}function Git(t,e,r,n,i,{spatialMaps:a,groupAlignments:s}){return new Promise(l=>{let u=qe("body").append("div").attr("id","cy").attr("style","display:none"),h=Ko({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${i.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${i.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});u.remove(),Bit(r,h),Iit(t,h,i),Oit(e,h,i),Fit(n,h);let f=$it(i,a,s),d=zit(a,i),p=h.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(m){let[g,y]=m.connectedNodes(),{parent:v}=td(g),{parent:x}=td(y);return v===x?1.5*i.getConfigField("iconSize"):.5*i.getConfigField("iconSize")},edgeElasticity(m){let[g,y]=m.connectedNodes(),{parent:v}=td(g),{parent:x}=td(y);return v===x?.45:.001},alignmentConstraint:f,relativePlacementConstraint:d});p.one("layoutstop",()=>{function m(g,y,v,x){let b,T,{x:S,y:w}=g,{x:k,y:C}=y;T=(x-w+(S-v)*(w-C)/(S-k))/Math.sqrt(1+Math.pow((w-C)/(S-k),2)),b=Math.sqrt(Math.pow(x-w,2)+Math.pow(v-S,2)-Math.pow(T,2));let A=Math.sqrt(Math.pow(k-S,2)+Math.pow(C-w,2));b=b/A;let L=(k-S)*(x-w)-(C-w)*(v-S);switch(!0){case L>=0:L=1;break;case L<0:L=-1;break}let I=(k-S)*(v-S)+(C-w)*(x-w);switch(!0){case I>=0:I=1;break;case I<0:I=-1;break}return T=Math.abs(T)*L,b=b*I,{distances:T,weights:b}}o(m,"getSegmentWeights"),h.startBatch();for(let g of Object.values(h.edges()))if(g.data?.()){let{x:y,y:v}=g.source().position(),{x,y:b}=g.target().position();if(y!==x&&v!==b){let T=g.sourceEndpoint(),S=g.targetEndpoint(),{sourceDir:w}=OC(g),[k,C]=nu(w)?[T.x,S.y]:[S.x,T.y],{weights:A,distances:L}=m(T,S,k,C);g.style("segment-distances",L),g.style("segment-weights",A)}}h.endBatch(),p.run()}),p.run(),h.ready(m=>{X.info("Ready",m),l(h)})})}var V4e,Vit,U4e,H4e=M(()=>{"use strict";II();V4e=La(P4e(),1);yr();pt();nc();tu();Ei();Bz();PC();G4e();P3([{name:m0.prefix,icons:m0}]);Ko.use(V4e.default);o(Iit,"addServices");o(Oit,"addJunctions");o(Pit,"positionNodes");o(Bit,"addGroups");o(Fit,"addEdges");o($it,"getAlignments");o(zit,"getRelativeConstraints");o(Git,"layoutArchitecture");Vit=o(async(t,e,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=aa(e),d=f.append("g");d.attr("class","architecture-edges");let p=f.append("g");p.attr("class","architecture-services");let m=f.append("g");m.attr("class","architecture-groups"),await $4e(i,p,a),z4e(i,p,s);let g=await Git(a,s,l,u,i,h);await B4e(d,g,i),await F4e(m,g,i),Pit(i,g),ic(void 0,f,i.getConfigField("padding"),i.getConfigField("useMaxWidth"))},"draw"),U4e={draw:Vit}});var q4e={};dr(q4e,{diagram:()=>Uit});var Uit,W4e=M(()=>{"use strict";M4e();Lz();O4e();H4e();Uit={parser:Rz,get db(){return new xy},renderer:U4e,styles:I4e}});var Ty,Fz=M(()=>{"use strict";Ra();qn();tr();$t();ci();Ty=class{constructor(){this.nodes=[];this.levels=new Map;this.outerNodes=[];this.classes=new Map;this.setAccTitle=Rr;this.getAccTitle=Mr;this.setDiagramTitle=$r;this.getDiagramTitle=Pr;this.getAccDescription=Or;this.setAccDescription=Ir}static{o(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let e=ur,r=Qt();return Vn({...e.treemap,...r.treemap??{}})}addNode(e,r){this.nodes.push(e),this.levels.set(e,r),r===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,r){let n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},i=r.replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");i&&i.forEach(a=>{D2(a)&&(n?.textStyles?n.textStyles.push(a):n.textStyles=[a]),n?.styles?n.styles.push(a):n.styles=[a]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){Sr(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}}});function j4e(t){if(!t.length)return[];let e=[],r=[];return t.forEach(n=>{let i={name:n.name,children:n.type==="Leaf"?void 0:[]};for(i.classSelector=n?.classSelector,n?.cssCompiledStyles&&(i.cssCompiledStyles=[n.cssCompiledStyles]),n.type==="Leaf"&&n.value!==void 0&&(i.value=n.value);r.length>0&&r[r.length-1].level>=n.level;)r.pop();if(r.length===0)e.push(i);else{let a=r[r.length-1].node;a.children?a.children.push(i):a.children=[i]}n.type!=="Leaf"&&r.push({node:i,level:n.level})}),e}var K4e=M(()=>{"use strict";o(j4e,"buildHierarchy")});var Yit,Xit,$z,Q4e=M(()=>{"use strict";Uf();pt();r0();K4e();Fz();Yit=o((t,e)=>{nl(t,e);let r=[];for(let a of t.TreemapRows??[])a.$type==="ClassDefStatement"&&e.addClass(a.className??"",a.styleText??"");for(let a of t.TreemapRows??[]){let s=a.item;if(!s)continue;let l=a.indent?parseInt(a.indent):0,u=Xit(s),h=s.classSelector?e.getStylesForClass(s.classSelector):[],f=h.length>0?h.join(";"):void 0,d={level:l,name:u,type:s.$type,value:s.value,classSelector:s.classSelector,cssCompiledStyles:f};r.push(d)}let n=j4e(r),i=o((a,s)=>{for(let l of a)e.addNode(l,s),l.children&&l.children.length>0&&i(l.children,s+1)},"addNodesRecursively");i(n,0)},"populate"),Xit=o(t=>t.name?String(t.name):"","getItemName"),$z={parser:{yy:void 0},parse:o(async t=>{try{let r=await bs("treemap",t);X.debug("Treemap AST:",r);let n=$z.parser?.yy;if(!(n instanceof Ty))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Yit(r,n)}catch(e){throw X.error("Error parsing treemap:",e),e}},"parse")}});var jit,wy,$4,Kit,Qit,Z4e,J4e=M(()=>{"use strict";tu();Mf();Ei();yr();$t();qn();pt();jit=10,wy=10,$4=25,Kit=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),s=a.padding??jit,l=i.getDiagramTitle(),u=i.getRoot(),{themeVariables:h}=Qt();if(!u)return;let f=l?30:0,d=aa(e),p=a.nodeWidth?a.nodeWidth*wy:960,m=a.nodeHeight?a.nodeHeight*wy:500,g=p,y=m+f;d.attr("viewBox",`0 0 ${g} ${y}`),mn(d,y,g,a.useMaxWidth);let v;try{let D=a.valueFormat||",";if(D==="$0,0")v=o(O=>"$"+cc(",")(O),"valueFormat");else if(D.startsWith("$")&&D.includes(",")){let O=/\.\d+/.exec(D),N=O?O[0]:"";v=o(P=>"$"+cc(","+N)(P),"valueFormat")}else if(D.startsWith("$")){let O=D.substring(1);v=o(N=>"$"+cc(O||"")(N),"valueFormat")}else v=cc(D)}catch(D){X.error("Error creating format function:",D),v=cc(",")}let x=no().range(["transparent",h.cScale0,h.cScale1,h.cScale2,h.cScale3,h.cScale4,h.cScale5,h.cScale6,h.cScale7,h.cScale8,h.cScale9,h.cScale10,h.cScale11]),b=no().range(["transparent",h.cScalePeer0,h.cScalePeer1,h.cScalePeer2,h.cScalePeer3,h.cScalePeer4,h.cScalePeer5,h.cScalePeer6,h.cScalePeer7,h.cScalePeer8,h.cScalePeer9,h.cScalePeer10,h.cScalePeer11]),T=no().range([h.cScaleLabel0,h.cScaleLabel1,h.cScaleLabel2,h.cScaleLabel3,h.cScaleLabel4,h.cScaleLabel5,h.cScaleLabel6,h.cScaleLabel7,h.cScaleLabel8,h.cScaleLabel9,h.cScaleLabel10,h.cScaleLabel11]);l&&d.append("text").attr("x",g/2).attr("y",f/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(l);let S=d.append("g").attr("transform",`translate(0, ${f})`).attr("class","treemapContainer"),w=U0(u).sum(D=>D.value??0).sort((D,O)=>(O.value??0)-(D.value??0)),C=N5().size([p,m]).paddingTop(D=>D.children&&D.children.length>0?$4+wy:0).paddingInner(s).paddingLeft(D=>D.children&&D.children.length>0?wy:0).paddingRight(D=>D.children&&D.children.length>0?wy:0).paddingBottom(D=>D.children&&D.children.length>0?wy:0).round(!0)(w),A=C.descendants().filter(D=>D.children&&D.children.length>0),L=S.selectAll(".treemapSection").data(A).enter().append("g").attr("class","treemapSection").attr("transform",D=>`translate(${D.x0},${D.y0})`);L.append("rect").attr("width",D=>D.x1-D.x0).attr("height",$4).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",D=>D.depth===0?"display: none;":""),L.append("clipPath").attr("id",(D,O)=>`clip-section-${e}-${O}`).append("rect").attr("width",D=>Math.max(0,D.x1-D.x0-12)).attr("height",$4),L.append("rect").attr("width",D=>D.x1-D.x0).attr("height",D=>D.y1-D.y0).attr("class",(D,O)=>`treemapSection section${O}`).attr("fill",D=>x(D.data.name)).attr("fill-opacity",.6).attr("stroke",D=>b(D.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",D=>{if(D.depth===0)return"display: none;";let O=je({cssCompiledStyles:D.data.cssCompiledStyles});return O.nodeStyles+";"+O.borderStyles.join(";")}),L.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",$4/2).attr("dominant-baseline","middle").text(D=>D.depth===0?"":D.data.name).attr("font-weight","bold").attr("style",D=>{if(D.depth===0)return"display: none;";let O="dominant-baseline: middle; font-size: 12px; fill:"+T(D.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",N=je({cssCompiledStyles:D.data.cssCompiledStyles});return O+N.labelStyles.replace("color:","fill:")}).each(function(D){if(D.depth===0)return;let O=qe(this),N=D.data.name;O.text(N);let P=D.x1-D.x0,B=6,F;a.showValues!==!1&&D.value?F=P-10-30-10-B:F=P-B-6;let $=Math.max(15,F),U=O.node();if(U.getComputedTextLength()>$){let q=N;for(;q.length>0;){if(q=N.substring(0,q.length-1),q.length===0){O.text("..."),U.getComputedTextLength()>$&&O.text("");break}if(O.text(q+"..."),U.getComputedTextLength()<=$)break}}}),a.showValues!==!1&&L.append("text").attr("class","treemapSectionValue").attr("x",D=>D.x1-D.x0-10).attr("y",$4/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(D=>D.value?v(D.value):"").attr("font-style","italic").attr("style",D=>{if(D.depth===0)return"display: none;";let O="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+T(D.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",N=je({cssCompiledStyles:D.data.cssCompiledStyles});return O+N.labelStyles.replace("color:","fill:")});let I=C.leaves(),R=S.selectAll(".treemapLeafGroup").data(I).enter().append("g").attr("class",(D,O)=>`treemapNode treemapLeafGroup leaf${O}${D.data.classSelector?` ${D.data.classSelector}`:""}x`).attr("transform",D=>`translate(${D.x0},${D.y0})`);R.append("rect").attr("width",D=>D.x1-D.x0).attr("height",D=>D.y1-D.y0).attr("class","treemapLeaf").attr("fill",D=>D.parent?x(D.parent.data.name):x(D.data.name)).attr("style",D=>je({cssCompiledStyles:D.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",D=>D.parent?x(D.parent.data.name):x(D.data.name)).attr("stroke-width",3),R.append("clipPath").attr("id",(D,O)=>`clip-${e}-${O}`).append("rect").attr("width",D=>Math.max(0,D.x1-D.x0-4)).attr("height",D=>Math.max(0,D.y1-D.y0-4)),R.append("text").attr("class","treemapLabel").attr("x",D=>(D.x1-D.x0)/2).attr("y",D=>(D.y1-D.y0)/2).attr("style",D=>{let O="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+T(D.data.name)+";",N=je({cssCompiledStyles:D.data.cssCompiledStyles});return O+N.labelStyles.replace("color:","fill:")}).attr("clip-path",(D,O)=>`url(#clip-${e}-${O})`).text(D=>D.data.name).each(function(D){let O=qe(this),N=D.x1-D.x0,P=D.y1-D.y0,B=O.node(),F=4,V=N-2*F,$=P-2*F;if(V<10||$<10){O.style("display","none");return}let U=parseInt(O.style("font-size"),10),j=8,ee=28,q=.6,oe=6,Q=2;for(;B.getComputedTextLength()>V&&U>j;)U--,O.style("font-size",`${U}px`);let ue=Math.max(oe,Math.min(ee,Math.round(U*q))),te=U+Q+ue;for(;te>$&&U>j&&(U--,ue=Math.max(oe,Math.min(ee,Math.round(U*q))),!(ue$;O.style("font-size",`${U}px`),(B.getComputedTextLength()>V||U(O.x1-O.x0)/2).attr("y",function(O){return(O.y1-O.y0)/2}).attr("style",O=>{let N="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+T(O.data.name)+";",P=je({cssCompiledStyles:O.data.cssCompiledStyles});return N+P.labelStyles.replace("color:","fill:")}).attr("clip-path",(O,N)=>`url(#clip-${e}-${N})`).text(O=>O.value?v(O.value):"").each(function(O){let N=qe(this),P=this.parentNode;if(!P){N.style("display","none");return}let B=qe(P).select(".treemapLabel");if(B.empty()||B.style("display")==="none"){N.style("display","none");return}let F=parseFloat(B.style("font-size")),V=28,$=.6,U=6,j=2,ee=Math.max(U,Math.min(V,Math.round(F*$)));N.style("font-size",`${ee}px`);let oe=(O.y1-O.y0)/2+F/2+j;N.attr("y",oe);let Q=O.x1-O.x0,re=O.y1-O.y0-4,J=Q-8;N.node().getComputedTextLength()>J||oe+ee>re||ee{"use strict";tr();Zit={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},Jit=o(({treemap:t}={})=>{let e=Vn(Zit,t);return` +`,"getStyles"),zEe=Lft});var yW=Jt((v3,gW)=>{"use strict";o((function(e,r){typeof v3=="object"&&typeof gW=="object"?gW.exports=r():typeof define=="function"&&define.amd?define([],r):typeof v3=="object"?v3.layoutBase=r():e.layoutBase=r()}),"webpackUniversalModuleDefinition")(v3,function(){return(function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=28)})([(function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s}),(function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(5);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp?(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(p+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(m+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>m?(this.rect.y-=(this.labelHeight-m)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(m+this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h}),(function(t,e,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=i}),(function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n}),(function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(7),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,T=0;T-1&&k>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(w,1),x.target!=x.source&&x.target.edges.splice(k,1);var E=x.source.owner.getEdges().indexOf(x);if(E==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(E,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,T=this.getNodes(),E=T.length,w=0;wv&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(T[0].getParent().paddingLeft!=null?b=T[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,T,E,w,k,C,D=this.nodes,R=D.length,O=0;OT&&(y=T),vw&&(x=w),bT&&(y=T),vw&&(x=w),b=this.nodes.length){var R=0;v.forEach(function(O){O.owner==g&&R++}),R==this.nodes.length&&(this.isConnected=!0)}},t.exports=p}),(function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(6),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=D,!1;if(hf)return l[0]=p,l[1]=h,l[2]=k,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,S=!0):(l[0]=g,l[1]=m,S=!0):_===M&&(u>f?(l[0]=p,l[1]=m,S=!0):(l[0]=x,l[1]=v,S=!0)),-N===M?f>u?(l[2]=C,l[3]=D,A=!0):(l[2]=k,l[3]=w,A=!0):N===M&&(f>u?(l[2]=E,l[3]=w,A=!0):(l[2]=R,l[3]=D,A=!0)),S&&A)return!1;if(u>f?h>d?(P=this.getCardinalDirection(_,M,4),B=this.getCardinalDirection(N,M,2)):(P=this.getCardinalDirection(-_,M,3),B=this.getCardinalDirection(-N,M,1)):h>d?(P=this.getCardinalDirection(-_,M,1),B=this.getCardinalDirection(-N,M,3)):(P=this.getCardinalDirection(_,M,2),B=this.getCardinalDirection(N,M,4)),!S)switch(P){case 1:G=m,F=u+-T/M,l[0]=F,l[1]=G;break;case 2:F=x,G=h+b*M,l[0]=F,l[1]=G;break;case 3:G=v,F=u+T/M,l[0]=F,l[1]=G;break;case 4:F=y,G=h+-b*M,l[0]=F,l[1]=G;break}if(!A)switch(B){case 1:V=w,$=f+-L/M,l[2]=$,l[3]=V;break;case 2:$=R,V=d+O*M,l[2]=$,l[3]=V;break;case 3:V=D,$=f+L/M,l[2]=$,l[3]=V;break;case 4:$=C,V=d+-O*M,l[2]=$,l[3]=V;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,T=void 0,E=void 0,w=void 0,k=void 0,C=void 0,D=void 0,R=void 0;return T=p-f,w=h-d,C=d*f-h*p,E=v-g,k=m-y,D=y*g-m*v,R=T*k-E*w,R===0?null:(x=(w*D-k*C)/R,b=(E*C-T*D)/R,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l=0){var v=(-m+Math.sqrt(m*m-4*p*g))/(2*p),x=(-m-Math.sqrt(m*m-4*p*g))/(2*p),b=null;return v>=0&&v<=1?[v]:x>=0&&x<=1?[x]:b}else return null},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,t.exports=i}),(function(t,e,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n}),(function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n}),(function(t,e,r){"use strict";var n=(function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i}),(function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(T.push(w[0]);T.length>0&&g;){var k=T[0];T.splice(0,1),b.add(k);for(var C=k.getEdges(),x=0;x-1&&w.splice(L,1)}b=new Set,E=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(D,1);var R=E.getNeighborsList();R.forEach(function(S){if(y.indexOf(S)<0){var A=v.get(S),_=A-1;_==1&&k.push(S),v.set(S,_)}})}y=y.concat(k),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p}),(function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n}),(function(t,e,r){"use strict";var n=r(5);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i}),(function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mT||b>T)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(T=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||T>=x[0].length)){for(var E=0;Eh},"_defaultCompareFunction")}]),l})();t.exports=s}),(function(t,e,r){"use strict";function n(){}o(n,"SVD"),n.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var a=Math.min(this.m,this.n);this.s=(function(mt){for(var at=[];mt-- >0;)at.push(0);return at})(Math.min(this.m+1,this.n)),this.U=(function(mt){var at=o(function wt(St){if(St.length==0)return 0;for(var bt=[],pt=0;pt0;)at.push(0);return at})(this.n),l=(function(mt){for(var at=[];mt-- >0;)at.push(0);return at})(this.m),u=!0,h=!0,f=Math.min(this.m-1,this.n),d=Math.max(0,Math.min(this.n-2,this.m)),p=0;p=0;M--)if(this.s[M]!==0){for(var P=M+1;P=0;ee--){if((function(mt,at){return mt&&at})(ee0;){var J=void 0,ge=void 0;for(J=A-2;J>=-1&&J!==-1;J--)if(Math.abs(s[J])<=le+Q*(Math.abs(this.s[J])+Math.abs(this.s[J+1]))){s[J]=0;break}if(J===A-2)ge=4;else{var ie=void 0;for(ie=A-1;ie>=J&&ie!==J;ie--){var Te=(ie!==A?Math.abs(s[ie]):0)+(ie!==J+1?Math.abs(s[ie-1]):0);if(Math.abs(this.s[ie])<=le+Q*Te){this.s[ie]=0;break}}ie===J?ge=3:ie===A-1?ge=1:(ge=2,J=ie)}switch(J++,ge){case 1:{var j=s[A-2];s[A-2]=0;for(var Ge=A-2;Ge>=J;Ge--){var ye=n.hypot(this.s[Ge],j),$e=this.s[Ge]/ye,Xe=j/ye;if(this.s[Ge]=ye,Ge!==J&&(j=-Xe*s[Ge-1],s[Ge-1]=$e*s[Ge-1]),h)for(var Ue=0;Ue=this.s[J+1]);){var ut=this.s[J];if(this.s[J]=this.s[J+1],this.s[J+1]=ut,h&&JMath.abs(a)?(s=a/i,s=Math.abs(i)*Math.sqrt(1+s*s)):a!=0?(s=i/a,s=Math.abs(a)*Math.sqrt(1+s*s)):s=0,s},t.exports=n}),(function(t,e,r){"use strict";var n=(function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o((function(e,r){typeof x3=="object"&&typeof vW=="object"?vW.exports=r(yW()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof x3=="object"?x3.coseBase=r(yW()):e.coseBase=r(e.layoutBase)}),"webpackUniversalModuleDefinition")(x3,function(t){return(()=>{"use strict";var e={45:((a,s,l)=>{var u={};u.layoutBase=l(551),u.CoSEConstants=l(806),u.CoSEEdge=l(767),u.CoSEGraph=l(880),u.CoSEGraphManager=l(578),u.CoSELayout=l(765),u.CoSENode=l(991),u.ConstraintHandler=l(902),a.exports=u}),806:((a,s,l)=>{var u=l(551).FDLayoutConstants;function h(){}o(h,"CoSEConstants");for(var f in u)h[f]=u[f];h.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,h.DEFAULT_RADIAL_SEPARATION=u.DEFAULT_EDGE_LENGTH,h.DEFAULT_COMPONENT_SEPERATION=60,h.TILE=!0,h.TILING_PADDING_VERTICAL=10,h.TILING_PADDING_HORIZONTAL=10,h.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,h.ENFORCE_CONSTRAINTS=!0,h.APPLY_LAYOUT=!0,h.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,h.TREE_REDUCTION_ON_INCREMENTAL=!0,h.PURE_INCREMENTAL=h.DEFAULT_INCREMENTAL,a.exports=h}),767:((a,s,l)=>{var u=l(551).FDLayoutEdge;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEEdge"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h}),880:((a,s,l)=>{var u=l(551).LGraph;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEGraph"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h}),578:((a,s,l)=>{var u=l(551).LGraphManager;function h(d){u.call(this,d)}o(h,"CoSEGraphManager"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h}),765:((a,s,l)=>{var u=l(551).FDLayout,h=l(578),f=l(880),d=l(991),p=l(767),m=l(806),g=l(902),y=l(551).FDLayoutConstants,v=l(551).LayoutConstants,x=l(551).Point,b=l(551).PointD,T=l(551).DimensionD,E=l(551).Layout,w=l(551).Integer,k=l(551).IGeometry,C=l(551).LGraph,D=l(551).Transform,R=l(551).LinkedList;function O(){u.call(this),this.toBeTiled={},this.constraints={}}o(O,"CoSELayout"),O.prototype=Object.create(u.prototype);for(var L in u)O[L]=u[L];O.prototype.newGraphManager=function(){var S=new h(this);return this.graphManager=S,S},O.prototype.newGraph=function(S){return new f(null,this.graphManager,S)},O.prototype.newNode=function(S){return new d(this.graphManager,S)},O.prototype.newEdge=function(S){return new p(null,null,S)},O.prototype.initParameters=function(){u.prototype.initParameters.call(this,arguments),this.isSubLayout||(m.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=m.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=m.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=y.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=y.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=y.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},O.prototype.initSpringEmbedder=function(){u.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/y.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},O.prototype.layout=function(){var S=v.DEFAULT_CREATE_BENDS_AS_NEEDED;return S&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},O.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(m.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var A=new Set(this.getAllNodes()),_=this.nodesWithGravity.filter(function(P){return A.has(P)});this.graphManager.setAllNodesToApplyGravitation(_)}}else{var S=this.getFlatForest();if(S.length>0)this.positionNodesRadially(S);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var A=new Set(this.getAllNodes()),_=this.nodesWithGravity.filter(function(N){return A.has(N)});this.graphManager.setAllNodesToApplyGravitation(_),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(g.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),m.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},O.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%y.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var S=new Set(this.getAllNodes()),A=this.nodesWithGravity.filter(function(M){return S.has(M)});this.graphManager.setAllNodesToApplyGravitation(A),this.graphManager.updateBounds(),this.updateGrid(),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var _=!this.isTreeGrowing&&!this.isGrowthFinished,N=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(_,N),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},O.prototype.getPositionsData=function(){for(var S=this.graphManager.getAllNodes(),A={},_=0;_0&&this.updateDisplacements();for(var _=0;_0&&(N.fixedNodeWeight=P)}}if(this.constraints.relativePlacementConstraint){var B=new Map,F=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(Z){S.fixedNodesOnHorizontal.add(Z),S.fixedNodesOnVertical.add(Z)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var G=this.constraints.alignmentConstraint.vertical,_=0;_=2*Z.length/3;ne--)de=Math.floor(Math.random()*(ne+1)),re=Z[ne],Z[ne]=Z[de],Z[de]=re;return Z},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(Z){if(Z.left){var de=B.has(Z.left)?B.get(Z.left):Z.left,re=B.has(Z.right)?B.get(Z.right):Z.right;S.nodesInRelativeHorizontal.includes(de)||(S.nodesInRelativeHorizontal.push(de),S.nodeToRelativeConstraintMapHorizontal.set(de,[]),S.dummyToNodeForVerticalAlignment.has(de)?S.nodeToTempPositionMapHorizontal.set(de,S.idToNodeMap.get(S.dummyToNodeForVerticalAlignment.get(de)[0]).getCenterX()):S.nodeToTempPositionMapHorizontal.set(de,S.idToNodeMap.get(de).getCenterX())),S.nodesInRelativeHorizontal.includes(re)||(S.nodesInRelativeHorizontal.push(re),S.nodeToRelativeConstraintMapHorizontal.set(re,[]),S.dummyToNodeForVerticalAlignment.has(re)?S.nodeToTempPositionMapHorizontal.set(re,S.idToNodeMap.get(S.dummyToNodeForVerticalAlignment.get(re)[0]).getCenterX()):S.nodeToTempPositionMapHorizontal.set(re,S.idToNodeMap.get(re).getCenterX())),S.nodeToRelativeConstraintMapHorizontal.get(de).push({right:re,gap:Z.gap}),S.nodeToRelativeConstraintMapHorizontal.get(re).push({left:de,gap:Z.gap})}else{var ne=F.has(Z.top)?F.get(Z.top):Z.top,te=F.has(Z.bottom)?F.get(Z.bottom):Z.bottom;S.nodesInRelativeVertical.includes(ne)||(S.nodesInRelativeVertical.push(ne),S.nodeToRelativeConstraintMapVertical.set(ne,[]),S.dummyToNodeForHorizontalAlignment.has(ne)?S.nodeToTempPositionMapVertical.set(ne,S.idToNodeMap.get(S.dummyToNodeForHorizontalAlignment.get(ne)[0]).getCenterY()):S.nodeToTempPositionMapVertical.set(ne,S.idToNodeMap.get(ne).getCenterY())),S.nodesInRelativeVertical.includes(te)||(S.nodesInRelativeVertical.push(te),S.nodeToRelativeConstraintMapVertical.set(te,[]),S.dummyToNodeForHorizontalAlignment.has(te)?S.nodeToTempPositionMapVertical.set(te,S.idToNodeMap.get(S.dummyToNodeForHorizontalAlignment.get(te)[0]).getCenterY()):S.nodeToTempPositionMapVertical.set(te,S.idToNodeMap.get(te).getCenterY())),S.nodeToRelativeConstraintMapVertical.get(ne).push({bottom:te,gap:Z.gap}),S.nodeToRelativeConstraintMapVertical.get(te).push({top:ne,gap:Z.gap})}});else{var V=new Map,K=new Map;this.constraints.relativePlacementConstraint.forEach(function(Z){if(Z.left){var de=B.has(Z.left)?B.get(Z.left):Z.left,re=B.has(Z.right)?B.get(Z.right):Z.right;V.has(de)?V.get(de).push(re):V.set(de,[re]),V.has(re)?V.get(re).push(de):V.set(re,[de])}else{var ne=F.has(Z.top)?F.get(Z.top):Z.top,te=F.has(Z.bottom)?F.get(Z.bottom):Z.bottom;K.has(ne)?K.get(ne).push(te):K.set(ne,[te]),K.has(te)?K.get(te).push(ne):K.set(te,[ne])}});var ee=o(function(de,re){var ne=[],te=[],Q=new R,le=new Set,J=0;return de.forEach(function(ge,ie){if(!le.has(ie)){ne[J]=[],te[J]=!1;var Te=ie;for(Q.push(Te),le.add(Te),ne[J].push(Te);Q.length!=0;){Te=Q.shift(),re.has(Te)&&(te[J]=!0);var j=de.get(Te);j.forEach(function(Ge){le.has(Ge)||(Q.push(Ge),le.add(Ge),ne[J].push(Ge))})}J++}}),{components:ne,isFixed:te}},"constructComponents"),H=ee(V,S.fixedNodesOnHorizontal);this.componentsOnHorizontal=H.components,this.fixedComponentsOnHorizontal=H.isFixed;var he=ee(K,S.fixedNodesOnVertical);this.componentsOnVertical=he.components,this.fixedComponentsOnVertical=he.isFixed}}},O.prototype.updateDisplacements=function(){var S=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(he){var Z=S.idToNodeMap.get(he.nodeId);Z.displacementX=0,Z.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var A=this.constraints.alignmentConstraint.vertical,_=0;_1){var F;for(F=0;FN&&(N=Math.floor(B.y)),P=Math.floor(B.x+m.DEFAULT_COMPONENT_SEPERATION)}this.transform(new b(v.WORLD_CENTER_X-B.x/2,v.WORLD_CENTER_Y-B.y/2))},O.radialLayout=function(S,A,_){var N=Math.max(this.maxDiagonalInTree(S),m.DEFAULT_RADIAL_SEPARATION);O.branchRadialLayout(A,null,0,359,0,N);var M=C.calculateBounds(S),P=new D;P.setDeviceOrgX(M.getMinX()),P.setDeviceOrgY(M.getMinY()),P.setWorldOrgX(_.x),P.setWorldOrgY(_.y);for(var B=0;B1;){var ne=re[0];re.splice(0,1);var te=ee.indexOf(ne);te>=0&&ee.splice(te,1),Z--,H--}A!=null?de=(ee.indexOf(re[0])+1)%Z:de=0;for(var Q=Math.abs(N-_)/H,le=de;he!=H;le=++le%Z){var J=ee[le].getOtherEnd(S);if(J!=A){var ge=(_+he*Q)%360,ie=(ge+Q)%360;O.branchRadialLayout(J,S,ge,ie,M+P,P),he++}}},O.maxDiagonalInTree=function(S){for(var A=w.MIN_VALUE,_=0;_A&&(A=M)}return A},O.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},O.prototype.groupZeroDegreeMembers=function(){var S=this,A={};this.memberGroups={},this.idToDummyNode={};for(var _=[],N=this.graphManager.getAllNodes(),M=0;M"u"&&(A[F]=[]),A[F]=A[F].concat(P)}Object.keys(A).forEach(function(G){if(A[G].length>1){var $="DummyCompound_"+G;S.memberGroups[$]=A[G];var V=A[G][0].getParent(),K=new d(S.graphManager);K.id=$,K.paddingLeft=V.paddingLeft||0,K.paddingRight=V.paddingRight||0,K.paddingBottom=V.paddingBottom||0,K.paddingTop=V.paddingTop||0,S.idToDummyNode[$]=K;var ee=S.getGraphManager().add(S.newGraph(),K),H=V.getChild();H.add(K);for(var he=0;heM?(N.rect.x-=(N.labelWidth-M)/2,N.setWidth(N.labelWidth),N.labelMarginLeft=(N.labelWidth-M)/2):N.labelPosHorizontal=="right"&&N.setWidth(M+N.labelWidth)),N.labelHeight&&(N.labelPosVertical=="top"?(N.rect.y-=N.labelHeight,N.setHeight(P+N.labelHeight),N.labelMarginTop=N.labelHeight):N.labelPosVertical=="center"&&N.labelHeight>P?(N.rect.y-=(N.labelHeight-P)/2,N.setHeight(N.labelHeight),N.labelMarginTop=(N.labelHeight-P)/2):N.labelPosVertical=="bottom"&&N.setHeight(P+N.labelHeight))}})},O.prototype.repopulateCompounds=function(){for(var S=this.compoundOrder.length-1;S>=0;S--){var A=this.compoundOrder[S],_=A.id,N=A.paddingLeft,M=A.paddingTop,P=A.labelMarginLeft,B=A.labelMarginTop;this.adjustLocations(this.tiledMemberPack[_],A.rect.x,A.rect.y,N,M,P,B)}},O.prototype.repopulateZeroDegreeMembers=function(){var S=this,A=this.tiledZeroDegreePack;Object.keys(A).forEach(function(_){var N=S.idToDummyNode[_],M=N.paddingLeft,P=N.paddingTop,B=N.labelMarginLeft,F=N.labelMarginTop;S.adjustLocations(A[_],N.rect.x,N.rect.y,M,P,B,F)})},O.prototype.getToBeTiled=function(S){var A=S.id;if(this.toBeTiled[A]!=null)return this.toBeTiled[A];var _=S.getChild();if(_==null)return this.toBeTiled[A]=!1,!1;for(var N=_.getNodes(),M=0;M0)return this.toBeTiled[A]=!1,!1;if(P.getChild()==null){this.toBeTiled[P.id]=!1;continue}if(!this.getToBeTiled(P))return this.toBeTiled[A]=!1,!1}return this.toBeTiled[A]=!0,!0},O.prototype.getNodeDegree=function(S){for(var A=S.id,_=S.getEdges(),N=0,M=0;M<_.length;M++){var P=_[M];P.getSource().id!==P.getTarget().id&&(N=N+1)}return N},O.prototype.getNodeDegreeWithChildren=function(S){var A=this.getNodeDegree(S);if(S.getChild()==null)return A;for(var _=S.getChild().getNodes(),N=0;N<_.length;N++){var M=_[N];A+=this.getNodeDegreeWithChildren(M)}return A},O.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},O.prototype.fillCompexOrderByDFS=function(S){for(var A=0;AV&&(V=ee.rect.height)}_+=V+S.verticalPadding}},O.prototype.tileCompoundMembers=function(S,A){var _=this;this.tiledMemberPack=[],Object.keys(S).forEach(function(N){var M=A[N];if(_.tiledMemberPack[N]=_.tileNodes(S[N],M.paddingLeft+M.paddingRight),M.rect.width=_.tiledMemberPack[N].width,M.rect.height=_.tiledMemberPack[N].height,M.setCenter(_.tiledMemberPack[N].centerX,_.tiledMemberPack[N].centerY),M.labelMarginLeft=0,M.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var P=M.rect.width,B=M.rect.height;M.labelWidth&&(M.labelPosHorizontal=="left"?(M.rect.x-=M.labelWidth,M.setWidth(P+M.labelWidth),M.labelMarginLeft=M.labelWidth):M.labelPosHorizontal=="center"&&M.labelWidth>P?(M.rect.x-=(M.labelWidth-P)/2,M.setWidth(M.labelWidth),M.labelMarginLeft=(M.labelWidth-P)/2):M.labelPosHorizontal=="right"&&M.setWidth(P+M.labelWidth)),M.labelHeight&&(M.labelPosVertical=="top"?(M.rect.y-=M.labelHeight,M.setHeight(B+M.labelHeight),M.labelMarginTop=M.labelHeight):M.labelPosVertical=="center"&&M.labelHeight>B?(M.rect.y-=(M.labelHeight-B)/2,M.setHeight(M.labelHeight),M.labelMarginTop=(M.labelHeight-B)/2):M.labelPosVertical=="bottom"&&M.setHeight(B+M.labelHeight))}})},O.prototype.tileNodes=function(S,A){var _=this.tileNodesByFavoringDim(S,A,!0),N=this.tileNodesByFavoringDim(S,A,!1),M=this.getOrgRatio(_),P=this.getOrgRatio(N),B;return PF&&(F=he.getWidth())});var G=P/M,$=B/M,V=Math.pow(_-N,2)+4*(G+N)*($+_)*M,K=(N-_+Math.sqrt(V))/(2*(G+N)),ee;A?(ee=Math.ceil(K),ee==K&&ee++):ee=Math.floor(K);var H=ee*(G+N)-N;return F>H&&(H=F),H+=N*2,H},O.prototype.tileNodesByFavoringDim=function(S,A,_){var N=m.TILING_PADDING_VERTICAL,M=m.TILING_PADDING_HORIZONTAL,P=m.TILING_COMPARE_BY,B={rows:[],rowWidth:[],rowHeight:[],width:0,height:A,verticalPadding:N,horizontalPadding:M,centerX:0,centerY:0};P&&(B.idealRowWidth=this.calcIdealRowWidth(S,_));var F=o(function(Z){return Z.rect.width*Z.rect.height},"getNodeArea"),G=o(function(Z,de){return F(de)-F(Z)},"areaCompareFcn");S.sort(function(he,Z){var de=G;return B.idealRowWidth?(de=P,de(he.id,Z.id)):de(he,Z)});for(var $=0,V=0,K=0;K0&&(B+=S.horizontalPadding),S.rowWidth[_]=B,S.width0&&(F+=S.verticalPadding);var G=0;F>S.rowHeight[_]&&(G=S.rowHeight[_],S.rowHeight[_]=F,G=S.rowHeight[_]-G),S.height+=G,S.rows[_].push(A)},O.prototype.getShortestRowIndex=function(S){for(var A=-1,_=Number.MAX_VALUE,N=0;N_&&(A=N,_=S.rowWidth[N]);return A},O.prototype.canAddHorizontal=function(S,A,_){if(S.idealRowWidth){var N=S.rows.length-1,M=S.rowWidth[N];return M+A+S.horizontalPadding<=S.idealRowWidth}var P=this.getShortestRowIndex(S);if(P<0)return!0;var B=S.rowWidth[P];if(B+S.horizontalPadding+A<=S.width)return!0;var F=0;S.rowHeight[P]<_&&P>0&&(F=_+S.verticalPadding-S.rowHeight[P]);var G;S.width-B>=A+S.horizontalPadding?G=(S.height+F)/(B+A+S.horizontalPadding):G=(S.height+F)/S.width,F=_+S.verticalPadding;var $;return S.widthP&&A!=_){N.splice(-1,1),S.rows[_].push(M),S.rowWidth[A]=S.rowWidth[A]-P,S.rowWidth[_]=S.rowWidth[_]+P,S.width=S.rowWidth[instance.getLongestRowIndex(S)];for(var B=Number.MIN_VALUE,F=0;FB&&(B=N[F].height);A>0&&(B+=S.verticalPadding);var G=S.rowHeight[A]+S.rowHeight[_];S.rowHeight[A]=B,S.rowHeight[_]0)for(var H=M;H<=P;H++)ee[0]+=this.grid[H][B-1].length+this.grid[H][B].length-1;if(P0)for(var H=B;H<=F;H++)ee[3]+=this.grid[M-1][H].length+this.grid[M][H].length-1;for(var he=w.MAX_VALUE,Z,de,re=0;re{var u=l(551).FDLayoutNode,h=l(551).IMath;function f(p,m,g,y){u.call(this,p,m,g,y)}o(f,"CoSENode"),f.prototype=Object.create(u.prototype);for(var d in u)f[d]=u[d];f.prototype.calculateDisplacement=function(){var p=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementX=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementX)),Math.abs(this.displacementY)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementY=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(p,m){for(var g=this.getChild().getNodes(),y,v=0;v{function u(g){if(Array.isArray(g)){for(var y=0,v=Array(g.length);y0){var rt=0;Pe.forEach(function(ut){ue=="horizontal"?(me.set(ut,x.has(ut)?b[x.get(ut)]:se.get(ut)),rt+=me.get(ut)):(me.set(ut,x.has(ut)?T[x.get(ut)]:se.get(ut)),rt+=me.get(ut))}),rt=rt/Pe.length,je.forEach(function(ut){z.has(ut)||me.set(ut,rt)})}else{var We=0;je.forEach(function(ut){ue=="horizontal"?We+=x.has(ut)?b[x.get(ut)]:se.get(ut):We+=x.has(ut)?T[x.get(ut)]:se.get(ut)}),We=We/je.length,je.forEach(function(ut){me.set(ut,We)})}});for(var Fe=o(function(){var Pe=Ce.shift(),rt=U.get(Pe);rt.forEach(function(We){if(me.get(We.id)ut&&(ut=bt),ptUt&&(Ut=pt)}}catch(Dt){Mt=!0,mt=Dt}finally{try{!Tt&&at.return&&at.return()}finally{if(Mt)throw mt}}var Zr=(rt+ut)/2-(We+Ut)/2,Lt=!0,Dn=!1,Hr=void 0;try{for(var mr=je[Symbol.iterator](),hr;!(Lt=(hr=mr.next()).done);Lt=!0){var Br=hr.value;me.set(Br,me.get(Br)+Zr)}}catch(Dt){Dn=!0,Hr=Dt}finally{try{!Lt&&mr.return&&mr.return()}finally{if(Dn)throw Hr}}})}return me},"findAppropriatePositionForRelativePlacement"),L=o(function(U){var ue=0,z=0,se=0,oe=0;if(U.forEach(function(De){De.left?b[x.get(De.left)]-b[x.get(De.right)]>=0?ue++:z++:T[x.get(De.top)]-T[x.get(De.bottom)]>=0?se++:oe++}),ue>z&&se>oe)for(var be=0;bez)for(var pe=0;peoe)for(var me=0;me1)y.fixedNodeConstraint.forEach(function(ce,U){N[U]=[ce.position.x,ce.position.y],M[U]=[b[x.get(ce.nodeId)],T[x.get(ce.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var ce=0;if(y.alignmentConstraint.vertical){for(var U=y.alignmentConstraint.vertical,ue=o(function(me){var De=new Set;U[me].forEach(function(Ye){De.add(Ye)});var Ce=new Set([].concat(u(De)).filter(function(Ye){return F.has(Ye)})),Fe=void 0;Ce.size>0?Fe=b[x.get(Ce.values().next().value)]:Fe=R(De).x,U[me].forEach(function(Ye){N[ce]=[Fe,T[x.get(Ye)]],M[ce]=[b[x.get(Ye)],T[x.get(Ye)]],ce++})},"_loop2"),z=0;z0?Fe=b[x.get(Ce.values().next().value)]:Fe=R(De).y,se[me].forEach(function(Ye){N[ce]=[b[x.get(Ye)],Fe],M[ce]=[b[x.get(Ye)],T[x.get(Ye)]],ce++})},"_loop3"),be=0;beK&&(K=V[H].length,ee=H);if(K<$.size/2)L(y.relativePlacementConstraint),P=!1,B=!1;else{var he=new Map,Z=new Map,de=[];V[ee].forEach(function(ce){G.get(ce).forEach(function(U){U.direction=="horizontal"?(he.has(ce)?he.get(ce).push(U):he.set(ce,[U]),he.has(U.id)||he.set(U.id,[]),de.push({left:ce,right:U.id})):(Z.has(ce)?Z.get(ce).push(U):Z.set(ce,[U]),Z.has(U.id)||Z.set(U.id,[]),de.push({top:ce,bottom:U.id}))})}),L(de),B=!1;var re=O(he,"horizontal"),ne=O(Z,"vertical");V[ee].forEach(function(ce,U){M[U]=[b[x.get(ce)],T[x.get(ce)]],N[U]=[],re.has(ce)?N[U][0]=re.get(ce):N[U][0]=b[x.get(ce)],ne.has(ce)?N[U][1]=ne.get(ce):N[U][1]=T[x.get(ce)]}),P=!0}}if(P){for(var te=void 0,Q=d.transpose(N),le=d.transpose(M),J=0;J0){var $e={x:0,y:0};y.fixedNodeConstraint.forEach(function(ce,U){var ue={x:b[x.get(ce.nodeId)],y:T[x.get(ce.nodeId)]},z=ce.position,se=D(z,ue);$e.x+=se.x,$e.y+=se.y}),$e.x/=y.fixedNodeConstraint.length,$e.y/=y.fixedNodeConstraint.length,b.forEach(function(ce,U){b[U]+=$e.x}),T.forEach(function(ce,U){T[U]+=$e.y}),y.fixedNodeConstraint.forEach(function(ce){b[x.get(ce.nodeId)]=ce.position.x,T[x.get(ce.nodeId)]=ce.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Xe=y.alignmentConstraint.vertical,Ue=o(function(U){var ue=new Set;Xe[U].forEach(function(oe){ue.add(oe)});var z=new Set([].concat(u(ue)).filter(function(oe){return F.has(oe)})),se=void 0;z.size>0?se=b[x.get(z.values().next().value)]:se=R(ue).x,ue.forEach(function(oe){F.has(oe)||(b[x.get(oe)]=se)})},"_loop4"),Le=0;Le0?se=T[x.get(z.values().next().value)]:se=R(ue).y,ue.forEach(function(oe){F.has(oe)||(T[x.get(oe)]=se)})},"_loop5"),Ae=0;Ae{a.exports=t})},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var VEe=Jt((b3,bW)=>{"use strict";o((function(e,r){typeof b3=="object"&&typeof bW=="object"?bW.exports=r(xW()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof b3=="object"?b3.cytoscapeFcose=r(xW()):e.cytoscapeFcose=r(e.coseBase)}),"webpackUniversalModuleDefinition")(b3,function(t){return(()=>{"use strict";var e={658:(a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(s){for(var l=arguments.length,u=Array(l>1?l-1:0),h=1;h{var u=(function(){function d(p,m){var g=[],y=!0,v=!1,x=void 0;try{for(var b=p[Symbol.iterator](),T;!(y=(T=b.next()).done)&&(g.push(T.value),!(m&&g.length===m));y=!0);}catch(E){v=!0,x=E}finally{try{!y&&b.return&&b.return()}finally{if(v)throw x}}return g}return o(d,"sliceIterator"),function(p,m){if(Array.isArray(p))return p;if(Symbol.iterator in Object(p))return d(p,m);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),h=l(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(d){for(var p={},m=0;m0&&P.merge($)});for(var B=0;B1){T=x[0],E=T.connectedEdges().length,x.forEach(function(M){M.connectedEdges().length0&&g.set("dummy"+(g.size+1),C),D},f.relocateComponent=function(d,p,m){if(!m.fixedNodeConstraint){var g=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,v=Number.POSITIVE_INFINITY,x=Number.NEGATIVE_INFINITY;if(m.quality=="draft"){var b=!0,T=!1,E=void 0;try{for(var w=p.nodeIndexes[Symbol.iterator](),k;!(b=(k=w.next()).done);b=!0){var C=k.value,D=u(C,2),R=D[0],O=D[1],L=m.cy.getElementById(R);if(L){var S=L.boundingBox(),A=p.xCoords[O]-S.w/2,_=p.xCoords[O]+S.w/2,N=p.yCoords[O]-S.h/2,M=p.yCoords[O]+S.h/2;Ay&&(y=_),Nx&&(x=M)}}}catch($){T=!0,E=$}finally{try{!b&&w.return&&w.return()}finally{if(T)throw E}}var P=d.x-(y+g)/2,B=d.y-(x+v)/2;p.xCoords=p.xCoords.map(function($){return $+P}),p.yCoords=p.yCoords.map(function($){return $+B})}else{Object.keys(p).forEach(function($){var V=p[$],K=V.getRect().x,ee=V.getRect().x+V.getRect().width,H=V.getRect().y,he=V.getRect().y+V.getRect().height;Ky&&(y=ee),Hx&&(x=he)});var F=d.x-(y+g)/2,G=d.y-(x+v)/2;Object.keys(p).forEach(function($){var V=p[$];V.setCenter(V.getCenterX()+F,V.getCenterY()+G)})}}},f.calcBoundingBox=function(d,p,m,g){for(var y=Number.MAX_SAFE_INTEGER,v=Number.MIN_SAFE_INTEGER,x=Number.MAX_SAFE_INTEGER,b=Number.MIN_SAFE_INTEGER,T=void 0,E=void 0,w=void 0,k=void 0,C=d.descendants().not(":parent"),D=C.length,R=0;RT&&(y=T),vw&&(x=w),b{var u=l(548),h=l(140).CoSELayout,f=l(140).CoSENode,d=l(140).layoutBase.PointD,p=l(140).layoutBase.DimensionD,m=l(140).layoutBase.LayoutConstants,g=l(140).layoutBase.FDLayoutConstants,y=l(140).CoSEConstants,v=o(function(b,T){var E=b.cy,w=b.eles,k=w.nodes(),C=w.edges(),D=void 0,R=void 0,O=void 0,L={};b.randomize&&(D=T.nodeIndexes,R=T.xCoords,O=T.yCoords);var S=o(function($){return typeof $=="function"},"isFn"),A=o(function($,V){return S($)?$(V):$},"optFn"),_=u.calcParentsWithoutChildren(E,w),N=o(function G($,V,K,ee){for(var H=V.length,he=0;he0){var Q=void 0;Q=K.getGraphManager().add(K.newGraph(),re),G(Q,de,K,ee)}}},"processChildrenList"),M=o(function($,V,K){for(var ee=0,H=0,he=0;he0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=ee/H:S(b.idealEdgeLength)?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=50:y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=b.idealEdgeLength,y.MIN_REPULSION_DIST=g.MIN_REPULSION_DIST=g.DEFAULT_EDGE_LENGTH/10,y.DEFAULT_RADIAL_SEPARATION=g.DEFAULT_EDGE_LENGTH)},"processEdges"),P=o(function($,V){V.fixedNodeConstraint&&($.constraints.fixedNodeConstraint=V.fixedNodeConstraint),V.alignmentConstraint&&($.constraints.alignmentConstraint=V.alignmentConstraint),V.relativePlacementConstraint&&($.constraints.relativePlacementConstraint=V.relativePlacementConstraint)},"processConstraints");b.nestingFactor!=null&&(y.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=g.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=b.nestingFactor),b.gravity!=null&&(y.DEFAULT_GRAVITY_STRENGTH=g.DEFAULT_GRAVITY_STRENGTH=b.gravity),b.numIter!=null&&(y.MAX_ITERATIONS=g.MAX_ITERATIONS=b.numIter),b.gravityRange!=null&&(y.DEFAULT_GRAVITY_RANGE_FACTOR=g.DEFAULT_GRAVITY_RANGE_FACTOR=b.gravityRange),b.gravityCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_STRENGTH=g.DEFAULT_COMPOUND_GRAVITY_STRENGTH=b.gravityCompound),b.gravityRangeCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=g.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=b.gravityRangeCompound),b.initialEnergyOnIncremental!=null&&(y.DEFAULT_COOLING_FACTOR_INCREMENTAL=g.DEFAULT_COOLING_FACTOR_INCREMENTAL=b.initialEnergyOnIncremental),b.tilingCompareBy!=null&&(y.TILING_COMPARE_BY=b.tilingCompareBy),b.quality=="proof"?m.QUALITY=2:m.QUALITY=0,y.NODE_DIMENSIONS_INCLUDE_LABELS=g.NODE_DIMENSIONS_INCLUDE_LABELS=m.NODE_DIMENSIONS_INCLUDE_LABELS=b.nodeDimensionsIncludeLabels,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!b.randomize,y.ANIMATE=g.ANIMATE=m.ANIMATE=b.animate,y.TILE=b.tile,y.TILING_PADDING_VERTICAL=typeof b.tilingPaddingVertical=="function"?b.tilingPaddingVertical.call():b.tilingPaddingVertical,y.TILING_PADDING_HORIZONTAL=typeof b.tilingPaddingHorizontal=="function"?b.tilingPaddingHorizontal.call():b.tilingPaddingHorizontal,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!0,y.PURE_INCREMENTAL=!b.randomize,m.DEFAULT_UNIFORM_LEAF_NODE_SIZES=b.uniformNodeDimensions,b.step=="transformed"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!1),b.step=="enforced"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!1),b.step=="cose"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!0),b.step=="all"&&(b.randomize?y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!0),b.fixedNodeConstraint||b.alignmentConstraint||b.relativePlacementConstraint?y.TREE_REDUCTION_ON_INCREMENTAL=!1:y.TREE_REDUCTION_ON_INCREMENTAL=!0;var B=new h,F=B.newGraphManager();return N(F.addRoot(),u.getTopMostNodes(k),B,b),M(B,F,C),P(B,b),B.runLayout(),L},"coseLayout");a.exports={coseLayout:v}}),212:((a,s,l)=>{var u=(function(){function b(T,E){for(var w=0;w0)if(M){var F=d.getTopMostNodes(w.eles.nodes());if(S=d.connectComponents(k,w.eles,F),S.forEach(function(Te){var j=Te.boundingBox();A.push({x:j.x1+j.w/2,y:j.y1+j.h/2})}),w.randomize&&S.forEach(function(Te){w.eles=Te,D.push(m(w))}),w.quality=="default"||w.quality=="proof"){var G=k.collection();if(w.tile){var $=new Map,V=[],K=[],ee=0,H={nodeIndexes:$,xCoords:V,yCoords:K},he=[];if(S.forEach(function(Te,j){Te.edges().length==0&&(Te.nodes().forEach(function(Ge,ye){G.merge(Te.nodes()[ye]),Ge.isParent()||(H.nodeIndexes.set(Te.nodes()[ye].id(),ee++),H.xCoords.push(Te.nodes()[0].position().x),H.yCoords.push(Te.nodes()[0].position().y))}),he.push(j))}),G.length>1){var Z=G.boundingBox();A.push({x:Z.x1+Z.w/2,y:Z.y1+Z.h/2}),S.push(G),D.push(H);for(var de=he.length-1;de>=0;de--)S.splice(he[de],1),D.splice(he[de],1),A.splice(he[de],1)}}S.forEach(function(Te,j){w.eles=Te,L.push(y(w,D[j])),d.relocateComponent(A[j],L[j],w)})}else S.forEach(function(Te,j){d.relocateComponent(A[j],D[j],w)});var re=new Set;if(S.length>1){var ne=[],te=C.filter(function(Te){return Te.css("display")=="none"});S.forEach(function(Te,j){var Ge=void 0;if(w.quality=="draft"&&(Ge=D[j].nodeIndexes),Te.nodes().not(te).length>0){var ye={};ye.edges=[],ye.nodes=[];var $e=void 0;Te.nodes().not(te).forEach(function(Xe){if(w.quality=="draft")if(!Xe.isParent())$e=Ge.get(Xe.id()),ye.nodes.push({x:D[j].xCoords[$e]-Xe.boundingbox().w/2,y:D[j].yCoords[$e]-Xe.boundingbox().h/2,width:Xe.boundingbox().w,height:Xe.boundingbox().h});else{var Ue=d.calcBoundingBox(Xe,D[j].xCoords,D[j].yCoords,Ge);ye.nodes.push({x:Ue.topLeftX,y:Ue.topLeftY,width:Ue.width,height:Ue.height})}else L[j][Xe.id()]&&ye.nodes.push({x:L[j][Xe.id()].getLeft(),y:L[j][Xe.id()].getTop(),width:L[j][Xe.id()].getWidth(),height:L[j][Xe.id()].getHeight()})}),Te.edges().forEach(function(Xe){var Ue=Xe.source(),Le=Xe.target();if(Ue.css("display")!="none"&&Le.css("display")!="none")if(w.quality=="draft"){var Ie=Ge.get(Ue.id()),Me=Ge.get(Le.id()),Ae=[],ze=[];if(Ue.isParent()){var Y=d.calcBoundingBox(Ue,D[j].xCoords,D[j].yCoords,Ge);Ae.push(Y.topLeftX+Y.width/2),Ae.push(Y.topLeftY+Y.height/2)}else Ae.push(D[j].xCoords[Ie]),Ae.push(D[j].yCoords[Ie]);if(Le.isParent()){var ce=d.calcBoundingBox(Le,D[j].xCoords,D[j].yCoords,Ge);ze.push(ce.topLeftX+ce.width/2),ze.push(ce.topLeftY+ce.height/2)}else ze.push(D[j].xCoords[Me]),ze.push(D[j].yCoords[Me]);ye.edges.push({startX:Ae[0],startY:Ae[1],endX:ze[0],endY:ze[1]})}else L[j][Ue.id()]&&L[j][Le.id()]&&ye.edges.push({startX:L[j][Ue.id()].getCenterX(),startY:L[j][Ue.id()].getCenterY(),endX:L[j][Le.id()].getCenterX(),endY:L[j][Le.id()].getCenterY()})}),ye.nodes.length>0&&(ne.push(ye),re.add(j))}});var Q=N.packComponents(ne,w.randomize).shifts;if(w.quality=="draft")D.forEach(function(Te,j){var Ge=Te.xCoords.map(function($e){return $e+Q[j].dx}),ye=Te.yCoords.map(function($e){return $e+Q[j].dy});Te.xCoords=Ge,Te.yCoords=ye});else{var le=0;re.forEach(function(Te){Object.keys(L[Te]).forEach(function(j){var Ge=L[Te][j];Ge.setCenter(Ge.getCenterX()+Q[le].dx,Ge.getCenterY()+Q[le].dy)}),le++})}}}else{var P=w.eles.boundingBox();if(A.push({x:P.x1+P.w/2,y:P.y1+P.h/2}),w.randomize){var B=m(w);D.push(B)}w.quality=="default"||w.quality=="proof"?(L.push(y(w,D[0])),d.relocateComponent(A[0],L[0],w)):d.relocateComponent(A[0],D[0],w)}var J=o(function(j,Ge){if(w.quality=="default"||w.quality=="proof"){typeof j=="number"&&(j=Ge);var ye=void 0,$e=void 0,Xe=j.data("id");return L.forEach(function(Le){Xe in Le&&(ye={x:Le[Xe].getRect().getCenterX(),y:Le[Xe].getRect().getCenterY()},$e=Le[Xe])}),w.nodeDimensionsIncludeLabels&&($e.labelWidth&&($e.labelPosHorizontal=="left"?ye.x+=$e.labelWidth/2:$e.labelPosHorizontal=="right"&&(ye.x-=$e.labelWidth/2)),$e.labelHeight&&($e.labelPosVertical=="top"?ye.y+=$e.labelHeight/2:$e.labelPosVertical=="bottom"&&(ye.y-=$e.labelHeight/2))),ye==null&&(ye={x:j.position("x"),y:j.position("y")}),{x:ye.x,y:ye.y}}else{var Ue=void 0;return D.forEach(function(Le){var Ie=Le.nodeIndexes.get(j.id());Ie!=null&&(Ue={x:Le.xCoords[Ie],y:Le.yCoords[Ie]})}),Ue==null&&(Ue={x:j.position("x"),y:j.position("y")}),{x:Ue.x,y:Ue.y}}},"getPositions");if(w.quality=="default"||w.quality=="proof"||w.randomize){var ge=d.calcParentsWithoutChildren(k,C),ie=C.filter(function(Te){return Te.css("display")=="none"});w.eles=C.not(ie),C.nodes().not(":parent").not(ie).layoutPositions(E,w,J),ge.length>0&&ge.forEach(function(Te){Te.position(J(Te))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")},"run")}]),b})();a.exports=x}),657:((a,s,l)=>{var u=l(548),h=l(140).layoutBase.Matrix,f=l(140).layoutBase.SVD,d=o(function(m){var g=m.cy,y=m.eles,v=y.nodes(),x=y.nodes(":parent"),b=new Map,T=new Map,E=new Map,w=[],k=[],C=[],D=[],R=[],O=[],L=[],S=[],A=void 0,_=void 0,N=1e8,M=1e-9,P=m.piTol,B=m.samplingType,F=m.nodeSeparation,G=void 0,$=o(function(){for(var ue=0,z=0,se=!1;z=be;){me=oe[be++];for(var je=w[me],Pe=0;PeFe&&(Fe=R[We],Ye=We)}return Ye},"BFS"),K=o(function(ue){var z=void 0;if(ue){z=Math.floor(Math.random()*_),A=z;for(var oe=0;oe<_;oe++)R[oe]=N;for(var be=0;be=1)break;Fe=Ce}for(var je=0;je<_;je++)be[je]=se[je];for(De=0,Fe=M;;){De++;for(var Pe=0;Pe<_;Pe++)pe[Pe]=oe[Pe];if(pe=h.minusOp(pe,h.multCons(be,h.dotProduct(be,pe))),oe=h.multGamma(h.multL(h.multGamma(pe),O,S)),z=h.dotProduct(pe,oe),oe=h.normalize(oe),Ce=h.dotProduct(pe,oe),Ye=Math.abs(Ce/Fe),Ye<=1+P&&Ye>=1)break;Fe=Ce}for(var rt=0;rt<_;rt++)pe[rt]=oe[rt];k=h.multCons(be,Math.sqrt(Math.abs(ue))),C=h.multCons(pe,Math.sqrt(Math.abs(z)))},"powerIteration");u.connectComponents(g,y,u.getTopMostNodes(v),b),x.forEach(function(U){u.connectComponents(g,y,u.getTopMostNodes(U.descendants().intersection(y)),b)});for(var he=0,Z=0;Z0&&(z.isParent()?w[ue].push(E.get(z.id())):w[ue].push(z.id()))})});var ge=o(function(ue){var z=T.get(ue),se=void 0;b.get(ue).forEach(function(oe){g.getElementById(oe).isParent()?se=E.get(oe):se=oe,w[z].push(se),w[T.get(se)].push(ue)})},"_loop"),ie=!0,Te=!1,j=void 0;try{for(var Ge=b.keys()[Symbol.iterator](),ye;!(ie=(ye=Ge.next()).done);ie=!0){var $e=ye.value;ge($e)}}catch(U){Te=!0,j=U}finally{try{!ie&&Ge.return&&Ge.return()}finally{if(Te)throw j}}_=T.size;var Xe=void 0;if(_>2){G=_{var u=l(212),h=o(function(d){d&&d("layout","fcose",u)},"register");typeof cytoscape<"u"&&h(cytoscape),a.exports=h}),140:(a=>{a.exports=t})},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var qv,Zm,TW=I(()=>{"use strict";Gc();qv=o(t=>`${t}`,"wrapIcon"),Zm={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:qv('')},server:{body:qv('')},disk:{body:qv('')},internet:{body:qv('')},cloud:{body:qv('')},unknown:rD,blank:{body:qv("")}}}});var qEe,UEe,WEe,HEe,YEe=I(()=>{"use strict";Qt();yl();Gc();wr();TW();h8();sr();qEe=o(async function(t,e,r){let n=r.getConfigField("padding"),i=r.getConfigField("iconSize"),a=i/2,s=i/6,l=s/2;await Promise.all(e.edges().map(async u=>{let{source:h,sourceDir:f,sourceArrow:d,sourceGroup:p,target:m,targetDir:g,targetArrow:y,targetGroup:v,label:x}=u8(u),{x:b,y:T}=u[0].sourceEndpoint(),{x:E,y:w}=u[0].midpoint(),{x:k,y:C}=u[0].targetEndpoint(),D=n+4;if(p&&(gs(f)?b+=f==="L"?-D:D:T+=f==="T"?-D:D+18),v&&(gs(g)?k+=g==="L"?-D:D:C+=g==="T"?-D:D+18),!p&&r.getNode(h)?.type==="junction"&&(gs(f)?b+=f==="L"?a:-a:T+=f==="T"?a:-a),!v&&r.getNode(m)?.type==="junction"&&(gs(g)?k+=g==="L"?a:-a:C+=g==="T"?a:-a),u[0]._private.rscratch){let R=t.insert("g");if(R.insert("path").attr("d",`M ${b},${T} L ${E},${w} L${k},${C} `).attr("class","edge").attr("id",nu(h,m,{prefix:"L"})),d){let O=gs(f)?m3[f](b,s):b-l,L=Hu(f)?m3[f](T,s):T-l;R.insert("polygon").attr("points",fW[f](s)).attr("transform",`translate(${O},${L})`).attr("class","arrow")}if(y){let O=gs(g)?m3[g](k,s):k-l,L=Hu(g)?m3[g](C,s):C-l;R.insert("polygon").attr("points",fW[g](s)).attr("transform",`translate(${O},${L})`).attr("class","arrow")}if(x){let O=g3(f,g)?"XY":gs(f)?"X":"Y",L=0;O==="X"?L=Math.abs(b-k):O==="Y"?L=Math.abs(T-C)/1.5:L=Math.abs(b-k)/2;let S=R.append("g");if(await Ai(S,x,{useHtmlLabels:!1,width:L,classes:"architecture-service-label"},xe()),S.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),O==="X")S.attr("transform","translate("+E+", "+w+")");else if(O==="Y")S.attr("transform","translate("+E+", "+w+") rotate(-90)");else if(O==="XY"){let A=y3(f,g);if(A&&MEe(A)){let _=S.node().getBoundingClientRect(),[N,M]=OEe(A);S.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*N*M*45})`);let P=S.node().getBoundingClientRect();S.attr("transform",` + translate(${E}, ${w-_.height/2}) + translate(${N*P.width/2}, ${M*P.height/2}) + rotate(${-1*N*M*45}, 0, ${_.height/2}) + `)}}}}}))},"drawEdges"),UEe=o(async function(t,e,r){let i=r.getConfigField("padding")*.75,a=r.getConfigField("fontSize"),l=r.getConfigField("iconSize")/2;await Promise.all(e.nodes().map(async u=>{let h=vp(u);if(h.type==="group"){let{h:f,w:d,x1:p,y1:m}=u.boundingBox(),g=t.append("rect");g.attr("id",`group-${h.id}`).attr("x",p+l).attr("y",m+l).attr("width",d).attr("height",f).attr("class","node-bkg");let y=t.append("g"),v=p,x=m;if(h.icon){let b=y.append("g");b.html(`${await Ks(h.icon,{height:i,width:i,fallbackPrefix:Zm.prefix})}`),b.attr("transform","translate("+(v+l+1)+", "+(x+l+1)+")"),v+=i,x+=a/2-1-2}if(h.label){let b=y.append("g");await Ai(b,h.label,{useHtmlLabels:!1,width:d,classes:"architecture-service-label"},xe()),b.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),b.attr("transform","translate("+(v+l+4)+", "+(x+l+2)+")")}r.setElementForId(h.id,g)}}))},"drawGroups"),WEe=o(async function(t,e,r){let n=xe();for(let i of r){let a=e.append("g"),s=t.getConfigField("iconSize");if(i.title){let f=a.append("g");await Ai(f,i.title,{useHtmlLabels:!1,width:s*1.5,classes:"architecture-service-label"},n),f.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),f.attr("transform","translate("+s/2+", "+s+")")}let l=a.append("g");if(i.icon)l.html(`${await Ks(i.icon,{height:s,width:s,fallbackPrefix:Zm.prefix})}`);else if(i.iconText){l.html(`${await Ks("blank",{height:s,width:s,fallbackPrefix:Zm.prefix})}`);let p=l.append("g").append("foreignObject").attr("width",s).attr("height",s).append("div").attr("class","node-icon-text").attr("style",`height: ${s}px;`).append("div").html(fr(i.iconText,n)),m=parseInt(window.getComputedStyle(p.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;p.attr("style",`-webkit-line-clamp: ${Math.floor((s-2)/m)};`)}else l.append("path").attr("class","node-bkg").attr("id","node-"+i.id).attr("d",`M0 ${s} v${-s} q0,-5 5,-5 h${s} q5,0 5,5 v${s} H0 Z`);a.attr("id",`service-${i.id}`).attr("class","architecture-service");let{width:u,height:h}=a.node().getBBox();i.width=u,i.height=h,t.setElementForId(i.id,a)}return 0},"drawServices"),HEe=o(function(t,e,r){r.forEach(n=>{let i=e.append("g"),a=t.getConfigField("iconSize");i.append("g").append("rect").attr("id","node-"+n.id).attr("fill-opacity","0").attr("width",a).attr("height",a),i.attr("class","architecture-junction");let{width:l,height:u}=i._groups[0][0].getBBox();i.width=l,i.height=u,t.setElementForId(n.id,i)})},"drawJunctions")});function Nft(t,e,r){t.forEach(n=>{e.add({group:"nodes",data:{type:"service",id:n.id,icon:n.icon,label:n.title,parent:n.in,width:r.getConfigField("iconSize"),height:r.getConfigField("iconSize")},classes:"node-service"})})}function Mft(t,e,r){t.forEach(n=>{e.add({group:"nodes",data:{type:"junction",id:n.id,parent:n.in,width:r.getConfigField("iconSize"),height:r.getConfigField("iconSize")},classes:"node-junction"})})}function Ift(t,e){e.nodes().map(r=>{let n=vp(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,t.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function Oft(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function Pft(t,e){t.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=g3(r.lhsDir,r.rhsDir)?"segments":"straight",m={id:`${n}-${i}`,label:d,source:n,sourceDir:u,sourceArrow:a,sourceGroup:s,sourceEndpoint:u==="L"?"0 50%":u==="R"?"100% 50%":u==="T"?"50% 0":"50% 100%",target:i,targetDir:h,targetArrow:l,targetGroup:f,targetEndpoint:h==="L"?"0 50%":h==="R"?"100% 50%":h==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:m,classes:p})})}function Bft(t,e,r){let n=o((l,u)=>Object.entries(l).reduce((h,[f,d])=>{let p=0,m=Object.entries(d);if(m.length===1)return h[f]=m[0][1],h;for(let g=0;g{let u={},h={};return Object.entries(l).forEach(([f,[d,p]])=>{let m=t.getNode(f)?.in??"default";u[p]??={},u[p][m]??=[],u[p][m].push(f),h[d]??={},h[d][m]??=[],h[d][m].push(f)}),{horiz:Object.values(n(u,"horizontal")).filter(f=>f.length>1),vert:Object.values(n(h,"vertical")).filter(f=>f.length>1)}}),[a,s]=i.reduce(([l,u],{horiz:h,vert:f})=>[[...l,...h],[...u,...f]],[[],[]]);return{horizontal:a,vertical:s}}function Fft(t,e){let r=[],n=o(a=>`${a[0]},${a[1]}`,"posToStr"),i=o(a=>a.split(",").map(s=>parseInt(s)),"strToPos");return t.forEach(a=>{let s=Object.fromEntries(Object.entries(a).map(([f,d])=>[n(d),f])),l=[n([0,0])],u={},h={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;l.length>0;){let f=l.shift();if(f){u[f]=1;let d=s[f];if(d){let p=i(f);Object.entries(h).forEach(([m,g])=>{let y=n([p[0]+g[0],p[1]+g[1]]),v=s[y];v&&!u[y]&&(l.push(y),r.push({[hW[m]]:v,[hW[NEe(m)]]:d,gap:1.5*e.getConfigField("iconSize")}))})}}}}),r}function $ft(t,e,r,n,i,{spatialMaps:a,groupAlignments:s}){return new Promise(l=>{let u=He("body").append("div").attr("id","cy").attr("style","display:none"),h=Al({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${i.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${i.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});u.remove(),Oft(r,h),Nft(t,h,i),Mft(e,h,i),Pft(n,h);let f=Bft(i,a,s),d=Fft(a,i),p=h.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(m){let[g,y]=m.connectedNodes(),{parent:v}=vp(g),{parent:x}=vp(y);return v===x?1.5*i.getConfigField("iconSize"):.5*i.getConfigField("iconSize")},edgeElasticity(m){let[g,y]=m.connectedNodes(),{parent:v}=vp(g),{parent:x}=vp(y);return v===x?.45:.001},alignmentConstraint:f,relativePlacementConstraint:d});p.one("layoutstop",()=>{function m(g,y,v,x){let b,T,{x:E,y:w}=g,{x:k,y:C}=y;T=(x-w+(E-v)*(w-C)/(E-k))/Math.sqrt(1+Math.pow((w-C)/(E-k),2)),b=Math.sqrt(Math.pow(x-w,2)+Math.pow(v-E,2)-Math.pow(T,2));let D=Math.sqrt(Math.pow(k-E,2)+Math.pow(C-w,2));b=b/D;let R=(k-E)*(x-w)-(C-w)*(v-E);switch(!0){case R>=0:R=1;break;case R<0:R=-1;break}let O=(k-E)*(v-E)+(C-w)*(x-w);switch(!0){case O>=0:O=1;break;case O<0:O=-1;break}return T=Math.abs(T)*R,b=b*O,{distances:T,weights:b}}o(m,"getSegmentWeights"),h.startBatch();for(let g of Object.values(h.edges()))if(g.data?.()){let{x:y,y:v}=g.source().position(),{x,y:b}=g.target().position();if(y!==x&&v!==b){let T=g.sourceEndpoint(),E=g.targetEndpoint(),{sourceDir:w}=u8(g),[k,C]=Hu(w)?[T.x,E.y]:[E.x,T.y],{weights:D,distances:R}=m(T,E,k,C);g.style("segment-distances",R),g.style("segment-weights",D)}}h.endBatch(),p.run()}),p.run(),h.ready(m=>{X.info("Ready",m),l(h)})})}var jEe,zft,XEe,KEe=I(()=>{"use strict";cB();jEe=Aa(VEe(),1);kr();gt();Gc();Uu();Fi();TW();h8();YEe();xw([{name:Zm.prefix,icons:Zm}]);Al.use(jEe.default);o(Nft,"addServices");o(Mft,"addJunctions");o(Ift,"positionNodes");o(Oft,"addGroups");o(Pft,"addEdges");o(Bft,"getAlignments");o(Fft,"getRelativeConstraints");o($ft,"layoutArchitecture");zft=o(async(t,e,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=Ca(e),d=f.append("g");d.attr("class","architecture-edges");let p=f.append("g");p.attr("class","architecture-services");let m=f.append("g");m.attr("class","architecture-groups"),await WEe(i,p,a),HEe(i,p,s);let g=await $ft(a,s,l,u,i,h);await qEe(d,g,i),await UEe(m,g,i),Ift(i,g),Vc(void 0,f,i.getConfigField("padding"),i.getConfigField("useMaxWidth"))},"draw"),XEe={draw:zft}});var QEe={};vr(QEe,{diagram:()=>Gft});var Gft,ZEe=I(()=>{"use strict";$Ee();pW();GEe();KEe();Gft={parser:mW,get db(){return new Vv},renderer:XEe,styles:zEe}});var Uv,wW=I(()=>{"use strict";Ka();ti();sr();Vt();ki();Uv=class{constructor(){this.nodes=[];this.levels=new Map;this.outerNodes=[];this.classes=new Map;this.setAccTitle=zr;this.getAccTitle=Vr;this.setDiagramTitle=Xr;this.getDiagramTitle=Wr;this.getAccDescription=Ur;this.setAccDescription=qr}static{o(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let e=gr,r=tr();return Qn({...e.treemap,...r.treemap??{}})}addNode(e,r){this.nodes.push(e),this.levels.set(e,r),r===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,r){let n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},i=r.replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");i&&i.forEach(a=>{Zx(a)&&(n?.textStyles?n.textStyles.push(a):n.textStyles=[a]),n?.styles?n.styles.push(a):n.styles=[a]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){Mr(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}}});function tCe(t){if(!t.length)return[];let e=[],r=[];return t.forEach(n=>{let i={name:n.name,children:n.type==="Leaf"?void 0:[]};for(i.classSelector=n?.classSelector,n?.cssCompiledStyles&&(i.cssCompiledStyles=[n.cssCompiledStyles]),n.type==="Leaf"&&n.value!==void 0&&(i.value=n.value);r.length>0&&r[r.length-1].level>=n.level;)r.pop();if(r.length===0)e.push(i);else{let a=r[r.length-1].node;a.children?a.children.push(i):a.children=[i]}n.type!=="Leaf"&&r.push({node:i,level:n.level})}),e}var rCe=I(()=>{"use strict";o(tCe,"buildHierarchy")});var Wft,Hft,kW,nCe=I(()=>{"use strict";sp();gt();$m();rCe();wW();Wft=o((t,e)=>{Pl(t,e);let r=[];for(let a of t.TreemapRows??[])a.$type==="ClassDefStatement"&&e.addClass(a.className??"",a.styleText??"");for(let a of t.TreemapRows??[]){let s=a.item;if(!s)continue;let l=a.indent?parseInt(a.indent):0,u=Hft(s),h=s.classSelector?e.getStylesForClass(s.classSelector):[],f=h.length>0?h.join(";"):void 0,d={level:l,name:u,type:s.$type,value:s.value,classSelector:s.classSelector,cssCompiledStyles:f};r.push(d)}let n=tCe(r),i=o((a,s)=>{for(let l of a)e.addNode(l,s),l.children&&l.children.length>0&&i(l.children,s+1)},"addNodesRecursively");i(n,0)},"populate"),Hft=o(t=>t.name?String(t.name):"","getItemName"),kW={parser:{yy:void 0},parse:o(async t=>{try{let r=await Vs("treemap",t);X.debug("Treemap AST:",r);let n=kW.parser?.yy;if(!(n instanceof Uv))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Wft(r,n)}catch(e){throw X.error("Error parsing treemap:",e),e}},"parse")}});var Yft,Wv,T3,jft,Xft,iCe,aCe=I(()=>{"use strict";Uu();Ad();Fi();kr();Vt();ti();gt();Yft=10,Wv=10,T3=25,jft=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),s=a.padding??Yft,l=i.getDiagramTitle(),u=i.getRoot(),{themeVariables:h}=tr();if(!u)return;let f=l?30:0,d=Ca(e),p=a.nodeWidth?a.nodeWidth*Wv:960,m=a.nodeHeight?a.nodeHeight*Wv:500,g=p,y=m+f;d.attr("viewBox",`0 0 ${g} ${y}`),Sn(d,y,g,a.useMaxWidth);let v;try{let _=a.valueFormat||",";if(_==="$0,0")v=o(N=>"$"+Yc(",")(N),"valueFormat");else if(_.startsWith("$")&&_.includes(",")){let N=/\.\d+/.exec(_),M=N?N[0]:"";v=o(P=>"$"+Yc(","+M)(P),"valueFormat")}else if(_.startsWith("$")){let N=_.substring(1);v=o(M=>"$"+Yc(N||"")(M),"valueFormat")}else v=Yc(_)}catch(_){X.error("Error creating format function:",_),v=Yc(",")}let x=Lo().range(["transparent",h.cScale0,h.cScale1,h.cScale2,h.cScale3,h.cScale4,h.cScale5,h.cScale6,h.cScale7,h.cScale8,h.cScale9,h.cScale10,h.cScale11]),b=Lo().range(["transparent",h.cScalePeer0,h.cScalePeer1,h.cScalePeer2,h.cScalePeer3,h.cScalePeer4,h.cScalePeer5,h.cScalePeer6,h.cScalePeer7,h.cScalePeer8,h.cScalePeer9,h.cScalePeer10,h.cScalePeer11]),T=Lo().range([h.cScaleLabel0,h.cScaleLabel1,h.cScaleLabel2,h.cScaleLabel3,h.cScaleLabel4,h.cScaleLabel5,h.cScaleLabel6,h.cScaleLabel7,h.cScaleLabel8,h.cScaleLabel9,h.cScaleLabel10,h.cScaleLabel11]);l&&d.append("text").attr("x",g/2).attr("y",f/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(l);let E=d.append("g").attr("transform",`translate(0, ${f})`).attr("class","treemapContainer"),w=Cg(u).sum(_=>_.value??0).sort((_,N)=>(N.value??0)-(_.value??0)),C=m5().size([p,m]).paddingTop(_=>_.children&&_.children.length>0?T3+Wv:0).paddingInner(s).paddingLeft(_=>_.children&&_.children.length>0?Wv:0).paddingRight(_=>_.children&&_.children.length>0?Wv:0).paddingBottom(_=>_.children&&_.children.length>0?Wv:0).round(!0)(w),D=C.descendants().filter(_=>_.children&&_.children.length>0),R=E.selectAll(".treemapSection").data(D).enter().append("g").attr("class","treemapSection").attr("transform",_=>`translate(${_.x0},${_.y0})`);R.append("rect").attr("width",_=>_.x1-_.x0).attr("height",T3).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",_=>_.depth===0?"display: none;":""),R.append("clipPath").attr("id",(_,N)=>`clip-section-${e}-${N}`).append("rect").attr("width",_=>Math.max(0,_.x1-_.x0-12)).attr("height",T3),R.append("rect").attr("width",_=>_.x1-_.x0).attr("height",_=>_.y1-_.y0).attr("class",(_,N)=>`treemapSection section${N}`).attr("fill",_=>x(_.data.name)).attr("fill-opacity",.6).attr("stroke",_=>b(_.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",_=>{if(_.depth===0)return"display: none;";let N=Qe({cssCompiledStyles:_.data.cssCompiledStyles});return N.nodeStyles+";"+N.borderStyles.join(";")}),R.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",T3/2).attr("dominant-baseline","middle").text(_=>_.depth===0?"":_.data.name).attr("font-weight","bold").attr("style",_=>{if(_.depth===0)return"display: none;";let N="dominant-baseline: middle; font-size: 12px; fill:"+T(_.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",M=Qe({cssCompiledStyles:_.data.cssCompiledStyles});return N+M.labelStyles.replace("color:","fill:")}).each(function(_){if(_.depth===0)return;let N=He(this),M=_.data.name;N.text(M);let P=_.x1-_.x0,B=6,F;a.showValues!==!1&&_.value?F=P-10-30-10-B:F=P-B-6;let $=Math.max(15,F),V=N.node();if(V.getComputedTextLength()>$){let H=M;for(;H.length>0;){if(H=M.substring(0,H.length-1),H.length===0){N.text("..."),V.getComputedTextLength()>$&&N.text("");break}if(N.text(H+"..."),V.getComputedTextLength()<=$)break}}}),a.showValues!==!1&&R.append("text").attr("class","treemapSectionValue").attr("x",_=>_.x1-_.x0-10).attr("y",T3/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(_=>_.value?v(_.value):"").attr("font-style","italic").attr("style",_=>{if(_.depth===0)return"display: none;";let N="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+T(_.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",M=Qe({cssCompiledStyles:_.data.cssCompiledStyles});return N+M.labelStyles.replace("color:","fill:")});let O=C.leaves(),L=E.selectAll(".treemapLeafGroup").data(O).enter().append("g").attr("class",(_,N)=>`treemapNode treemapLeafGroup leaf${N}${_.data.classSelector?` ${_.data.classSelector}`:""}x`).attr("transform",_=>`translate(${_.x0},${_.y0})`);L.append("rect").attr("width",_=>_.x1-_.x0).attr("height",_=>_.y1-_.y0).attr("class","treemapLeaf").attr("fill",_=>_.parent?x(_.parent.data.name):x(_.data.name)).attr("style",_=>Qe({cssCompiledStyles:_.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",_=>_.parent?x(_.parent.data.name):x(_.data.name)).attr("stroke-width",3),L.append("clipPath").attr("id",(_,N)=>`clip-${e}-${N}`).append("rect").attr("width",_=>Math.max(0,_.x1-_.x0-4)).attr("height",_=>Math.max(0,_.y1-_.y0-4)),L.append("text").attr("class","treemapLabel").attr("x",_=>(_.x1-_.x0)/2).attr("y",_=>(_.y1-_.y0)/2).attr("style",_=>{let N="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+T(_.data.name)+";",M=Qe({cssCompiledStyles:_.data.cssCompiledStyles});return N+M.labelStyles.replace("color:","fill:")}).attr("clip-path",(_,N)=>`url(#clip-${e}-${N})`).text(_=>_.data.name).each(function(_){let N=He(this),M=_.x1-_.x0,P=_.y1-_.y0,B=N.node(),F=4,G=M-2*F,$=P-2*F;if(G<10||$<10){N.style("display","none");return}let V=parseInt(N.style("font-size"),10),K=8,ee=28,H=.6,he=6,Z=2;for(;B.getComputedTextLength()>G&&V>K;)V--,N.style("font-size",`${V}px`);let de=Math.max(he,Math.min(ee,Math.round(V*H))),re=V+Z+de;for(;re>$&&V>K&&(V--,de=Math.max(he,Math.min(ee,Math.round(V*H))),!(de$;N.style("font-size",`${V}px`),(B.getComputedTextLength()>G||V(N.x1-N.x0)/2).attr("y",function(N){return(N.y1-N.y0)/2}).attr("style",N=>{let M="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+T(N.data.name)+";",P=Qe({cssCompiledStyles:N.data.cssCompiledStyles});return M+P.labelStyles.replace("color:","fill:")}).attr("clip-path",(N,M)=>`url(#clip-${e}-${M})`).text(N=>N.value?v(N.value):"").each(function(N){let M=He(this),P=this.parentNode;if(!P){M.style("display","none");return}let B=He(P).select(".treemapLabel");if(B.empty()||B.style("display")==="none"){M.style("display","none");return}let F=parseFloat(B.style("font-size")),G=28,$=.6,V=6,K=2,ee=Math.max(V,Math.min(G,Math.round(F*$)));M.style("font-size",`${ee}px`);let he=(N.y1-N.y0)/2+F/2+K;M.attr("y",he);let Z=N.x1-N.x0,ne=N.y1-N.y0-4,te=Z-8;M.node().getComputedTextLength()>te||he+ee>ne||ee{"use strict";sr();Kft={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},Qft=o(({treemap:t}={})=>{let e=Qn(Kft,t);return` .treemapNode.section { stroke: ${e.sectionStrokeColor}; stroke-width: ${e.sectionStrokeWidth}; @@ -2759,16 +2791,16 @@ Expecting `+de.join(", ")+", got '"+(this.terminals_[q]||q)+"'":ne="Parse error fill: ${e.titleColor}; font-size: ${e.titleFontSize}; } - `},"getStyles"),e3e=Jit});var r3e={};dr(r3e,{diagram:()=>eat});var eat,n3e=M(()=>{"use strict";Fz();Q4e();J4e();t3e();eat={parser:$z,get db(){return new Ty},renderer:Z4e,styles:e3e}});var zat={};dr(zat,{default:()=>$at});nc();_A();vd();var z_e=o(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),G_e=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(OQ(),IQ));return{id:"c4",diagram:t}},"loader"),V_e={id:"c4",detector:z_e,loader:G_e},PQ=V_e;var bfe="flowchart",oWe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),lWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(_E(),AE));return{id:bfe,diagram:t}},"loader"),cWe={id:bfe,detector:oWe,loader:lWe},Tfe=cWe;var wfe="flowchart-v2",uWe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-d3"?!1:(e?.flowchart?.defaultRenderer==="elk"&&(e.layout="elk"),/^\s*graph/.test(t)&&e?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)),"detector"),hWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(_E(),AE));return{id:wfe,diagram:t}},"loader"),fWe={id:wfe,detector:uWe,loader:hWe},kfe=fWe;var yWe=o(t=>/^\s*erDiagram/.test(t),"detector"),vWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Rfe(),Lfe));return{id:"er",diagram:t}},"loader"),xWe={id:"er",detector:yWe,loader:vWe},Nfe=xWe;var $ge="gitGraph",jKe=o(t=>/^\s*gitGraph/.test(t),"detector"),KKe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Fge(),Bge));return{id:$ge,diagram:t}},"loader"),QKe={id:$ge,detector:jKe,loader:KKe},zge=QKe;var v1e="gantt",FQe=o(t=>/^\s*gantt/.test(t),"detector"),$Qe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(y1e(),g1e));return{id:v1e,diagram:t}},"loader"),zQe={id:v1e,detector:FQe,loader:$Qe},x1e=zQe;var _1e="info",WQe=o(t=>/^\s*info/.test(t),"detector"),YQe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(A1e(),C1e));return{id:_1e,diagram:t}},"loader"),D1e={id:_1e,detector:WQe,loader:YQe};var sZe=o(t=>/^\s*pie/.test(t),"detector"),oZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(F1e(),B1e));return{id:"pie",diagram:t}},"loader"),$1e={id:"pie",detector:sZe,loader:oZe};var Z1e="quadrantChart",SZe=o(t=>/^\s*quadrantChart/.test(t),"detector"),CZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Q1e(),K1e));return{id:Z1e,diagram:t}},"loader"),AZe={id:Z1e,detector:SZe,loader:CZe},J1e=AZe;var Cye="xychart",HZe=o(t=>/^\s*xychart(-beta)?/.test(t),"detector"),qZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Sye(),Eye));return{id:Cye,diagram:t}},"loader"),WZe={id:Cye,detector:HZe,loader:qZe},Aye=WZe;var Pye="requirement",KZe=o(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),QZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Oye(),Iye));return{id:Pye,diagram:t}},"loader"),ZZe={id:Pye,detector:KZe,loader:QZe},Bye=ZZe;var Jye="sequence",$Je=o(t=>/^\s*sequenceDiagram/.test(t),"detector"),zJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Zye(),Qye));return{id:Jye,diagram:t}},"loader"),GJe={id:Jye,detector:$Je,loader:zJe},eve=GJe;var sve="class",YJe=o((t,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),XJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ave(),ive));return{id:sve,diagram:t}},"loader"),jJe={id:sve,detector:YJe,loader:XJe},ove=jJe;var uve="classDiagram",QJe=o((t,e)=>/^\s*classDiagram/.test(t)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),ZJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(cve(),lve));return{id:uve,diagram:t}},"loader"),JJe={id:uve,detector:QJe,loader:ZJe},hve=JJe;var Uve="state",Aet=o((t,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),_et=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Vve(),Gve));return{id:Uve,diagram:t}},"loader"),Det={id:Uve,detector:Aet,loader:_et},Hve=Det;var Yve="stateDiagram",Ret=o((t,e)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),Net=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Wve(),qve));return{id:Yve,diagram:t}},"loader"),Met={id:Yve,detector:Ret,loader:Net},Xve=Met;var u2e="journey",ett=o(t=>/^\s*journey/.test(t),"detector"),ttt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(c2e(),l2e));return{id:u2e,diagram:t}},"loader"),rtt={id:u2e,detector:ett,loader:ttt},h2e=rtt;pt();tu();Ei();var ntt=o((t,e,r)=>{X.debug(`rendering svg for syntax error -`);let n=aa(e),i=n.append("g");n.attr("viewBox","0 0 2412 512"),mn(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),F$={draw:ntt},f2e=F$;var itt={db:{},renderer:F$,parser:{parse:o(()=>{},"parse")}},d2e=itt;var p2e="flowchart-elk",att=o((t,e={})=>/^\s*flowchart-elk/.test(t)||/^\s*(flowchart|graph)/.test(t)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),stt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(_E(),AE));return{id:p2e,diagram:t}},"loader"),ott={id:p2e,detector:att,loader:stt},m2e=ott;var G2e="timeline",Ctt=o(t=>/^\s*timeline/.test(t),"detector"),Att=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(z2e(),$2e));return{id:G2e,diagram:t}},"loader"),_tt={id:G2e,detector:Ctt,loader:Att},V2e=_tt;var ixe="mindmap",Ptt=o(t=>/^\s*mindmap/.test(t),"detector"),Btt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(nxe(),rxe));return{id:ixe,diagram:t}},"loader"),Ftt={id:ixe,detector:Ptt,loader:Btt},axe=Ftt;var yxe="kanban",ert=o(t=>/^\s*kanban/.test(t),"detector"),trt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(gxe(),mxe));return{id:yxe,diagram:t}},"loader"),rrt={id:yxe,detector:ert,loader:trt},vxe=rrt;var Jxe="sankey",Srt=o(t=>/^\s*sankey(-beta)?/.test(t),"detector"),Crt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Zxe(),Qxe));return{id:Jxe,diagram:t}},"loader"),Art={id:Jxe,detector:Srt,loader:Crt},ebe=Art;var lbe="packet",Prt=o(t=>/^\s*packet(-beta)?/.test(t),"detector"),Brt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(obe(),sbe));return{id:lbe,diagram:t}},"loader"),cbe={id:lbe,detector:Prt,loader:Brt};var bbe="radar",ant=o(t=>/^\s*radar-beta/.test(t),"detector"),snt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(xbe(),vbe));return{id:bbe,diagram:t}},"loader"),Tbe={id:bbe,detector:ant,loader:snt};var E4e="block",Ait=o(t=>/^\s*block(-beta)?/.test(t),"detector"),_it=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(k4e(),w4e));return{id:E4e,diagram:t}},"loader"),Dit={id:E4e,detector:Ait,loader:_it},S4e=Dit;var Y4e="architecture",Hit=o(t=>/^\s*architecture/.test(t),"detector"),qit=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(W4e(),q4e));return{id:Y4e,diagram:t}},"loader"),Wit={id:Y4e,detector:Hit,loader:qit},X4e=Wit;vd();Xt();var i3e="treemap",tat=o(t=>/^\s*treemap/.test(t),"detector"),rat=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(n3e(),r3e));return{id:i3e,diagram:t}},"loader"),a3e={id:i3e,detector:tat,loader:rat};var s3e=!1,ky=o(()=>{s3e||(s3e=!0,xd("error",d2e,t=>t.toLowerCase().trim()==="error"),xd("---",{db:{clear:o(()=>{},"clear")},styles:{},renderer:{draw:o(()=>{},"draw")},parser:{parse:o(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:o(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),tv(m2e,axe,X4e),tv(PQ,vxe,hve,ove,Nfe,x1e,D1e,$1e,Bye,eve,kfe,Tfe,V2e,zge,Xve,Hve,h2e,J1e,ebe,cbe,Aye,S4e,Tbe,a3e))},"addDiagrams");pt();vd();Xt();var o3e=o(async()=>{X.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(gu).map(async([r,{detector:n,loader:i}])=>{if(i)try{sv(r)}catch{try{let{diagram:a,id:s}=await i();xd(s,a,n)}catch(a){throw X.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete gu[r],a}}}))).filter(r=>r.status==="rejected");if(e.length>0){X.error(`Failed to load ${e.length} external diagrams`);for(let r of e)X.error(r);throw new Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");pt();yr();var BC="comm",FC="rule",$C="decl";var l3e="@import";var c3e="@namespace",u3e="@keyframes";var h3e="@layer";var zz=Math.abs,z4=String.fromCharCode;function zC(t){return t.trim()}o(zC,"trim");function G4(t,e,r){return t.replace(e,r)}o(G4,"replace");function f3e(t,e,r){return t.indexOf(e,r)}o(f3e,"indexof");function rd(t,e){return t.charCodeAt(e)|0}o(rd,"charat");function nd(t,e,r){return t.slice(e,r)}o(nd,"substr");function wo(t){return t.length}o(wo,"strlen");function d3e(t){return t.length}o(d3e,"sizeof");function Ey(t,e){return e.push(t),t}o(Ey,"append");var GC=1,Sy=1,p3e=0,ll=0,Ri=0,Ay="";function VC(t,e,r,n,i,a,s,l){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:GC,column:Sy,length:s,return:"",siblings:l}}o(VC,"node");function m3e(){return Ri}o(m3e,"char");function g3e(){return Ri=ll>0?rd(Ay,--ll):0,Sy--,Ri===10&&(Sy=1,GC--),Ri}o(g3e,"prev");function cl(){return Ri=ll2||Cy(Ri)>3?"":" "}o(x3e,"whitespace");function b3e(t,e){for(;--e&&cl()&&!(Ri<48||Ri>102||Ri>57&&Ri<65||Ri>70&&Ri<97););return UC(t,V4()+(e<6&&uh()==32&&cl()==32))}o(b3e,"escaping");function Gz(t){for(;cl();)switch(Ri){case t:return ll;case 34:case 39:t!==34&&t!==39&&Gz(Ri);break;case 40:t===41&&Gz(t);break;case 92:cl();break}return ll}o(Gz,"delimiter");function T3e(t,e){for(;cl()&&t+Ri!==57;)if(t+Ri===84&&uh()===47)break;return"/*"+UC(e,ll-1)+"*"+z4(t===47?t:cl())}o(T3e,"commenter");function w3e(t){for(;!Cy(uh());)cl();return UC(t,ll)}o(w3e,"identifier");function S3e(t){return v3e(qC("",null,null,null,[""],t=y3e(t),0,[0],t))}o(S3e,"compile");function qC(t,e,r,n,i,a,s,l,u){for(var h=0,f=0,d=s,p=0,m=0,g=0,y=1,v=1,x=1,b=0,T="",S=i,w=a,k=n,C=T;v;)switch(g=b,b=cl()){case 40:if(g!=108&&rd(C,d-1)==58){f3e(C+=G4(HC(b),"&","&\f"),"&\f",zz(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:C+=HC(b);break;case 9:case 10:case 13:case 32:C+=x3e(g);break;case 92:C+=b3e(V4()-1,7);continue;case 47:switch(uh()){case 42:case 47:Ey(nat(T3e(cl(),V4()),e,r,u),u),(Cy(g||1)==5||Cy(uh()||1)==5)&&wo(C)&&nd(C,-1,void 0)!==" "&&(C+=" ");break;default:C+="/"}break;case 123*y:l[h++]=wo(C)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(C=G4(C,/\f/g,"")),m>0&&(wo(C)-d||y===0&&g===47)&&Ey(m>32?E3e(C+";",n,r,d-1,u):E3e(G4(C," ","")+";",n,r,d-2,u),u);break;case 59:C+=";";default:if(Ey(k=k3e(C,e,r,h,f,i,l,T,S=[],w=[],d,a),a),b===123)if(f===0)qC(C,e,k,k,S,a,d,l,w);else{switch(p){case 99:if(rd(C,3)===110)break;case 108:if(rd(C,2)===97)break;default:f=0;case 100:case 109:case 115:}f?qC(t,k,k,n&&Ey(k3e(t,k,k,0,0,i,l,T,i,S=[],d,w),w),i,w,d,l,n?S:w):qC(C,k,k,k,[""],w,0,l,w)}}h=f=m=0,y=x=1,T=C="",d=s;break;case 58:d=1+wo(C),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&g3e()==125)continue}switch(C+=z4(b),b*y){case 38:x=f>0?1:(C+="\f",-1);break;case 44:l[h++]=(wo(C)-1)*x,x=1;break;case 64:uh()===45&&(C+=HC(cl())),p=uh(),f=d=wo(T=C+=w3e(V4())),b++;break;case 45:g===45&&wo(C)==2&&(y=0)}}return a}o(qC,"parse");function k3e(t,e,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=d3e(m),y=0,v=0,x=0;y0?m[b]+" "+T:G4(T,/&\f/g,m[b])))&&(u[x++]=S);return VC(t,e,r,i===0?FC:l,u,h,f,d)}o(k3e,"ruleset");function nat(t,e,r,n){return VC(t,e,r,BC,z4(m3e()),nd(t,2,-2),0,n)}o(nat,"comment");function E3e(t,e,r,n,i){return VC(t,e,r,$C,nd(t,0,n),nd(t,n+1,-1),n,i)}o(E3e,"declaration");function WC(t,e){for(var r="",n=0;n{D3e.forEach(t=>{t()}),D3e=[]},"attachFunctions");pt();var R3e=o(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");$3();k2();function N3e(t){let e=t.match(F3);if(!e)return{text:t,metadata:{}};let r=Kh(e[1],{schema:jh})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};let n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:t.slice(e[0].length),metadata:n}}o(N3e,"extractFrontMatter");tr();var aat=o(t=>t.replace(/\r\n?/g,` -`).replace(/<(\w+)([^>]*)>/g,(e,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),sat=o(t=>{let{text:e,metadata:r}=N3e(t),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:e}},"processFrontmatter"),oat=o(t=>{let e=qt.detectInit(t)??{},r=qt.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(e.wrap=!0),{text:kQ(t),directive:e}},"processDirectives");function Vz(t){let e=aat(t),r=sat(e),n=oat(r.text),i=Vn(r.config,n.directive);return t=R3e(n.text),{code:t,title:r.title,config:i}}o(Vz,"preprocessDiagram");NA();t3();tr();function M3e(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(M3e,"toBase64");var lat=5e4,cat="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",uat="sandbox",hat="loose",fat="http://www.w3.org/2000/svg",dat="http://www.w3.org/1999/xlink",pat="http://www.w3.org/1999/xhtml",mat="100%",gat="100%",yat="border:0;margin:0;",vat="margin:0",xat="allow-top-navigation-by-user-activation allow-popups",bat='The "iframe" tag is not supported by your browser.',Tat=["foreignobject"],wat=["dominant-baseline"];function B3e(t){let e=Vz(t);return Fy(),tV(e.config??{}),e}o(B3e,"processAndSetConfigs");async function kat(t,e){ky();try{let{code:r,config:n}=B3e(t);return{diagramType:(await F3e(r)).type,config:n}}catch(r){if(e?.suppressErrors)return!1;throw r}}o(kat,"parse");var I3e=o((t,e,r=[])=>` -.${t} ${e} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),Eat=o((t,e=new Map)=>{let r="";if(t.themeCSS!==void 0&&(r+=` + `},"getStyles"),sCe=Qft});var lCe={};vr(lCe,{diagram:()=>Zft});var Zft,cCe=I(()=>{"use strict";wW();nCe();aCe();oCe();Zft={parser:kW,get db(){return new Uv},renderer:iCe,styles:sCe}});var Fdt={};vr(Fdt,{default:()=>Bdt});Gc();nD();Op();var WIe=o(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),HIe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(xre(),vre));return{id:"c4",diagram:t}},"loader"),YIe={id:"c4",detector:WIe,loader:HIe},bre=YIe;var ige="flowchart",fJe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),dJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hC(),uC));return{id:ige,diagram:t}},"loader"),pJe={id:ige,detector:fJe,loader:dJe},age=pJe;var sge="flowchart-v2",mJe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-d3"?!1:(e?.flowchart?.defaultRenderer==="elk"&&(e.layout="elk"),/^\s*graph/.test(t)&&e?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)),"detector"),gJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hC(),uC));return{id:sge,diagram:t}},"loader"),yJe={id:sge,detector:mJe,loader:gJe},oge=yJe;var wJe=o(t=>/^\s*erDiagram/.test(t),"detector"),kJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(mge(),pge));return{id:"er",diagram:t}},"loader"),SJe={id:"er",detector:wJe,loader:kJe},gge=SJe;var W4e="gitGraph",Xit=o(t=>/^\s*gitGraph/.test(t),"detector"),Kit=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(U4e(),q4e));return{id:W4e,diagram:t}},"loader"),Qit={id:W4e,detector:Xit,loader:Kit},H4e=Qit;var STe="gantt",Fat=o(t=>/^\s*gantt/.test(t),"detector"),$at=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(kTe(),wTe));return{id:STe,diagram:t}},"loader"),zat={id:STe,detector:Fat,loader:$at},ETe=zat;var ITe="info",Hat=o(t=>/^\s*info/.test(t),"detector"),Yat=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(MTe(),NTe));return{id:ITe,diagram:t}},"loader"),OTe={id:ITe,detector:Hat,loader:Yat};var sst=o(t=>/^\s*pie/.test(t),"detector"),ost=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(UTe(),qTe));return{id:"pie",diagram:t}},"loader"),WTe={id:"pie",detector:sst,loader:ost};var i3e="quadrantChart",Est=o(t=>/^\s*quadrantChart/.test(t),"detector"),Cst=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(n3e(),r3e));return{id:i3e,diagram:t}},"loader"),Ast={id:i3e,detector:Est,loader:Cst},a3e=Ast;var N3e="xychart",Ust=o(t=>/^\s*xychart(-beta)?/.test(t),"detector"),Wst=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(L3e(),R3e));return{id:N3e,diagram:t}},"loader"),Hst={id:N3e,detector:Ust,loader:Wst},M3e=Hst;var V3e="requirement",Kst=o(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),Qst=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(G3e(),z3e));return{id:V3e,diagram:t}},"loader"),Zst={id:V3e,detector:Kst,loader:Qst},q3e=Zst;var awe="sequence",$ot=o(t=>/^\s*sequenceDiagram/.test(t),"detector"),zot=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(iwe(),nwe));return{id:awe,diagram:t}},"loader"),Got={id:awe,detector:$ot,loader:zot},swe=Got;var fwe="class",Yot=o((t,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),jot=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hwe(),uwe));return{id:fwe,diagram:t}},"loader"),Xot={id:fwe,detector:Yot,loader:jot},dwe=Xot;var gwe="classDiagram",Qot=o((t,e)=>/^\s*classDiagram/.test(t)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),Zot=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(mwe(),pwe));return{id:gwe,diagram:t}},"loader"),Jot={id:gwe,detector:Qot,loader:Zot},ywe=Jot;var Xwe="state",Elt=o((t,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),Clt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(jwe(),Ywe));return{id:Xwe,diagram:t}},"loader"),Alt={id:Xwe,detector:Elt,loader:Clt},Kwe=Alt;var Jwe="stateDiagram",Dlt=o((t,e)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),Rlt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Zwe(),Qwe));return{id:Jwe,diagram:t}},"loader"),Llt={id:Jwe,detector:Dlt,loader:Rlt},e5e=Llt;var g5e="journey",Zlt=o(t=>/^\s*journey/.test(t),"detector"),Jlt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(m5e(),p5e));return{id:g5e,diagram:t}},"loader"),ect={id:g5e,detector:Zlt,loader:Jlt},y5e=ect;gt();Uu();Fi();var tct=o((t,e,r)=>{X.debug(`rendering svg for syntax error +`);let n=Ca(e),i=n.append("g");n.attr("viewBox","0 0 2412 512"),Sn(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),wU={draw:tct},v5e=wU;var rct={db:{},renderer:wU,parser:{parse:o(()=>{},"parse")}},x5e=rct;var b5e="flowchart-elk",nct=o((t,e={})=>/^\s*flowchart-elk/.test(t)||/^\s*(flowchart|graph)/.test(t)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),ict=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hC(),uC));return{id:b5e,diagram:t}},"loader"),act={id:b5e,detector:nct,loader:ict},T5e=act;var Y5e="timeline",Sct=o(t=>/^\s*timeline/.test(t),"detector"),Ect=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(H5e(),W5e));return{id:Y5e,diagram:t}},"loader"),Cct={id:Y5e,detector:Sct,loader:Ect},j5e=Cct;var uke="mindmap",Ict=o(t=>/^\s*mindmap/.test(t),"detector"),Oct=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(cke(),lke));return{id:uke,diagram:t}},"loader"),Pct={id:uke,detector:Ict,loader:Oct},hke=Pct;var kke="kanban",Zct=o(t=>/^\s*kanban/.test(t),"detector"),Jct=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(wke(),Tke));return{id:kke,diagram:t}},"loader"),eut={id:kke,detector:Zct,loader:Jct},Ske=eut;var aSe="sankey",kut=o(t=>/^\s*sankey(-beta)?/.test(t),"detector"),Sut=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(iSe(),nSe));return{id:aSe,diagram:t}},"loader"),Eut={id:aSe,detector:kut,loader:Sut},sSe=Eut;var pSe="packet",Iut=o(t=>/^\s*packet(-beta)?/.test(t),"detector"),Out=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(dSe(),fSe));return{id:pSe,diagram:t}},"loader"),mSe={id:pSe,detector:Iut,loader:Out};var CSe="radar",nht=o(t=>/^\s*radar-beta/.test(t),"detector"),iht=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ESe(),SSe));return{id:CSe,diagram:t}},"loader"),ASe={id:CSe,detector:nht,loader:iht};var REe="block",Eft=o(t=>/^\s*block(-beta)?/.test(t),"detector"),Cft=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(DEe(),_Ee));return{id:REe,diagram:t}},"loader"),Aft={id:REe,detector:Eft,loader:Cft},LEe=Aft;var JEe="architecture",Vft=o(t=>/^\s*architecture/.test(t),"detector"),qft=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ZEe(),QEe));return{id:JEe,diagram:t}},"loader"),Uft={id:JEe,detector:Vft,loader:qft},eCe=Uft;Op();Qt();var uCe="treemap",Jft=o(t=>/^\s*treemap/.test(t),"detector"),edt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(cCe(),lCe));return{id:uCe,diagram:t}},"loader"),hCe={id:uCe,detector:Jft,loader:edt};var fCe=!1,Hv=o(()=>{fCe||(fCe=!0,Pp("error",x5e,t=>t.toLowerCase().trim()==="error"),Pp("---",{db:{clear:o(()=>{},"clear")},styles:{},renderer:{draw:o(()=>{},"draw")},parser:{parse:o(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:o(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),S2(T5e,hke,eCe),S2(bre,Ske,ywe,dwe,gge,ETe,OTe,WTe,q3e,swe,oge,age,j5e,H4e,e5e,Kwe,y5e,a3e,sSe,mSe,M3e,LEe,ASe,hCe))},"addDiagrams");gt();Op();Qt();var dCe=o(async()=>{X.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(ah).map(async([r,{detector:n,loader:i}])=>{if(i)try{D2(r)}catch{try{let{diagram:a,id:s}=await i();Pp(s,a,n)}catch(a){throw X.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete ah[r],a}}}))).filter(r=>r.status==="rejected");if(e.length>0){X.error(`Failed to load ${e.length} external diagrams`);for(let r of e)X.error(r);throw new Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");gt();kr();var f8="comm",d8="rule",p8="decl";var pCe="@import";var mCe="@namespace",gCe="@keyframes";var yCe="@layer";var SW=Math.abs,w3=String.fromCharCode;function m8(t){return t.trim()}o(m8,"trim");function k3(t,e,r){return t.replace(e,r)}o(k3,"replace");function vCe(t,e,r){return t.indexOf(e,r)}o(vCe,"indexof");function xp(t,e){return t.charCodeAt(e)|0}o(xp,"charat");function bp(t,e,r){return t.slice(e,r)}o(bp,"substr");function Jo(t){return t.length}o(Jo,"strlen");function xCe(t){return t.length}o(xCe,"sizeof");function Yv(t,e){return e.push(t),t}o(Yv,"append");var g8=1,jv=1,bCe=0,Gl=0,Hi=0,Kv="";function y8(t,e,r,n,i,a,s,l){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:g8,column:jv,length:s,return:"",siblings:l}}o(y8,"node");function TCe(){return Hi}o(TCe,"char");function wCe(){return Hi=Gl>0?xp(Kv,--Gl):0,jv--,Hi===10&&(jv=1,g8--),Hi}o(wCe,"prev");function Vl(){return Hi=Gl2||Xv(Hi)>3?"":" "}o(ECe,"whitespace");function CCe(t,e){for(;--e&&Vl()&&!(Hi<48||Hi>102||Hi>57&&Hi<65||Hi>70&&Hi<97););return v8(t,S3()+(e<6&&af()==32&&Vl()==32))}o(CCe,"escaping");function EW(t){for(;Vl();)switch(Hi){case t:return Gl;case 34:case 39:t!==34&&t!==39&&EW(Hi);break;case 40:t===41&&EW(t);break;case 92:Vl();break}return Gl}o(EW,"delimiter");function ACe(t,e){for(;Vl()&&t+Hi!==57;)if(t+Hi===84&&af()===47)break;return"/*"+v8(e,Gl-1)+"*"+w3(t===47?t:Vl())}o(ACe,"commenter");function _Ce(t){for(;!Xv(af());)Vl();return v8(t,Gl)}o(_Ce,"identifier");function LCe(t){return SCe(b8("",null,null,null,[""],t=kCe(t),0,[0],t))}o(LCe,"compile");function b8(t,e,r,n,i,a,s,l,u){for(var h=0,f=0,d=s,p=0,m=0,g=0,y=1,v=1,x=1,b=0,T="",E=i,w=a,k=n,C=T;v;)switch(g=b,b=Vl()){case 40:if(g!=108&&xp(C,d-1)==58){vCe(C+=k3(x8(b),"&","&\f"),"&\f",SW(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:C+=x8(b);break;case 9:case 10:case 13:case 32:C+=ECe(g);break;case 92:C+=CCe(S3()-1,7);continue;case 47:switch(af()){case 42:case 47:Yv(tdt(ACe(Vl(),S3()),e,r,u),u),(Xv(g||1)==5||Xv(af()||1)==5)&&Jo(C)&&bp(C,-1,void 0)!==" "&&(C+=" ");break;default:C+="/"}break;case 123*y:l[h++]=Jo(C)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(C=k3(C,/\f/g,"")),m>0&&(Jo(C)-d||y===0&&g===47)&&Yv(m>32?RCe(C+";",n,r,d-1,u):RCe(k3(C," ","")+";",n,r,d-2,u),u);break;case 59:C+=";";default:if(Yv(k=DCe(C,e,r,h,f,i,l,T,E=[],w=[],d,a),a),b===123)if(f===0)b8(C,e,k,k,E,a,d,l,w);else{switch(p){case 99:if(xp(C,3)===110)break;case 108:if(xp(C,2)===97)break;default:f=0;case 100:case 109:case 115:}f?b8(t,k,k,n&&Yv(DCe(t,k,k,0,0,i,l,T,i,E=[],d,w),w),i,w,d,l,n?E:w):b8(C,k,k,k,[""],w,0,l,w)}}h=f=m=0,y=x=1,T=C="",d=s;break;case 58:d=1+Jo(C),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&wCe()==125)continue}switch(C+=w3(b),b*y){case 38:x=f>0?1:(C+="\f",-1);break;case 44:l[h++]=(Jo(C)-1)*x,x=1;break;case 64:af()===45&&(C+=x8(Vl())),p=af(),f=d=Jo(T=C+=_Ce(S3())),b++;break;case 45:g===45&&Jo(C)==2&&(y=0)}}return a}o(b8,"parse");function DCe(t,e,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=xCe(m),y=0,v=0,x=0;y0?m[b]+" "+T:k3(T,/&\f/g,m[b])))&&(u[x++]=E);return y8(t,e,r,i===0?d8:l,u,h,f,d)}o(DCe,"ruleset");function tdt(t,e,r,n){return y8(t,e,r,f8,w3(TCe()),bp(t,2,-2),0,n)}o(tdt,"comment");function RCe(t,e,r,n,i){return y8(t,e,r,p8,bp(t,0,n),bp(t,n+1,-1),n,i)}o(RCe,"declaration");function T8(t,e){for(var r="",n=0;n{OCe.forEach(t=>{t()}),OCe=[]},"attachFunctions");gt();var BCe=o(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");ww();Hx();function FCe(t){let e=t.match(Tw);if(!e)return{text:t,metadata:{}};let r=Wf(e[1],{schema:Uf})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};let n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:t.slice(e[0].length),metadata:n}}o(FCe,"extractFrontMatter");sr();var ndt=o(t=>t.replace(/\r\n?/g,` +`).replace(/<(\w+)([^>]*)>/g,(e,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),idt=o(t=>{let{text:e,metadata:r}=FCe(t),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:e}},"processFrontmatter"),adt=o(t=>{let e=jt.detectInit(t)??{},r=jt.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(e.wrap=!0),{text:ore(t),directive:e}},"processDirectives");function CW(t){let e=ndt(t),r=idt(e),n=adt(r.text),i=Qn(r.config,n.directive);return t=BCe(n.text),{code:t,title:r.title,config:i}}o(CW,"preprocessDiagram");oD();F3();sr();function $Ce(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCodePoint(n)).join("");return btoa(r)}o($Ce,"toBase64");var sdt=5e4,odt="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",ldt="sandbox",cdt="loose",udt="http://www.w3.org/2000/svg",hdt="http://www.w3.org/1999/xlink",fdt="http://www.w3.org/1999/xhtml",ddt="100%",pdt="100%",mdt="border:0;margin:0;",gdt="margin:0",ydt="allow-top-navigation-by-user-activation allow-popups",vdt='The "iframe" tag is not supported by your browser.',xdt=["foreignobject"],bdt=["dominant-baseline"];function qCe(t){let e=CW(t);return o2(),$H(e.config??{}),e}o(qCe,"processAndSetConfigs");async function Tdt(t,e){Hv();try{let{code:r,config:n}=qCe(t);return{diagramType:(await UCe(r)).type,config:n}}catch(r){if(e?.suppressErrors)return!1;throw r}}o(Tdt,"parse");var zCe=o((t,e,r=[])=>` +.${t} ${e} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),wdt=o((t,e=new Map)=>{let r="";if(t.themeCSS!==void 0&&(r+=` ${t.themeCSS}`),t.fontFamily!==void 0&&(r+=` :root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(r+=` -:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){let s=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(l=>{mr(l.styles)||s.forEach(u=>{r+=I3e(l.id,u,l.styles)}),mr(l.textStyles)||(r+=I3e(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),Sat=o((t,e,r,n)=>{let i=Eat(t,r),a=lH(e,i,t.themeVariables);return WC(S3e(`${n}{${a}}`),C3e)},"createUserStyles"),Cat=o((t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=Ji(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),Aat=o((t="",e)=>{let r=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":gat,n=M3e(`${t}`);return``},"putIntoIFrame"),O3e=o((t,e,r,n,i)=>{let a=t.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",e).attr("width","100%").attr("xmlns",fat);return i&&s.attr("xmlns:xlink",i),s.append("g"),t},"appendDivSvgG");function P3e(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(P3e,"sandboxedIframe");var _at=o((t,e,r,n)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(n)?.remove()},"removeExistingElements"),Dat=o(async function(t,e,r){ky();let n=B3e(e);e=n.code;let i=Qt();X.debug(i),e.length>(i?.maxTextSize??lat)&&(e=cat);let a="#"+t,s="i"+t,l="#"+s,u="d"+t,h="#"+u,f=o(()=>{let _=qe(p?l:h).node();_&&"remove"in _&&_.remove()},"removeTempElements"),d=qe("body"),p=i.securityLevel===uat,m=i.securityLevel===hat,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let E=P3e(qe(r),s);d=qe(E.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=qe(r);O3e(d,t,u,`font-family: ${g}`,dat)}else{if(_at(document,t,u,s),p){let E=P3e(qe("body"),s);d=qe(E.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=qe("body");O3e(d,t,u)}let y,v;try{y=await _y.fromText(e,{title:n.title})}catch(E){if(i.suppressErrorRendering)throw f(),E;y=await _y.fromText("error"),v=E}let x=d.select(h).node(),b=y.type,T=x.firstChild,S=T.firstChild,w=y.renderer.getClasses?.(e,y),k=Sat(i,b,w,a),C=document.createElement("style");C.innerHTML=k,T.insertBefore(C,S);try{await y.renderer.draw(e,t,y4.version,y)}catch(E){throw i.suppressErrorRendering?f():f2e.draw(e,t,y4.version),E}let A=d.select(`${h} svg`),L=y.db.getAccTitle?.(),I=y.db.getAccDescription?.();Rat(b,A,L,I),d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",pat);let R=d.select(h).node().innerHTML;if(X.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),R=Cat(R,p,vr(i.arrowMarkerAbsolute)),p){let E=d.select(h+" svg").node();R=Aat(R,E)}else m||(R=yh.sanitize(R,{ADD_TAGS:Tat,ADD_ATTR:wat,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(L3e(),v)throw v;return f(),{diagramType:b,svg:R,bindFunctions:y.db.bindFunctions}},"render");function Lat(t={}){let e=Rn({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),ZG(e),e?.theme&&e.theme in So?e.themeVariables=So[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=So.default.getThemeVariables(e.themeVariables));let r=typeof e=="object"?C7(e):A7();Ly(r.logLevel),ky()}o(Lat,"initialize");var F3e=o((t,e={})=>{let{code:r}=Vz(t);return _y.fromText(r,e)},"getDiagramFromText");function Rat(t,e,r,n){A3e(e,t),_3e(e,r,n,e.attr("id"))}o(Rat,"addA11yInfo");var id=Object.freeze({render:Dat,parse:kat,getDiagramFromText:F3e,initialize:Lat,getConfig:Qt,setConfig:i3,getSiteConfig:A7,updateSiteConfig:JG,reset:o(()=>{Fy()},"reset"),globalReset:o(()=>{Fy(gh)},"globalReset"),defaultConfig:gh});Ly(Qt().logLevel);Fy(Qt());Nf();tr();var Nat=o((t,e,r)=>{X.warn(t),qL(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},"handleError"),$3e=o(async function(t={querySelector:".mermaid"}){try{await Mat(t)}catch(e){if(qL(e)&&X.error(e.str),hh.parseError&&hh.parseError(e),!t.suppressErrors)throw X.error("Use the suppressErrors option to suppress these errors"),e}},"run"),Mat=o(async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){let n=id.getConfig();X.debug(`${t?"":"No "}Callback function found`);let i;if(r)i=r;else if(e)i=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");X.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(X.debug("Start On Load: "+n?.startOnLoad),id.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new qt.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){X.info("Rendering diagram: "+u.id);if(u.getAttribute("data-processed"))continue;u.setAttribute("data-processed","true");let h=`mermaid-${a.next()}`;s=u.innerHTML,s=B3(qt.entityDecode(s)).trim().replace(//gi,"
    ");let f=qt.detectInit(s);f&&X.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await U3e(h,s,u);u.innerHTML=d,t&&await t(h),p&&p(u)}catch(d){Nat(d,l,hh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),z3e=o(function(t){id.initialize(t)},"initialize"),Iat=o(async function(t,e,r){X.warn("mermaid.init is deprecated. Please use run instead."),t&&z3e(t);let n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await $3e(n)},"init"),Oat=o(async(t,{lazyLoad:e=!0}={})=>{ky(),tv(...t),e===!1&&await o3e()},"registerExternalDiagrams"),G3e=o(function(){if(hh.startOnLoad){let{startOnLoad:t}=id.getConfig();t&&hh.run().catch(e=>X.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",G3e,!1)}var Pat=o(function(t){hh.parseError=t},"setParseErrorHandler"),YC=[],Uz=!1,V3e=o(async()=>{if(!Uz){for(Uz=!0;YC.length>0;){let t=YC.shift();if(t)try{await t()}catch(e){X.error("Error executing queue",e)}}Uz=!1}},"executeQueue"),Bat=o(async(t,e)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{id.parse(t,e).then(l=>{a(l),r(l)},l=>{X.error("Error parsing",l),hh.parseError?.(l),s(l),n(l)})}),"performCall");YC.push(i),V3e().catch(n)}),"parse"),U3e=o((t,e,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{id.render(t,e,r).then(u=>{s(u),n(u)},u=>{X.error("Error parsing",u),hh.parseError?.(u),l(u),i(u)})}),"performCall");YC.push(a),V3e().catch(i)}),"render"),Fat=o(()=>Object.keys(gu).map(t=>({id:t})),"getRegisteredDiagramsMetadata"),hh={startOnLoad:!0,mermaidAPI:id,parse:Bat,render:U3e,init:Iat,run:$3e,registerExternalDiagrams:Oat,registerLayoutLoaders:zI,initialize:z3e,parseError:void 0,contentLoaded:G3e,setParseErrorHandler:Pat,detectType:_0,registerIconPacks:P3,getRegisteredDiagramsMetadata:Fat},$at=hh;return Z3e(zat);})(); +:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){let s=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(l=>{Tr(l.styles)||s.forEach(u=>{r+=zCe(l.id,u,l.styles)}),Tr(l.textStyles)||(r+=zCe(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),kdt=o((t,e,r,n)=>{let i=wdt(t,r),a=Hj(e,i,t.themeVariables);return T8(LCe(`${n}{${a}}`),NCe)},"createUserStyles"),Sdt=o((t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=ga(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),Edt=o((t="",e)=>{let r=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":pdt,n=$Ce(`${t}`);return``},"putIntoIFrame"),GCe=o((t,e,r,n,i)=>{let a=t.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",e).attr("width","100%").attr("xmlns",udt);return i&&s.attr("xmlns:xlink",i),s.append("g"),t},"appendDivSvgG");function VCe(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(VCe,"sandboxedIframe");var Cdt=o((t,e,r,n)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(n)?.remove()},"removeExistingElements"),Adt=o(async function(t,e,r){Hv();let n=qCe(e);e=n.code;let i=tr();X.debug(i),e.length>(i?.maxTextSize??sdt)&&(e=odt);let a="#"+t,s="i"+t,l="#"+s,u="d"+t,h="#"+u,f=o(()=>{let A=He(p?l:h).node();A&&"remove"in A&&A.remove()},"removeTempElements"),d=He("body"),p=i.securityLevel===ldt,m=i.securityLevel===cdt,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let S=VCe(He(r),s);d=He(S.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=He(r);GCe(d,t,u,`font-family: ${g}`,hdt)}else{if(Cdt(document,t,u,s),p){let S=VCe(He("body"),s);d=He(S.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=He("body");GCe(d,t,u)}let y,v;try{y=await Qv.fromText(e,{title:n.title})}catch(S){if(i.suppressErrorRendering)throw f(),S;y=await Qv.fromText("error"),v=S}let x=d.select(h).node(),b=y.type,T=x.firstChild,E=T.firstChild,w=y.renderer.getClasses?.(e,y),k=kdt(i,b,w,a),C=document.createElement("style");C.innerHTML=k,T.insertBefore(C,E);try{await y.renderer.draw(e,t,JT.version,y)}catch(S){throw i.suppressErrorRendering?f():v5e.draw(e,t,JT.version),S}let D=d.select(`${h} svg`),R=y.db.getAccTitle?.(),O=y.db.getAccDescription?.();Ddt(b,D,R,O),d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",fdt);let L=d.select(h).node().innerHTML;if(X.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),L=Sdt(L,p,Sr(i.arrowMarkerAbsolute)),p){let S=d.select(h+" svg").node();L=Edt(L,S)}else m||(L=ff.sanitize(L,{ADD_TAGS:xdt,ADD_ATTR:bdt,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(PCe(),v)throw v;return f(),{diagramType:b,svg:L,bindFunctions:y.db.bindFunctions}},"render");function _dt(t={}){let e=$n({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),PH(e),e?.theme&&e.theme in rl?e.themeVariables=rl[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=rl.default.getThemeVariables(e.themeVariables));let r=typeof e=="object"?t_(e):r_();Jv(r.logLevel),Hv()}o(_dt,"initialize");var UCe=o((t,e={})=>{let{code:r}=CW(t);return Qv.fromText(r,e)},"getDiagramFromText");function Ddt(t,e,r,n){MCe(e,t),ICe(e,r,n,e.attr("id"))}o(Ddt,"addA11yInfo");var Tp=Object.freeze({render:Adt,parse:Tdt,getDiagramFromText:UCe,initialize:_dt,getConfig:tr,setConfig:G3,getSiteConfig:r_,updateSiteConfig:BH,reset:o(()=>{o2()},"reset"),globalReset:o(()=>{o2(hf)},"globalReset"),defaultConfig:hf});Jv(tr().logLevel);o2(tr());Cd();sr();var Rdt=o((t,e,r)=>{X.warn(t),bN(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},"handleError"),WCe=o(async function(t={querySelector:".mermaid"}){try{await Ldt(t)}catch(e){if(bN(e)&&X.error(e.str),sf.parseError&&sf.parseError(e),!t.suppressErrors)throw X.error("Use the suppressErrors option to suppress these errors"),e}},"run"),Ldt=o(async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){let n=Tp.getConfig();X.debug(`${t?"":"No "}Callback function found`);let i;if(r)i=r;else if(e)i=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");X.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(X.debug("Start On Load: "+n?.startOnLoad),Tp.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new jt.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){X.info("Rendering diagram: "+u.id);if(u.getAttribute("data-processed"))continue;u.setAttribute("data-processed","true");let h=`mermaid-${a.next()}`;s=u.innerHTML,s=bw(jt.entityDecode(s)).trim().replace(//gi,"
    ");let f=jt.detectInit(s);f&&X.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await XCe(h,s,u);u.innerHTML=d,t&&await t(h),p&&p(u)}catch(d){Rdt(d,l,sf.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),HCe=o(function(t){Tp.initialize(t)},"initialize"),Ndt=o(async function(t,e,r){X.warn("mermaid.init is deprecated. Please use run instead."),t&&HCe(t);let n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await WCe(n)},"init"),Mdt=o(async(t,{lazyLoad:e=!0}={})=>{Hv(),S2(...t),e===!1&&await dCe()},"registerExternalDiagrams"),YCe=o(function(){if(sf.startOnLoad){let{startOnLoad:t}=Tp.getConfig();t&&sf.run().catch(e=>X.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",YCe,!1)}var Idt=o(function(t){sf.parseError=t},"setParseErrorHandler"),w8=[],AW=!1,jCe=o(async()=>{if(!AW){for(AW=!0;w8.length>0;){let t=w8.shift();if(t)try{await t()}catch(e){X.error("Error executing queue",e)}}AW=!1}},"executeQueue"),Odt=o(async(t,e)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Tp.parse(t,e).then(l=>{a(l),r(l)},l=>{X.error("Error parsing",l),sf.parseError?.(l),s(l),n(l)})}),"performCall");w8.push(i),jCe().catch(n)}),"parse"),XCe=o((t,e,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Tp.render(t,e,r).then(u=>{s(u),n(u)},u=>{X.error("Error parsing",u),sf.parseError?.(u),l(u),i(u)})}),"performCall");w8.push(a),jCe().catch(i)}),"render"),Pdt=o(()=>Object.keys(ah).map(t=>({id:t})),"getRegisteredDiagramsMetadata"),sf={startOnLoad:!0,mermaidAPI:Tp,parse:Odt,render:XCe,init:Ndt,run:WCe,registerExternalDiagrams:Mdt,registerLayoutLoaders:mB,initialize:HCe,parseError:void 0,contentLoaded:YCe,setParseErrorHandler:Idt,detectType:hg,registerIconPacks:xw,getRegisteredDiagramsMetadata:Pdt},Bdt=sf;return D3(Fdt);})(); /*! Check if previously processed */ /*! * Wait for document loaded before starting the execution diff --git a/community/code_of_conduct/index.html b/community/code_of_conduct/index.html index c79377ebf..f2154d0cb 100644 --- a/community/code_of_conduct/index.html +++ b/community/code_of_conduct/index.html @@ -1 +1 @@ - Code of Conduct - JSON for Modern C++

    Contributor Covenant Code of Conduct

    Our Pledge

    We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation.

    We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.

    Our Standards

    Examples of behavior that contributes to a positive environment for our community include:

    • Demonstrating empathy and kindness toward other people
    • Being respectful of differing opinions, viewpoints, and experiences
    • Giving and gracefully accepting constructive feedback
    • Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience
    • Focusing on what is best not just for us as individuals, but for the overall community

    Examples of unacceptable behavior include:

    • The use of sexualized language or imagery, and sexual attention or advances of any kind
    • Trolling, insulting or derogatory comments, and personal or political attacks
    • Public or private harassment
    • Publishing others' private information, such as a physical or email address, without their explicit permission
    • Other conduct which could reasonably be considered inappropriate in a professional setting

    Enforcement Responsibilities

    Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.

    Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate.

    Scope

    This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official email address, posting via an official social media account, or acting as an appointed representative at an online or offline event.

    Enforcement

    Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement at mail@nlohmann.me. All complaints will be reviewed and investigated promptly and fairly.

    All community leaders are obligated to respect the privacy and security of the reporter of any incident.

    Enforcement Guidelines

    Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct:

    1. Correction

    Community Impact: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community.

    Consequence: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested.

    2. Warning

    Community Impact: A violation through a single incident or series of actions.

    Consequence: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban.

    3. Temporary Ban

    Community Impact: A serious violation of community standards, including sustained inappropriate behavior.

    Consequence: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban.

    4. Permanent Ban

    Community Impact: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals.

    Consequence: A permanent ban from any sort of public interaction within the community.

    Attribution

    This Code of Conduct is adapted from the Contributor Covenant, version 2.1, available at https://www.contributor-covenant.org/version/2/1/code_of_conduct.html.

    Community Impact Guidelines were inspired by Mozilla's code of conduct enforcement ladder.

    For answers to common questions about this code of conduct, see the FAQ at https://www.contributor-covenant.org/faq. Translations are available at https://www.contributor-covenant.org/translations.

    \ No newline at end of file +Code of Conduct - JSON for Modern C++

    Contributor Covenant Code of Conduct

    Our Pledge

    We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation.

    We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.

    Our Standards

    Examples of behavior that contributes to a positive environment for our community include:

    • Demonstrating empathy and kindness toward other people
    • Being respectful of differing opinions, viewpoints, and experiences
    • Giving and gracefully accepting constructive feedback
    • Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience
    • Focusing on what is best not just for us as individuals, but for the overall community

    Examples of unacceptable behavior include:

    • The use of sexualized language or imagery, and sexual attention or advances of any kind
    • Trolling, insulting or derogatory comments, and personal or political attacks
    • Public or private harassment
    • Publishing others' private information, such as a physical or email address, without their explicit permission
    • Other conduct which could reasonably be considered inappropriate in a professional setting

    Enforcement Responsibilities

    Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.

    Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate.

    Scope

    This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official email address, posting via an official social media account, or acting as an appointed representative at an online or offline event.

    Enforcement

    Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement at mail@nlohmann.me. All complaints will be reviewed and investigated promptly and fairly.

    All community leaders are obligated to respect the privacy and security of the reporter of any incident.

    Enforcement Guidelines

    Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct:

    1. Correction

    Community Impact: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community.

    Consequence: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested.

    2. Warning

    Community Impact: A violation through a single incident or series of actions.

    Consequence: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban.

    3. Temporary Ban

    Community Impact: A serious violation of community standards, including sustained inappropriate behavior.

    Consequence: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban.

    4. Permanent Ban

    Community Impact: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals.

    Consequence: A permanent ban from any sort of public interaction within the community.

    Attribution

    This Code of Conduct is adapted from the Contributor Covenant, version 2.1, available at https://www.contributor-covenant.org/version/2/1/code_of_conduct.html.

    Community Impact Guidelines were inspired by Mozilla's code of conduct enforcement ladder.

    For answers to common questions about this code of conduct, see the FAQ at https://www.contributor-covenant.org/faq. Translations are available at https://www.contributor-covenant.org/translations.

    \ No newline at end of file diff --git a/community/contribution_guidelines/index.html b/community/contribution_guidelines/index.html index 7333509b5..55378cfb1 100644 --- a/community/contribution_guidelines/index.html +++ b/community/contribution_guidelines/index.html @@ -5,4 +5,4 @@ $ ctest --test-dir

    Add tests

    The tests are located in tests/src/unit-*.cpp and contain doctest assertions like CHECK. The tests are structured along the features of the library or the nature of the tests. Usually, it should be clear from the context which existing file needs to be extended, and only very few cases require creating new test files.

    When fixing a bug, edit unit-regression2.cpp and add a section referencing the fixed issue.

    Exceptions

    When you test exceptions, please use CHECK_THROWS_WITH_AS which also takes the what() argument of the thrown exception into account.

    Coverage

    If test coverage decreases, an automatic warning comment will be posted on the pull request. You can access a code coverage report as an artifact to the “Ubuntu” workflow.

    Update the documentation

    The main documentation of the library is generated from the files docs/mkdocs/docs. This folder contains dedicated pages for certain features, a list of all exceptions, and extensive API documentation with details on every public API function.

    Build the documentation locally using:

    make install_venv -C docs/mkdocs
     make serve -C docs/mkdocs
     

    The documentation will then be available at http://127.0.0.1:8000/. See the documentation of mkdocs and Material for MkDocs for more information.

    Amalgamate the source code

    The single-header files single_include/nlohmann/json.hpp and single_include/nlohmann/json_fwd.hpp are generated from the source files in the include/nlohmann directory. Do not edit the files directly; instead, modify the include/nlohmann sources and regenerate the files by executing:

    make amalgamate
    -

    Running make amalgamate will also apply automatic formatting to the source files using Artistic Style. This formatting may modify your source files in-place. Be certain to review and commit any changes to avoid unintended formatting diffs in commits.

    • The library’s README file is an excellent starting point to understand its functionality.
    • The documentation page is the reference documentation of the library.
    • RFC 8259 is the reference for the JavaScript Object Notation (JSON) Data Interchange Format.

    Please don't...

    Certain contributions are not helpful.

    Break the public API

    We take pride in the library being used by numerous customers across various industries. They all rely on the guarantees provided by semantic versioning. Please do not change the library such that the public API of the 3.x.y version is broken. This includes:

    • Changing function signatures (altering parameter types, return types, number of parameters) or changing the const-ness of member functions.
    • Removing functions.
    • Renaming functions or classes.
    • Changing exception handling.
    • Changing exception ids.
    • Changing access specifiers.
    • Changing default arguments.

    Although these guidelines may seem restrictive, they are essential for maintaining the library’s utility.

    Breaking changes may be introduced when they are guarded with a feature macro such as JSON_USE_IMPLICIT_CONVERSIONS which allows selectively changing the behavior of the library. In next steps, the current behavior can then be deprecated. Using feature macros then allows users to test their code against the library in the next major release.

    Break C++11 language conformance

    This library is designed to work with C++11 and later. This means that any supported C++11 compiler should compile the library without problems. Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support.

    Please do not add features that do not work with the mentioned supported compilers. Please guard features from C++14 and later against the respective JSON_HAS_CPP_14 macros.

    Break JSON conformance

    Please refrain from proposing changes that would break JSON conformance. If you propose a conformant extension of JSON to be supported by the library, please motivate this extension.

    Wanted

    The following areas really need contribution and are always welcomed:

    • Extending the continuous integration toward more exotic compilers such as Android NDK, Intel's Compiler, or the bleeding-edge versions Clang.
    • Improving the efficiency of the JSON parser. The current parser is implemented as a naive recursive descent parser with hand-coded string handling. More sophisticated approaches like LALR parsers would be really appreciated. That said, parser generators like Bison or ANTLR do not play nice with single-header files -- I really would like to keep the parser inside the json.hpp header, and I am not aware of approaches similar to re2c for parsing.
    • Extending and updating existing benchmarks to include (the most recent version of) this library. Though efficiency is not everything, speed and memory consumption are very important characteristics for C++ developers, so having proper comparisons would be interesting.

    We look forward to your contributions and collaboration to enhance the library!

    \ No newline at end of file +

    Running make amalgamate will also apply automatic formatting to the source files using Artistic Style. This formatting may modify your source files in-place. Be certain to review and commit any changes to avoid unintended formatting diffs in commits.

    • The library’s README file is an excellent starting point to understand its functionality.
    • The documentation page is the reference documentation of the library.
    • RFC 8259 is the reference for the JavaScript Object Notation (JSON) Data Interchange Format.

    Please don't...

    Certain contributions are not helpful.

    Break the public API

    We take pride in the library being used by numerous customers across various industries. They all rely on the guarantees provided by semantic versioning. Please do not change the library such that the public API of the 3.x.y version is broken. This includes:

    • Changing function signatures (altering parameter types, return types, number of parameters) or changing the const-ness of member functions.
    • Removing functions.
    • Renaming functions or classes.
    • Changing exception handling.
    • Changing exception ids.
    • Changing access specifiers.
    • Changing default arguments.

    Although these guidelines may seem restrictive, they are essential for maintaining the library’s utility.

    Breaking changes may be introduced when they are guarded with a feature macro such as JSON_USE_IMPLICIT_CONVERSIONS which allows selectively changing the behavior of the library. In next steps, the current behavior can then be deprecated. Using feature macros then allows users to test their code against the library in the next major release.

    Break C++11 language conformance

    This library is designed to work with C++11 and later. This means that any supported C++11 compiler should compile the library without problems. Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support.

    Please do not add features that do not work with the mentioned supported compilers. Please guard features from C++14 and later against the respective JSON_HAS_CPP_14 macros.

    Break JSON conformance

    Please refrain from proposing changes that would break JSON conformance. If you propose a conformant extension of JSON to be supported by the library, please motivate this extension.

    Wanted

    The following areas really need contribution and are always welcomed:

    • Extending the continuous integration toward more exotic compilers such as Android NDK, Intel's Compiler, or the bleeding-edge versions Clang.
    • Improving the efficiency of the JSON parser. The current parser is implemented as a naive recursive descent parser with hand-coded string handling. More sophisticated approaches like LALR parsers would be really appreciated. That said, parser generators like Bison or ANTLR do not play nice with single-header files -- I really would like to keep the parser inside the json.hpp header, and I am not aware of approaches similar to re2c for parsing.
    • Extending and updating existing benchmarks to include (the most recent version of) this library. Though efficiency is not everything, speed and memory consumption are very important characteristics for C++ developers, so having proper comparisons would be interesting.

    We look forward to your contributions and collaboration to enhance the library!

    \ No newline at end of file diff --git a/community/governance/index.html b/community/governance/index.html index 9d1883e7b..111558ae7 100644 --- a/community/governance/index.html +++ b/community/governance/index.html @@ -1 +1 @@ - Governance - JSON for Modern C++

    Governance

    The governance model for the JSON for Modern C++ project is a Benevolent Dictator for Life (BDFL) structure. As the sole maintainer, Niels Lohmann is responsible for all key aspects of the project. The project governance may evolve as the project grows, but any changes will be documented here and communicated to contributors.

    Overview

    This project is led by a benevolent dictator, Niels Lohmann, and managed by the community. That is, the community actively contributes to the day-to-day maintenance of the project, but the general strategic line is drawn by the benevolent dictator. In case of disagreement, they have the last word. It is the benevolent dictator’s job to resolve disputes within the community and to ensure that the project is able to progress in a coordinated way. In turn, it is the community’s job to guide the decisions of the benevolent dictator through active engagement and contribution.

    Roles and responsibilities

    Benevolent dictator (project lead)

    Typically, the benevolent dictator, or project lead, is self-appointed. However, because the community always has the ability to fork, this person is fully answerable to the community. The project lead’s role is a difficult one: they set the strategic objectives of the project and communicate these clearly to the community. They also have to understand the community as a whole and strive to satisfy as many conflicting needs as possible, while ensuring that the project survives in the long term.

    In many ways, the role of the benevolent dictator is less about dictatorship and more about diplomacy. The key is to ensure that, as the project expands, the right people are given influence over it and the community rallies behind the vision of the project lead. The lead’s job is then to ensure that the committers (see below) make the right decisions on behalf of the project. Generally speaking, as long as the committers are aligned with the project’s strategy, the project lead will allow them to proceed as they desire.

    Committers

    Committers are contributors who have made several valuable contributions to the project and are now relied upon to both write code directly to the repository and screen the contributions of others. In many cases they are programmers but it is also possible that they contribute in a different role. Typically, a committer will focus on a specific aspect of the project, and will bring a level of expertise and understanding that earns them the respect of the community and the project lead. The role of committer is not an official one, it is simply a position that influential members of the community will find themselves in as the project lead looks to them for guidance and support.

    Committers have no authority over the overall direction of the project. However, they do have the ear of the project lead. It is a committer’s job to ensure that the lead is aware of the community’s needs and collective objectives, and to help develop or elicit appropriate contributions to the project. Often, committers are given informal control over their specific areas of responsibility, and are assigned rights to directly modify certain areas of the source code. That is, although committers do not have explicit decision-making authority, they will often find that their actions are synonymous with the decisions made by the lead.

    Contributors

    Contributors are community members who either have no desire to become committers, or have not yet been given the opportunity by the benevolent dictator. They make valuable contributions, such as those outlined in the list below, but generally do not have the authority to make direct changes to the project code. Contributors engage with the project through communication tools, such as email lists, and via reports and patches attached to issues in the issue tracker, as detailed in our community tools document.

    Anyone can become a contributor. There is no expectation of commitment to the project, no specific skill requirements and no selection process. To become a contributor, a community member simply has to perform one or more actions that are beneficial to the project.

    Some contributors will already be engaging with the project as users, but will also find themselves doing one or more of the following:

    • supporting new users (current users often provide the most effective new user support)
    • reporting bugs
    • identifying requirements
    • supplying graphics and web design
    • programming
    • assisting with project infrastructure
    • writing documentation
    • fixing bugs
    • adding features

    As contributors gain experience and familiarity with the project, they may find that the project lead starts relying on them more and more. When this begins to happen, they gradually adopt the role of committer, as described above.

    Users

    Users are community members who have a need for the project. They are the most important members of the community: without them, the project would have no purpose. Anyone can be a user; there are no specific requirements.

    Users should be encouraged to participate in the life of the project and the community as much as possible. User contributions enable the project team to ensure that they are satisfying the needs of those users. Common user activities include (but are not limited to):

    • evangelising about the project
    • informing developers of project strengths and weaknesses from a new user’s perspective
    • providing moral support (a ‘thank you’ goes a long way)
    • providing financial support

    Users who continue to engage with the project and its community will often find themselves becoming more and more involved. Such users may then go on to become contributors, as described above.

    Support

    All participants in the community are encouraged to provide support for new users within the project management infrastructure. This support is provided as a way of growing the community. Those seeking support should recognise that all support activity within the project is voluntary and is therefore provided as and when time allows. A user requiring guaranteed response times or results should therefore seek to purchase a support contract from a vendor. (Of course, that vendor should be an active member of the community.) However, for those willing to engage with the project on its own terms, and willing to help support other users, the community support channels are ideal.

    Contribution Process

    Anyone can contribute to the project, regardless of their skills, as there are many ways to contribute. For instance, a contributor might be active on the project mailing list and issue tracker, or might supply patches. The various ways of contributing are described in more detail in our roles in open source document.

    The developer mailing list is the most appropriate place for a contributor to ask for help when making their first contribution.

    Decision-Making Process

    The benevolent dictatorship model does not need a formal conflict resolution process, since the project lead’s word is final. If the community chooses to question the wisdom of the actions of a committer, the project lead can review their decisions by checking the email archives, and either uphold or reverse them.


    \ No newline at end of file + Governance - JSON for Modern C++

    Governance

    The governance model for the JSON for Modern C++ project is a Benevolent Dictator for Life (BDFL) structure. As the sole maintainer, Niels Lohmann is responsible for all key aspects of the project. The project governance may evolve as the project grows, but any changes will be documented here and communicated to contributors.

    Overview

    This project is led by a benevolent dictator, Niels Lohmann, and managed by the community. That is, the community actively contributes to the day-to-day maintenance of the project, but the general strategic line is drawn by the benevolent dictator. In case of disagreement, they have the last word. It is the benevolent dictator’s job to resolve disputes within the community and to ensure that the project is able to progress in a coordinated way. In turn, it is the community’s job to guide the decisions of the benevolent dictator through active engagement and contribution.

    Roles and responsibilities

    Benevolent dictator (project lead)

    Typically, the benevolent dictator, or project lead, is self-appointed. However, because the community always has the ability to fork, this person is fully answerable to the community. The project lead’s role is a difficult one: they set the strategic objectives of the project and communicate these clearly to the community. They also have to understand the community as a whole and strive to satisfy as many conflicting needs as possible, while ensuring that the project survives in the long term.

    In many ways, the role of the benevolent dictator is less about dictatorship and more about diplomacy. The key is to ensure that, as the project expands, the right people are given influence over it and the community rallies behind the vision of the project lead. The lead’s job is then to ensure that the committers (see below) make the right decisions on behalf of the project. Generally speaking, as long as the committers are aligned with the project’s strategy, the project lead will allow them to proceed as they desire.

    Committers

    Committers are contributors who have made several valuable contributions to the project and are now relied upon to both write code directly to the repository and screen the contributions of others. In many cases they are programmers but it is also possible that they contribute in a different role. Typically, a committer will focus on a specific aspect of the project, and will bring a level of expertise and understanding that earns them the respect of the community and the project lead. The role of committer is not an official one, it is simply a position that influential members of the community will find themselves in as the project lead looks to them for guidance and support.

    Committers have no authority over the overall direction of the project. However, they do have the ear of the project lead. It is a committer’s job to ensure that the lead is aware of the community’s needs and collective objectives, and to help develop or elicit appropriate contributions to the project. Often, committers are given informal control over their specific areas of responsibility, and are assigned rights to directly modify certain areas of the source code. That is, although committers do not have explicit decision-making authority, they will often find that their actions are synonymous with the decisions made by the lead.

    Contributors

    Contributors are community members who either have no desire to become committers, or have not yet been given the opportunity by the benevolent dictator. They make valuable contributions, such as those outlined in the list below, but generally do not have the authority to make direct changes to the project code. Contributors engage with the project through communication tools, such as email lists, and via reports and patches attached to issues in the issue tracker, as detailed in our community tools document.

    Anyone can become a contributor. There is no expectation of commitment to the project, no specific skill requirements and no selection process. To become a contributor, a community member simply has to perform one or more actions that are beneficial to the project.

    Some contributors will already be engaging with the project as users, but will also find themselves doing one or more of the following:

    • supporting new users (current users often provide the most effective new user support)
    • reporting bugs
    • identifying requirements
    • supplying graphics and web design
    • programming
    • assisting with project infrastructure
    • writing documentation
    • fixing bugs
    • adding features

    As contributors gain experience and familiarity with the project, they may find that the project lead starts relying on them more and more. When this begins to happen, they gradually adopt the role of committer, as described above.

    Users

    Users are community members who have a need for the project. They are the most important members of the community: without them, the project would have no purpose. Anyone can be a user; there are no specific requirements.

    Users should be encouraged to participate in the life of the project and the community as much as possible. User contributions enable the project team to ensure that they are satisfying the needs of those users. Common user activities include (but are not limited to):

    • evangelising about the project
    • informing developers of project strengths and weaknesses from a new user’s perspective
    • providing moral support (a ‘thank you’ goes a long way)
    • providing financial support

    Users who continue to engage with the project and its community will often find themselves becoming more and more involved. Such users may then go on to become contributors, as described above.

    Support

    All participants in the community are encouraged to provide support for new users within the project management infrastructure. This support is provided as a way of growing the community. Those seeking support should recognise that all support activity within the project is voluntary and is therefore provided as and when time allows. A user requiring guaranteed response times or results should therefore seek to purchase a support contract from a vendor. (Of course, that vendor should be an active member of the community.) However, for those willing to engage with the project on its own terms, and willing to help support other users, the community support channels are ideal.

    Contribution Process

    Anyone can contribute to the project, regardless of their skills, as there are many ways to contribute. For instance, a contributor might be active on the project mailing list and issue tracker, or might supply patches. The various ways of contributing are described in more detail in our roles in open source document.

    The developer mailing list is the most appropriate place for a contributor to ask for help when making their first contribution.

    Decision-Making Process

    The benevolent dictatorship model does not need a formal conflict resolution process, since the project lead’s word is final. If the community chooses to question the wisdom of the actions of a committer, the project lead can review their decisions by checking the email archives, and either uphold or reverse them.


    \ No newline at end of file diff --git a/community/index.html b/community/index.html index 707e6f0e2..3464d2c11 100644 --- a/community/index.html +++ b/community/index.html @@ -1 +1 @@ - Community - JSON for Modern C++
    \ No newline at end of file + Community - JSON for Modern C++
    \ No newline at end of file diff --git a/community/quality_assurance/index.html b/community/quality_assurance/index.html index 83ba6884e..7aeca8652 100644 --- a/community/quality_assurance/index.html +++ b/community/quality_assurance/index.html @@ -548,4 +548,4 @@ # for the linux (LF) line end style --lineend=linux -
  • The code style is checked with cpplint with 61 enabled rules.

  • Simple integration

    Requirement: Single header

    The library can be used by adding a single header to a C++ project.

    • An amalgamation script is used to check if the source code is exposed as a self-contained single-header file.
    • The test suite is checked against the amalgamated source file as well as the individual source file.

    Requirement: CMake as primary development tool

    All library functions are exposed and usable by CMake.

    • All library options are exposed as CMake options and tested.
    • The library is tested against relevant CMake versions:
    • CMake 3.5 (the earliest supported)
    • CMake 3.31.6 (the latest 3.x release)
    • CMake 4.0.0 (a very recent release)
    \ No newline at end of file +
  • The code style is checked with cpplint with 61 enabled rules.

  • Simple integration

    Requirement: Single header

    The library can be used by adding a single header to a C++ project.

    • An amalgamation script is used to check if the source code is exposed as a self-contained single-header file.
    • The test suite is checked against the amalgamated source file as well as the individual source file.

    Requirement: CMake as primary development tool

    All library functions are exposed and usable by CMake.

    • All library options are exposed as CMake options and tested.
    • The library is tested against relevant CMake versions:
    • CMake 3.5 (the earliest supported)
    • CMake 3.31.6 (the latest 3.x release)
    • CMake 4.0.0 (a very recent release)
    \ No newline at end of file diff --git a/community/security_policy/index.html b/community/security_policy/index.html index 5b2b1a000..25204ddfa 100644 --- a/community/security_policy/index.html +++ b/community/security_policy/index.html @@ -1 +1 @@ - Security Policy - JSON for Modern C++

    Security Policy

    Reporting a Vulnerability

    We value the security of our users and appreciate your efforts to responsibly disclose vulnerabilities. If you have identified a security vulnerability in this repository, please use the GitHub Security Advisory "Report a Vulnerability" tab.

    Until it is published, this draft security advisory will only be visible to the maintainers of this project. Other users and teams may be added once the advisory is created.

    We will send a response indicating the next steps in handling your report. After the initial reply to your report, we will keep you informed of the progress towards a fix and full announcement and may ask for additional information or guidance.

    For vulnerabilities in third-party dependencies or modules, please report them directly to the respective maintainers.

    Additional Resources

    We sincerely thank you for contributing to the security and integrity of this project!

    \ No newline at end of file + Security Policy - JSON for Modern C++

    Security Policy

    Reporting a Vulnerability

    We value the security of our users and appreciate your efforts to responsibly disclose vulnerabilities. If you have identified a security vulnerability in this repository, please use the GitHub Security Advisory "Report a Vulnerability" tab.

    Until it is published, this draft security advisory will only be visible to the maintainers of this project. Other users and teams may be added once the advisory is created.

    We will send a response indicating the next steps in handling your report. After the initial reply to your report, we will keep you informed of the progress towards a fix and full announcement and may ask for additional information or guidance.

    For vulnerabilities in third-party dependencies or modules, please report them directly to the respective maintainers.

    Additional Resources

    We sincerely thank you for contributing to the security and integrity of this project!

    \ No newline at end of file diff --git a/features/arbitrary_types/index.html b/features/arbitrary_types/index.html index 0f3dd29ba..e9abe57ca 100644 --- a/features/arbitrary_types/index.html +++ b/features/arbitrary_types/index.html @@ -159,4 +159,4 @@ value = j.template get<T>(); // oops! } }; -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/assertions/index.html b/features/assertions/index.html index 1d310f28a..5b09e0623 100644 --- a/features/assertions/index.html +++ b/features/assertions/index.html @@ -43,4 +43,4 @@ } }

    Output:

    [json.exception.parse_error.101] parse error: attempting to parse an empty input; check that your input string or stream contains the expected JSON
    -

    See also

    \ No newline at end of file +

    See also

    \ No newline at end of file diff --git a/features/binary_formats/bjdata/index.html b/features/binary_formats/bjdata/index.html index c0734a174..08efb132f 100644 --- a/features/binary_formats/bjdata/index.html +++ b/features/binary_formats/bjdata/index.html @@ -95,4 +95,4 @@ "compact": true, "schema": 0 } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/binary_formats/bson/index.html b/features/binary_formats/bson/index.html index cc97e7857..53fff86c7 100644 --- a/features/binary_formats/bson/index.html +++ b/features/binary_formats/bson/index.html @@ -46,4 +46,4 @@ "compact": true, "schema": 0 } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/binary_formats/cbor/index.html b/features/binary_formats/cbor/index.html index d52306ad9..7392c6ba4 100644 --- a/features/binary_formats/cbor/index.html +++ b/features/binary_formats/cbor/index.html @@ -45,4 +45,4 @@ "compact": true, "schema": 0 } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/binary_formats/index.html b/features/binary_formats/index.html index 73ed41310..8f679493e 100644 --- a/features/binary_formats/index.html +++ b/features/binary_formats/index.html @@ -1 +1 @@ - Binary Formats - JSON for Modern C++

    Binary Formats

    Though JSON is a ubiquitous data format, it is not a very compact format suitable for data exchange, for instance, over a network. Hence, the library supports

    to efficiently encode JSON values to byte vectors and to decode such vectors.

    Comparison

    Completeness

    Format Serialization Deserialization
    BJData complete complete
    BSON incomplete: top-level value must be an object incomplete, but all JSON types are supported
    CBOR complete incomplete, but all JSON types are supported
    MessagePack complete complete
    UBJSON complete complete

    Binary values

    Format Binary values Binary subtypes
    BJData not supported not supported
    BSON supported supported
    CBOR supported supported
    MessagePack supported supported
    UBJSON not supported not supported

    See binary values for more information.

    Sizes

    Format canada.json twitter.json citm_catalog.json jeopardy.json
    BJData 53.2 % 91.1 % 78.1 % 96.6 %
    BJData (size) 58.6 % 92.1 % 86.7 % 97.4 %
    BJData (size+tyoe) 58.6 % 92.1 % 86.5 % 97.4 %
    BSON 85.8 % 95.2 % 95.8 % 106.7 %
    CBOR 50.5 % 86.3 % 68.4 % 88.0 %
    MessagePack 50.5 % 86.0 % 68.5 % 87.9 %
    UBJSON 53.2 % 91.3 % 78.2 % 96.6 %
    UBJSON (size) 58.6 % 92.3 % 86.8 % 97.4 %
    UBJSON (size+type) 55.9 % 92.3 % 85.0 % 95.0 %

    Sizes compared to minified JSON value.

    \ No newline at end of file + Binary Formats - JSON for Modern C++

    Binary Formats

    Though JSON is a ubiquitous data format, it is not a very compact format suitable for data exchange, for instance, over a network. Hence, the library supports

    to efficiently encode JSON values to byte vectors and to decode such vectors.

    Comparison

    Completeness

    Format Serialization Deserialization
    BJData complete complete
    BSON incomplete: top-level value must be an object incomplete, but all JSON types are supported
    CBOR complete incomplete, but all JSON types are supported
    MessagePack complete complete
    UBJSON complete complete

    Binary values

    Format Binary values Binary subtypes
    BJData not supported not supported
    BSON supported supported
    CBOR supported supported
    MessagePack supported supported
    UBJSON not supported not supported

    See binary values for more information.

    Sizes

    Format canada.json twitter.json citm_catalog.json jeopardy.json
    BJData 53.2 % 91.1 % 78.1 % 96.6 %
    BJData (size) 58.6 % 92.1 % 86.7 % 97.4 %
    BJData (size+tyoe) 58.6 % 92.1 % 86.5 % 97.4 %
    BSON 85.8 % 95.2 % 95.8 % 106.7 %
    CBOR 50.5 % 86.3 % 68.4 % 88.0 %
    MessagePack 50.5 % 86.0 % 68.5 % 87.9 %
    UBJSON 53.2 % 91.3 % 78.2 % 96.6 %
    UBJSON (size) 58.6 % 92.3 % 86.8 % 97.4 %
    UBJSON (size+type) 55.9 % 92.3 % 85.0 % 95.0 %

    Sizes compared to minified JSON value.

    \ No newline at end of file diff --git a/features/binary_formats/messagepack/index.html b/features/binary_formats/messagepack/index.html index 1f2aa9101..1e0e8d082 100644 --- a/features/binary_formats/messagepack/index.html +++ b/features/binary_formats/messagepack/index.html @@ -45,4 +45,4 @@ "compact": true, "schema": 0 } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/binary_formats/ubjson/index.html b/features/binary_formats/ubjson/index.html index 30980ee0e..febcef01a 100644 --- a/features/binary_formats/ubjson/index.html +++ b/features/binary_formats/ubjson/index.html @@ -90,4 +90,4 @@ "compact": true, "schema": 0 } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/binary_values/index.html b/features/binary_values/index.html index 4f2cc6bd5..510b0336e 100644 --- a/features/binary_values/index.html +++ b/features/binary_values/index.html @@ -154,4 +154,4 @@ vector <|-- binary_t

    By default, binary values are stored as

    Note that subtype (42) is not serialized and that UBJSON has no binary type, and deserializing v would yield the following value:

    {
       "binary": [202, 254, 186, 190]
     }
    -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/comments/index.html b/features/comments/index.html index ebb414844..27eb10e04 100644 --- a/features/comments/index.html +++ b/features/comments/index.html @@ -45,4 +45,4 @@ "Neptune" ] } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/element_access/checked_access/index.html b/features/element_access/checked_access/index.html index cd3fcbb6f..3048ebcfd 100644 --- a/features/element_access/checked_access/index.html +++ b/features/element_access/checked_access/index.html @@ -12,4 +12,4 @@

    When accessing an invalid index (i.e., an index greater than or equal to the array size) or the passed object key is non-existing, an exception is thrown.

    Accessing via invalid index or missing key
    j.at("hobbies").at(3) = "cooking";
     

    This code produces the following exception:

    [json.exception.out_of_range.401] array index 3 is out of range
     

    When you extended diagnostic messages are enabled by defining JSON_DIAGNOSTICS, the exception further gives information where the key or index is missing or out of range.

    [json.exception.out_of_range.401] (/hobbies) array index 3 is out of range
    -

    Notes

    Exceptions

    • at can only be used with objects (with a string argument) or with arrays (with a numeric argument). For other types, a basic_json::type_error is thrown.
    • basic_json::out_of_range exception exceptions are thrown if the provided key is not found in an object or the provided index is invalid.

    Summary

    scenario non-const value const value
    access to existing object key reference to existing value is returned const reference to existing value is returned
    access to valid array index reference to existing value is returned const reference to existing value is returned
    access to non-existing object key basic_json::out_of_range exception is thrown basic_json::out_of_range exception is thrown
    access to invalid array index basic_json::out_of_range exception is thrown basic_json::out_of_range exception is thrown
    \ No newline at end of file +

    Notes

    Exceptions

    • at can only be used with objects (with a string argument) or with arrays (with a numeric argument). For other types, a basic_json::type_error is thrown.
    • basic_json::out_of_range exception exceptions are thrown if the provided key is not found in an object or the provided index is invalid.

    Summary

    scenario non-const value const value
    access to existing object key reference to existing value is returned const reference to existing value is returned
    access to valid array index reference to existing value is returned const reference to existing value is returned
    access to non-existing object key basic_json::out_of_range exception is thrown basic_json::out_of_range exception is thrown
    access to invalid array index basic_json::out_of_range exception is thrown basic_json::out_of_range exception is thrown
    \ No newline at end of file diff --git a/features/element_access/default_value/index.html b/features/element_access/default_value/index.html index 2497d3e77..7f0eb6081 100644 --- a/features/element_access/default_value/index.html +++ b/features/element_access/default_value/index.html @@ -20,4 +20,4 @@ default value (int): -1 default value (uint64_t): 18446744073709551615 explicit return value type: 18446744073709551615 -

    See also

    \ No newline at end of file +

    See also

    \ No newline at end of file diff --git a/features/element_access/index.html b/features/element_access/index.html index 520d1fc9f..160ba11dc 100644 --- a/features/element_access/index.html +++ b/features/element_access/index.html @@ -1 +1 @@ - Element Access - JSON for Modern C++

    Element Access

    There are many ways elements in a JSON value can be accessed:

    • unchecked access via operator[]
    • checked access via at
    • access with default value via value
    • iterators
    • JSON pointers
    \ No newline at end of file + Element Access - JSON for Modern C++

    Element Access

    There are many ways elements in a JSON value can be accessed:

    • unchecked access via operator[]
    • checked access via at
    • access with default value via value
    • iterators
    • JSON pointers
    \ No newline at end of file diff --git a/features/element_access/unchecked_access/index.html b/features/element_access/unchecked_access/index.html index c4229d3af..f38c2fad3 100644 --- a/features/element_access/unchecked_access/index.html +++ b/features/element_access/unchecked_access/index.html @@ -19,4 +19,4 @@ "age": 42, "hobbies": ["running", "reading", null, "cooking"] } -

    Notes

    Design rationale

    The library behaves differently to std::vector and std::map:

    • std::vector::operator[] never inserts a new element.
    • std::map::operator[] is not available for const values.

    The type json wraps all JSON value types. It would be impossible to remove operator[] for const objects. At the same time, inserting elements for non-const objects is really convenient as it avoids awkward insert calls. To this end, we decided to have an inserting non-const behavior for both arrays and objects.

    Info

    The access is unchecked. In case the passed object key does not exist or the passed array index is invalid, no exception is thrown.

    Danger

    • It is undefined behavior to access a const object with a non-existing key.
    • It is undefined behavior to access a const array with an invalid index.
    • In debug mode, an assertion will fire in both cases. You can disable assertions by defining the preprocessor symbol NDEBUG or redefine the macro JSON_ASSERT(x). See the documentation on runtime assertions for more information.

    Exceptions

    operator[] can only be used with objects (with a string argument) or with arrays (with a numeric argument). For other types, a basic_json::type_error is thrown.

    Summary

    scenario non-const value const value
    access to existing object key reference to existing value is returned const reference to existing value is returned
    access to valid array index reference to existing value is returned const reference to existing value is returned
    access to non-existing object key reference to newly inserted null value is returned undefined behavior; runtime assertion in debug mode
    access to invalid array index reference to newly inserted null value is returned; any index between previous maximal index and passed index are filled with null undefined behavior; runtime assertion in debug mode
    \ No newline at end of file +

    Notes

    Design rationale

    The library behaves differently to std::vector and std::map:

    • std::vector::operator[] never inserts a new element.
    • std::map::operator[] is not available for const values.

    The type json wraps all JSON value types. It would be impossible to remove operator[] for const objects. At the same time, inserting elements for non-const objects is really convenient as it avoids awkward insert calls. To this end, we decided to have an inserting non-const behavior for both arrays and objects.

    Info

    The access is unchecked. In case the passed object key does not exist or the passed array index is invalid, no exception is thrown.

    Danger

    • It is undefined behavior to access a const object with a non-existing key.
    • It is undefined behavior to access a const array with an invalid index.
    • In debug mode, an assertion will fire in both cases. You can disable assertions by defining the preprocessor symbol NDEBUG or redefine the macro JSON_ASSERT(x). See the documentation on runtime assertions for more information.

    Exceptions

    operator[] can only be used with objects (with a string argument) or with arrays (with a numeric argument). For other types, a basic_json::type_error is thrown.

    Summary

    scenario non-const value const value
    access to existing object key reference to existing value is returned const reference to existing value is returned
    access to valid array index reference to existing value is returned const reference to existing value is returned
    access to non-existing object key reference to newly inserted null value is returned undefined behavior; runtime assertion in debug mode
    access to invalid array index reference to newly inserted null value is returned; any index between previous maximal index and passed index are filled with null undefined behavior; runtime assertion in debug mode
    \ No newline at end of file diff --git a/features/enum_conversion/index.html b/features/enum_conversion/index.html index b9368b89d..d33a7e986 100644 --- a/features/enum_conversion/index.html +++ b/features/enum_conversion/index.html @@ -24,4 +24,4 @@ // undefined json value to enum (where the first map entry above is the default) json jPi = 3.14; assert(jPi.get<TaskState>() == TS_INVALID ); -

    Notes

    Just as in Arbitrary Type Conversions above,

    • NLOHMANN_JSON_SERIALIZE_ENUM() MUST be declared in your enum type's namespace (which can be the global namespace), or the library will not be able to locate it, and it will default to integer serialization.
    • It MUST be available (e.g., proper headers must be included) everywhere you use the conversions.

    Other Important points:

    • When using get<ENUM_TYPE>(), undefined JSON values will default to the first pair specified in your map. Select this default pair carefully.
    • If an enum or JSON value is specified more than once in your map, the first matching occurrence from the top of the map will be returned when converting to or from JSON.
    • To disable the default serialization of enumerators as integers and force a compiler error instead, see JSON_DISABLE_ENUM_SERIALIZATION.
    \ No newline at end of file +

    Notes

    Just as in Arbitrary Type Conversions above,

    • NLOHMANN_JSON_SERIALIZE_ENUM() MUST be declared in your enum type's namespace (which can be the global namespace), or the library will not be able to locate it, and it will default to integer serialization.
    • It MUST be available (e.g., proper headers must be included) everywhere you use the conversions.

    Other Important points:

    • When using get<ENUM_TYPE>(), undefined JSON values will default to the first pair specified in your map. Select this default pair carefully.
    • If an enum or JSON value is specified more than once in your map, the first matching occurrence from the top of the map will be returned when converting to or from JSON.
    • To disable the default serialization of enumerators as integers and force a compiler error instead, see JSON_DISABLE_ENUM_SERIALIZATION.
    \ No newline at end of file diff --git a/features/iterators/index.html b/features/iterators/index.html index 4645609c1..e5cdcab9c 100644 --- a/features/iterators/index.html +++ b/features/iterators/index.html @@ -53,4 +53,4 @@ std::cout << *it << std::endl; }

    Output:

    "Hello, world"
    -

    Iterator invalidation

    Operations invalidated iterators
    clear all
    \ No newline at end of file +

    Iterator invalidation

    Operations invalidated iterators
    clear all
    \ No newline at end of file diff --git a/features/json_patch/index.html b/features/json_patch/index.html index 7a9e626b9..f80e68324 100644 --- a/features/json_patch/index.html +++ b/features/json_patch/index.html @@ -105,4 +105,4 @@ "world" ] } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/json_pointer/index.html b/features/json_pointer/index.html index b5436e32a..a1b4f882f 100644 --- a/features/json_pointer/index.html +++ b/features/json_pointer/index.html @@ -45,4 +45,4 @@ "/nested/three/1": false }

    The reverse function, unflatten recreates the original value.

    auto j_original = j_flat.unflatten();
    -

    See also

    \ No newline at end of file +

    See also

    \ No newline at end of file diff --git a/features/macros/index.html b/features/macros/index.html index 730ad9469..0aa24f536 100644 --- a/features/macros/index.html +++ b/features/macros/index.html @@ -1 +1 @@ - Supported Macros - JSON for Modern C++

    Supported Macros

    Some aspects of the library can be configured by defining preprocessor macros before including the json.hpp header. See also the API documentation for macros for examples and more information.

    JSON_ASSERT(x)

    This macro controls which code is executed for runtime assertions of the library.

    See full documentation of JSON_ASSERT(x).

    JSON_CATCH_USER(exception)

    This macro overrides catch calls inside the library.

    See full documentation of JSON_CATCH_USER(exception).

    JSON_DIAGNOSTICS

    This macro enables extended diagnostics for exception messages. Possible values are 1 to enable or 0 to disable (default).

    When enabled, exception messages contain a JSON Pointer to the JSON value that triggered the exception, see Extended diagnostic messages for an example. Note that enabling this macro increases the size of every JSON value by one pointer and adds some runtime overhead.

    The diagnostics messages can also be controlled with the CMake option JSON_Diagnostics (OFF by default) which sets JSON_DIAGNOSTICS accordingly.

    See full documentation of JSON_DIAGNOSTICS.

    JSON_DIAGNOSTIC_POSITIONS

    When enabled, two new member functions start_pos() and end_pos() are added to basic_json values. If the value was created by calling theparse function, then these functions allow querying the byte positions of the value in the input it was parsed from. The byte positions are also used in exceptions to help locate errors.

    The diagnostics positions can also be controlled with the CMake option JSON_Diagnostic_Positions (OFF by default) which sets JSON_DIAGNOSTIC_POSITIONS accordingly.

    See full documentation of JSON_DIAGNOSTIC_POSITIONS

    JSON_HAS_CPP_11, JSON_HAS_CPP_14, JSON_HAS_CPP_17, JSON_HAS_CPP_20

    The library targets C++11, but also supports some features introduced in later C++ versions (e.g., std::string_view support for C++17). For these new features, the library implements some preprocessor checks to determine the C++ standard. By defining any of these symbols, the internal check is overridden and the provided C++ version is unconditionally assumed. This can be helpful for compilers that only implement parts of the standard and would be detected incorrectly.

    See full documentation of JSON_HAS_CPP_11, JSON_HAS_CPP_14, JSON_HAS_CPP_17, and JSON_HAS_CPP_20.

    JSON_HAS_FILESYSTEM, JSON_HAS_EXPERIMENTAL_FILESYSTEM

    When compiling with C++17, the library provides conversions from and to std::filesystem::path. As compiler support for filesystem is limited, the library tries to detect whether <filesystem>/std::filesystem (JSON_HAS_FILESYSTEM) or <experimental/filesystem>/std::experimental::filesystem (JSON_HAS_EXPERIMENTAL_FILESYSTEM) should be used. To override the built-in check, define JSON_HAS_FILESYSTEM or JSON_HAS_EXPERIMENTAL_FILESYSTEM to 1.

    See full documentation of JSON_HAS_FILESYSTEM and JSON_HAS_EXPERIMENTAL_FILESYSTEM.

    JSON_NOEXCEPTION

    Exceptions can be switched off by defining the symbol JSON_NOEXCEPTION.

    See full documentation of JSON_NOEXCEPTION.

    JSON_DISABLE_ENUM_SERIALIZATION

    When defined, default parse and serialize functions for enums are excluded and have to be provided by the user, for example, using NLOHMANN_JSON_SERIALIZE_ENUM.

    See full documentation of JSON_DISABLE_ENUM_SERIALIZATION.

    JSON_NO_IO

    When defined, headers <cstdio>, <ios>, <iosfwd>, <istream>, and <ostream> are not included and parse functions relying on these headers are excluded. This is relevant for environment where these I/O functions are disallowed for security reasons (e.g., Intel Software Guard Extensions (SGX)).

    See full documentation of JSON_NO_IO.

    JSON_SKIP_LIBRARY_VERSION_CHECK

    When defined, the library will not create a compiler warning when a different version of the library was already included.

    See full documentation of JSON_SKIP_LIBRARY_VERSION_CHECK.

    JSON_SKIP_UNSUPPORTED_COMPILER_CHECK

    When defined, the library will not create a compile error when a known unsupported compiler is detected. This allows using the library with compilers that do not fully support C++11 and may only work if unsupported features are not used.

    See full documentation of JSON_SKIP_UNSUPPORTED_COMPILER_CHECK.

    JSON_THROW_USER(exception)

    This macro overrides throw calls inside the library. The argument is the exception to be thrown.

    See full documentation of JSON_THROW_USER(exception).

    JSON_TRY_USER

    This macro overrides try calls inside the library.

    See full documentation of JSON_TRY_USER.

    JSON_USE_IMPLICIT_CONVERSIONS

    When defined to 0, implicit conversions are switched off. By default, implicit conversions are switched on.

    See full documentation of JSON_USE_IMPLICIT_CONVERSIONS.

    NLOHMANN_DEFINE_TYPE_*(...), NLOHMANN_DEFINE_DERIVED_TYPE_*(...)

    The library defines 12 macros to simplify the serialization/deserialization of types. See the page on arbitrary type conversion for a detailed discussion.

    NLOHMANN_JSON_SERIALIZE_ENUM(type, ...)

    This macro simplifies the serialization/deserialization of enum types. See Specializing enum conversion for more information.

    See full documentation of NLOHMANN_JSON_SERIALIZE_ENUM.

    NLOHMANN_JSON_VERSION_MAJOR, NLOHMANN_JSON_VERSION_MINOR, NLOHMANN_JSON_VERSION_PATCH

    These macros are defined by the library and contain the version numbers according to Semantic Versioning 2.0.0.

    See full documentation of NLOHMANN_JSON_VERSION_MAJOR, NLOHMANN_JSON_VERSION_MINOR, and NLOHMANN_JSON_VERSION_PATCH.

    \ No newline at end of file + Supported Macros - JSON for Modern C++

    Supported Macros

    Some aspects of the library can be configured by defining preprocessor macros before including the json.hpp header. See also the API documentation for macros for examples and more information.

    JSON_ASSERT(x)

    This macro controls which code is executed for runtime assertions of the library.

    See full documentation of JSON_ASSERT(x).

    JSON_CATCH_USER(exception)

    This macro overrides catch calls inside the library.

    See full documentation of JSON_CATCH_USER(exception).

    JSON_DIAGNOSTICS

    This macro enables extended diagnostics for exception messages. Possible values are 1 to enable or 0 to disable (default).

    When enabled, exception messages contain a JSON Pointer to the JSON value that triggered the exception, see Extended diagnostic messages for an example. Note that enabling this macro increases the size of every JSON value by one pointer and adds some runtime overhead.

    The diagnostics messages can also be controlled with the CMake option JSON_Diagnostics (OFF by default) which sets JSON_DIAGNOSTICS accordingly.

    See full documentation of JSON_DIAGNOSTICS.

    JSON_DIAGNOSTIC_POSITIONS

    When enabled, two new member functions start_pos() and end_pos() are added to basic_json values. If the value was created by calling theparse function, then these functions allow querying the byte positions of the value in the input it was parsed from. The byte positions are also used in exceptions to help locate errors.

    The diagnostics positions can also be controlled with the CMake option JSON_Diagnostic_Positions (OFF by default) which sets JSON_DIAGNOSTIC_POSITIONS accordingly.

    See full documentation of JSON_DIAGNOSTIC_POSITIONS

    JSON_HAS_CPP_11, JSON_HAS_CPP_14, JSON_HAS_CPP_17, JSON_HAS_CPP_20

    The library targets C++11, but also supports some features introduced in later C++ versions (e.g., std::string_view support for C++17). For these new features, the library implements some preprocessor checks to determine the C++ standard. By defining any of these symbols, the internal check is overridden and the provided C++ version is unconditionally assumed. This can be helpful for compilers that only implement parts of the standard and would be detected incorrectly.

    See full documentation of JSON_HAS_CPP_11, JSON_HAS_CPP_14, JSON_HAS_CPP_17, and JSON_HAS_CPP_20.

    JSON_HAS_FILESYSTEM, JSON_HAS_EXPERIMENTAL_FILESYSTEM

    When compiling with C++17, the library provides conversions from and to std::filesystem::path. As compiler support for filesystem is limited, the library tries to detect whether <filesystem>/std::filesystem (JSON_HAS_FILESYSTEM) or <experimental/filesystem>/std::experimental::filesystem (JSON_HAS_EXPERIMENTAL_FILESYSTEM) should be used. To override the built-in check, define JSON_HAS_FILESYSTEM or JSON_HAS_EXPERIMENTAL_FILESYSTEM to 1.

    See full documentation of JSON_HAS_FILESYSTEM and JSON_HAS_EXPERIMENTAL_FILESYSTEM.

    JSON_NOEXCEPTION

    Exceptions can be switched off by defining the symbol JSON_NOEXCEPTION.

    See full documentation of JSON_NOEXCEPTION.

    JSON_DISABLE_ENUM_SERIALIZATION

    When defined, default parse and serialize functions for enums are excluded and have to be provided by the user, for example, using NLOHMANN_JSON_SERIALIZE_ENUM.

    See full documentation of JSON_DISABLE_ENUM_SERIALIZATION.

    JSON_NO_IO

    When defined, headers <cstdio>, <ios>, <iosfwd>, <istream>, and <ostream> are not included and parse functions relying on these headers are excluded. This is relevant for environment where these I/O functions are disallowed for security reasons (e.g., Intel Software Guard Extensions (SGX)).

    See full documentation of JSON_NO_IO.

    JSON_SKIP_LIBRARY_VERSION_CHECK

    When defined, the library will not create a compiler warning when a different version of the library was already included.

    See full documentation of JSON_SKIP_LIBRARY_VERSION_CHECK.

    JSON_SKIP_UNSUPPORTED_COMPILER_CHECK

    When defined, the library will not create a compile error when a known unsupported compiler is detected. This allows using the library with compilers that do not fully support C++11 and may only work if unsupported features are not used.

    See full documentation of JSON_SKIP_UNSUPPORTED_COMPILER_CHECK.

    JSON_THROW_USER(exception)

    This macro overrides throw calls inside the library. The argument is the exception to be thrown.

    See full documentation of JSON_THROW_USER(exception).

    JSON_TRY_USER

    This macro overrides try calls inside the library.

    See full documentation of JSON_TRY_USER.

    JSON_USE_IMPLICIT_CONVERSIONS

    When defined to 0, implicit conversions are switched off. By default, implicit conversions are switched on.

    See full documentation of JSON_USE_IMPLICIT_CONVERSIONS.

    NLOHMANN_DEFINE_TYPE_*(...), NLOHMANN_DEFINE_DERIVED_TYPE_*(...)

    The library defines 12 macros to simplify the serialization/deserialization of types. See the page on arbitrary type conversion for a detailed discussion.

    NLOHMANN_JSON_SERIALIZE_ENUM(type, ...)

    This macro simplifies the serialization/deserialization of enum types. See Specializing enum conversion for more information.

    See full documentation of NLOHMANN_JSON_SERIALIZE_ENUM.

    NLOHMANN_JSON_VERSION_MAJOR, NLOHMANN_JSON_VERSION_MINOR, NLOHMANN_JSON_VERSION_PATCH

    These macros are defined by the library and contain the version numbers according to Semantic Versioning 2.0.0.

    See full documentation of NLOHMANN_JSON_VERSION_MAJOR, NLOHMANN_JSON_VERSION_MINOR, and NLOHMANN_JSON_VERSION_PATCH.

    \ No newline at end of file diff --git a/features/merge_patch/index.html b/features/merge_patch/index.html index dba0f2deb..eb715e7ed 100644 --- a/features/merge_patch/index.html +++ b/features/merge_patch/index.html @@ -50,4 +50,4 @@ ], "title": "Hello!" } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/modules/index.html b/features/modules/index.html index f36e5b549..2677f6269 100644 --- a/features/modules/index.html +++ b/features/modules/index.html @@ -7,4 +7,4 @@ std::ifstream f("example.json"); json data = json::parse(f); -

    Modules do not export macros

    It should be noted that as modules do not export macros, the nlohmann.json module will not export any macros, but rather only the following symbols:

    • nlohmann::adl_serializer
    • nlohmann::basic_json
    • nlohmann::json
    • nlohmann::json_pointer
    • nlohmann::ordered_map
    • nlohmann::ordered_json
    \ No newline at end of file +

    Modules do not export macros

    It should be noted that as modules do not export macros, the nlohmann.json module will not export any macros, but rather only the following symbols:

    • nlohmann::adl_serializer
    • nlohmann::basic_json
    • nlohmann::json
    • nlohmann::json_pointer
    • nlohmann::ordered_map
    • nlohmann::ordered_json
    \ No newline at end of file diff --git a/features/namespace/index.html b/features/namespace/index.html index 3baf16fef..47681d051 100644 --- a/features/namespace/index.html +++ b/features/namespace/index.html @@ -9,4 +9,4 @@ app --> json_diag app --> library

    In releases prior to 3.11.0, mixing any version of the JSON library with different JSON_DIAGNOSTICS settings would result in a crashing application. If some_library never passes instances of JSON library types to the application, this scenario became safe in version 3.11.0 and above due to the inline namespace yielding distinct symbol names.

    Limitations

    Neither the compiler nor the linker will issue as much as a warning when translation units – intended to be linked together and that include different versions and/or configurations of the JSON library – exchange and use library types.

    There is an exception when forward declarations are used (i.e., when including json_fwd.hpp) in which case the linker may complain about undefined references.

    Disabling the version component

    Different versions are not necessarily ABI-incompatible, but the project does not actively track changes in the ABI and recommends that all parts of a codebase exchanging library types be built with the same version. Users can, at their own risk, disable the version component of the linline namespace, allowing different versions – but not configurations – to be used in cases where the linker would otherwise output undefined reference errors.

    To do so, define NLOHMANN_JSON_NAMESPACE_NO_VERSION to 1.

    This applies to version 3.11.2 and above only; versions 3.11.0 and 3.11.1 can apply the technique described in the next section to emulate the effect of the NLOHMANN_JSON_NAMESPACE_NO_VERSION macro.

    Use at your own risk

    Disabling the namespace version component and mixing ABI-incompatible versions will result in crashes or incorrect behavior. You have been warned!

    Disabling the inline namespace completely

    When interoperability with code using a pre-3.11.0 version of the library is required, users can, at their own risk restore the old namespace layout by redefining NLOHMANN_JSON_NAMESPACE_BEGIN, NLOHMANN_JSON_NAMESPACE_END as follows:

    #define NLOHMANN_JSON_NAMESPACE_BEGIN  namespace nlohmann {
     #define NLOHMANN_JSON_NAMESPACE_END    }
    -

    Use at your own risk

    Overriding the namespace and mixing ABI-incompatible versions will result in crashes or incorrect behavior. You have been warned!

    Version history

    • Introduced inline namespace (json_v3_11_0[_abi-tag]*) in version 3.11.0.
    • Changed structure of inline namespace in version 3.11.2.
    \ No newline at end of file +

    Use at your own risk

    Overriding the namespace and mixing ABI-incompatible versions will result in crashes or incorrect behavior. You have been warned!

    Version history

    • Introduced inline namespace (json_v3_11_0[_abi-tag]*) in version 3.11.0.
    • Changed structure of inline namespace in version 3.11.2.
    \ No newline at end of file diff --git a/features/object_order/index.html b/features/object_order/index.html index 705c0b2ab..cef6e94dc 100644 --- a/features/object_order/index.html +++ b/features/object_order/index.html @@ -57,4 +57,4 @@ "three": 3 "two": 2, } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/parsing/index.html b/features/parsing/index.html index fcf56e450..ce40454f2 100644 --- a/features/parsing/index.html +++ b/features/parsing/index.html @@ -1 +1 @@ - Parsing - JSON for Modern C++
    \ No newline at end of file + Parsing - JSON for Modern C++
    \ No newline at end of file diff --git a/features/parsing/json_lines/index.html b/features/parsing/json_lines/index.html index 18c5fb8b9..3154fdb02 100644 --- a/features/parsing/json_lines/index.html +++ b/features/parsing/json_lines/index.html @@ -33,4 +33,4 @@ { std::cout << j << std::endl; } -

    with a JSON Lines input does not work, because the parser will try to parse one value after the last one.

    \ No newline at end of file +

    with a JSON Lines input does not work, because the parser will try to parse one value after the last one.

    \ No newline at end of file diff --git a/features/parsing/parse_exceptions/index.html b/features/parsing/parse_exceptions/index.html index a69a4dd72..395e31704 100644 --- a/features/parsing/parse_exceptions/index.html +++ b/features/parsing/parse_exceptions/index.html @@ -63,4 +63,4 @@ last read: "3,]" parsing unsuccessful! parsed value: [1,2,3] -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/parsing/parser_callbacks/index.html b/features/parsing/parser_callbacks/index.html index 477009496..bb826211b 100644 --- a/features/parsing/parser_callbacks/index.html +++ b/features/parsing/parser_callbacks/index.html @@ -90,4 +90,4 @@ "Width": 800 } } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/parsing/sax_interface/index.html b/features/parsing/sax_interface/index.html index 88a5a1b9d..8b3226219 100644 --- a/features/parsing/sax_interface/index.html +++ b/features/parsing/sax_interface/index.html @@ -49,4 +49,4 @@ class sax_t ["json::sax_t"] { // called when a parse error occurs; byte position, the last token, and an exception is passed bool parse_error(std::size_t position, const std::string& last_token, const json::exception& ex); -

    The return value of each function determines whether parsing should proceed.

    To implement your own SAX handler, proceed as follows:

    1. Implement the SAX interface in a class. You can use class nlohmann::json_sax<json> as base class, but you can also use any class where the functions described above are implemented and public.
    2. Create an object of your SAX interface class, e.g. my_sax.
    3. Call bool json::sax_parse(input, &my_sax); where the first parameter can be any input like a string or an input stream and the second parameter is a pointer to your SAX interface.

    Note the sax_parse function only returns a bool indicating the result of the last executed SAX event. It does not return json value - it is up to you to decide what to do with the SAX events. Furthermore, no exceptions are thrown in case of a parse error - it is up to you what to do with the exception object passed to your parse_error implementation. Internally, the SAX interface is used for the DOM parser (class json_sax_dom_parser) as well as the acceptor (json_sax_acceptor), see file json_sax.hpp.

    See also

    \ No newline at end of file +

    The return value of each function determines whether parsing should proceed.

    To implement your own SAX handler, proceed as follows:

    1. Implement the SAX interface in a class. You can use class nlohmann::json_sax<json> as base class, but you can also use any class where the functions described above are implemented and public.
    2. Create an object of your SAX interface class, e.g. my_sax.
    3. Call bool json::sax_parse(input, &my_sax); where the first parameter can be any input like a string or an input stream and the second parameter is a pointer to your SAX interface.

    Note the sax_parse function only returns a bool indicating the result of the last executed SAX event. It does not return json value - it is up to you to decide what to do with the SAX events. Furthermore, no exceptions are thrown in case of a parse error - it is up to you what to do with the exception object passed to your parse_error implementation. Internally, the SAX interface is used for the DOM parser (class json_sax_dom_parser) as well as the acceptor (json_sax_acceptor), see file json_sax.hpp.

    See also

    \ No newline at end of file diff --git a/features/trailing_commas/index.html b/features/trailing_commas/index.html index ec0a679d6..28d840ead 100644 --- a/features/trailing_commas/index.html +++ b/features/trailing_commas/index.html @@ -58,4 +58,4 @@ "Neptune" ] } -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/features/types/index.html b/features/types/index.html index bc45fa3b7..c75c4014d 100644 --- a/features/types/index.html +++ b/features/types/index.html @@ -77,4 +77,4 @@ basic_json .. value_t

    Template arguments< basic_json, // value_type std::allocator<basic_json> // allocator_type > -

    Limits

    RFC 8259 specifies:

    An implementation may set limits on the maximum depth of nesting.

    In this class, the array's limit of nesting is not explicitly constrained. However, a maximum depth of nesting may be introduced by the compiler or runtime environment. A theoretical limit can be queried by calling the max_size function of a JSON array.

    Storage

    Arrays are stored as pointers in a basic_json type. That is, for any access to array values, a pointer of type array_t* must be dereferenced.

    Strings

    RFC 8259 describes JSON strings as follows:

    A string is a sequence of zero or more Unicode characters.

    Unicode values are split by the JSON class into byte-sized characters during deserialization.

    Default type

    With the default values for StringType (std::string), the default value for string_t is std::string.

    Encoding

    Strings are stored in UTF-8 encoding. Therefore, functions like std::string::size() or std::string::length() return the number of bytes in the string rather than the number of characters or glyphs.

    String comparison

    RFC 8259 states:

    Software implementations are typically required to test names of object members for equality. Implementations that transform the textual representation into sequences of Unicode code units and then perform the comparison numerically, code unit by code unit are interoperable in the sense that implementations will agree in all cases on equality or inequality of two strings. For example, implementations that compare strings with escaped characters unconverted may incorrectly find that "a\\b" and "a\u005Cb" are not equal.

    This implementation is interoperable as it does compare strings code unit by code unit.

    Storage

    String values are stored as pointers in a basic_json type. That is, for any access to string values, a pointer of type string_t* must be dereferenced.

    Booleans

    RFC 8259 implicitly describes a boolean as a type which differentiates the two literals true and false.

    Default type

    With the default values for BooleanType (bool), the default value for boolean_t is bool.

    Storage

    Boolean values are stored directly inside a basic_json type.

    Numbers

    See the number handling article for a detailed discussion on how numbers are handled by this library.

    RFC 8259 describes numbers as follows:

    The representation of numbers is similar to that used in most programming languages. A number is represented in base 10 using decimal digits. It contains an integer component that may be prefixed with an optional minus sign, which may be followed by a fraction part and/or an exponent part. Leading zeros are not allowed. (...) Numeric values that cannot be represented in the grammar below (such as Infinity and NaN) are not permitted.

    This description includes both integer and floating-point numbers. However, C++ allows more precise storage if it is known whether the number is a signed integer, an unsigned integer, or a floating-point number. Therefore, three different types, number_integer_t, number_unsigned_t, and number_float_t are used.

    Default types

    With the default values for NumberIntegerType (std::int64_t), the default value for number_integer_t is std::int64_t. With the default values for NumberUnsignedType (std::uint64_t), the default value for number_unsigned_t is std::uint64_t. With the default values for NumberFloatType (double), the default value for number_float_t is double.

    Default behavior

    • The restrictions about leading zeros are not enforced in C++. Instead, leading zeros in integer literals lead to an interpretation as an octal number. Internally, the value will be stored as a decimal number. For instance, the C++ integer literal 010 will be serialized to 8. During deserialization, leading zeros yield an error.
    • Not-a-number (NaN) values will be serialized to null.

    Limits

    RFC 8259 specifies:

    An implementation may set limits on the range and precision of numbers.

    When the default type is used, the maximal integer number that can be stored is 9223372036854775807 (INT64_MAX) and the minimal integer number that can be stored is -9223372036854775808 (INT64_MIN). Integer numbers that are out of range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers will automatically be stored as number_unsigned_t or number_float_t.

    When the default type is used, the maximal unsigned integer number that can be stored is 18446744073709551615 (UINT64_MAX) and the minimal integer number that can be stored is 0. Integer numbers that are out of range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers will automatically be stored as number_integer_t or number_float_t.

    RFC 8259 further states:

    Note that when such software is used, numbers that are integers and are in the range [-2^{53}+1, 2^{53}-1] are interoperable in the sense that implementations will agree exactly on their numeric values.

    As this range is a subrange of the exactly supported range [INT64_MIN, INT64_MAX], this class's integer type is interoperable.

    RFC 8259 states:

    This specification allows implementations to set limits on the range and precision of numbers accepted. Since software that implements IEEE 754-2008 binary64 (double precision) numbers is generally available and widely used, good interoperability can be achieved by implementations that expect no more precision or range than these provide, in the sense that implementations will approximate JSON numbers within the expected precision.

    This implementation does exactly follow this approach, as it uses double precision floating-point numbers. Note values smaller than -1.79769313486232e+308 and values greater than 1.79769313486232e+308 will be stored as NaN internally and be serialized to null.

    Storage

    Integer number values, unsigned integer number values, and floating-point number values are stored directly inside a basic_json type.

    \ No newline at end of file +

    Limits

    RFC 8259 specifies:

    An implementation may set limits on the maximum depth of nesting.

    In this class, the array's limit of nesting is not explicitly constrained. However, a maximum depth of nesting may be introduced by the compiler or runtime environment. A theoretical limit can be queried by calling the max_size function of a JSON array.

    Storage

    Arrays are stored as pointers in a basic_json type. That is, for any access to array values, a pointer of type array_t* must be dereferenced.

    Strings

    RFC 8259 describes JSON strings as follows:

    A string is a sequence of zero or more Unicode characters.

    Unicode values are split by the JSON class into byte-sized characters during deserialization.

    Default type

    With the default values for StringType (std::string), the default value for string_t is std::string.

    Encoding

    Strings are stored in UTF-8 encoding. Therefore, functions like std::string::size() or std::string::length() return the number of bytes in the string rather than the number of characters or glyphs.

    String comparison

    RFC 8259 states:

    Software implementations are typically required to test names of object members for equality. Implementations that transform the textual representation into sequences of Unicode code units and then perform the comparison numerically, code unit by code unit are interoperable in the sense that implementations will agree in all cases on equality or inequality of two strings. For example, implementations that compare strings with escaped characters unconverted may incorrectly find that "a\\b" and "a\u005Cb" are not equal.

    This implementation is interoperable as it does compare strings code unit by code unit.

    Storage

    String values are stored as pointers in a basic_json type. That is, for any access to string values, a pointer of type string_t* must be dereferenced.

    Booleans

    RFC 8259 implicitly describes a boolean as a type which differentiates the two literals true and false.

    Default type

    With the default values for BooleanType (bool), the default value for boolean_t is bool.

    Storage

    Boolean values are stored directly inside a basic_json type.

    Numbers

    See the number handling article for a detailed discussion on how numbers are handled by this library.

    RFC 8259 describes numbers as follows:

    The representation of numbers is similar to that used in most programming languages. A number is represented in base 10 using decimal digits. It contains an integer component that may be prefixed with an optional minus sign, which may be followed by a fraction part and/or an exponent part. Leading zeros are not allowed. (...) Numeric values that cannot be represented in the grammar below (such as Infinity and NaN) are not permitted.

    This description includes both integer and floating-point numbers. However, C++ allows more precise storage if it is known whether the number is a signed integer, an unsigned integer, or a floating-point number. Therefore, three different types, number_integer_t, number_unsigned_t, and number_float_t are used.

    Default types

    With the default values for NumberIntegerType (std::int64_t), the default value for number_integer_t is std::int64_t. With the default values for NumberUnsignedType (std::uint64_t), the default value for number_unsigned_t is std::uint64_t. With the default values for NumberFloatType (double), the default value for number_float_t is double.

    Default behavior

    • The restrictions about leading zeros are not enforced in C++. Instead, leading zeros in integer literals lead to an interpretation as an octal number. Internally, the value will be stored as a decimal number. For instance, the C++ integer literal 010 will be serialized to 8. During deserialization, leading zeros yield an error.
    • Not-a-number (NaN) values will be serialized to null.

    Limits

    RFC 8259 specifies:

    An implementation may set limits on the range and precision of numbers.

    When the default type is used, the maximal integer number that can be stored is 9223372036854775807 (INT64_MAX) and the minimal integer number that can be stored is -9223372036854775808 (INT64_MIN). Integer numbers that are out of range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers will automatically be stored as number_unsigned_t or number_float_t.

    When the default type is used, the maximal unsigned integer number that can be stored is 18446744073709551615 (UINT64_MAX) and the minimal integer number that can be stored is 0. Integer numbers that are out of range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers will automatically be stored as number_integer_t or number_float_t.

    RFC 8259 further states:

    Note that when such software is used, numbers that are integers and are in the range [-2^{53}+1, 2^{53}-1] are interoperable in the sense that implementations will agree exactly on their numeric values.

    As this range is a subrange of the exactly supported range [INT64_MIN, INT64_MAX], this class's integer type is interoperable.

    RFC 8259 states:

    This specification allows implementations to set limits on the range and precision of numbers accepted. Since software that implements IEEE 754-2008 binary64 (double precision) numbers is generally available and widely used, good interoperability can be achieved by implementations that expect no more precision or range than these provide, in the sense that implementations will approximate JSON numbers within the expected precision.

    This implementation does exactly follow this approach, as it uses double precision floating-point numbers. Note values smaller than -1.79769313486232e+308 and values greater than 1.79769313486232e+308 will be stored as NaN internally and be serialized to null.

    Storage

    Integer number values, unsigned integer number values, and floating-point number values are stored directly inside a basic_json type.

    \ No newline at end of file diff --git a/features/types/number_handling/index.html b/features/types/number_handling/index.html index 007a33638..a43d3df22 100644 --- a/features/types/number_handling/index.html +++ b/features/types/number_handling/index.html @@ -54,4 +54,4 @@ val=nan }

    Note this approach also has the advantage that it can react on non-numerical JSON value types such as strings.

    (Example taken from #777.)

    Determine number types

    As the example in Number conversion shows, there are different functions to determine the type of the stored number:

    function unsigned integer signed integer floating-point string
    is_number() true true true false
    is_number_integer() true true false false
    is_number_unsigned() true false false false
    is_number_float() false false true false
    type_name() "number" "number" "number" "string"
    type() number_unsigned number_integer number_float string

    Template number types

    The number types can be changed with template parameters.

    position number type default type possible values
    5 signed integers std::int64_t std::int32_t, std::int16_t, etc.
    6 unsigned integers std::uint64_t std::uint32_t, std::uint16_t, etc.
    7 floating-point double float, long double

    Constraints on number types

    • The type for signed integers must be convertible from long long. The type for floating-point numbers is used in case of overflow.
    • The type for unsigned integers must be convertible from unsigned long long. The type for floating-point numbers is used in case of overflow.
    • The types for signed and unsigned integers must be distinct, see #2573.
    • Only double, float, and long double are supported for floating-point numbers.

    Example

    A basic_json type that uses long double as floating-point type.

    using json_ld = nlohmann::basic_json<std::map, std::vector, std::string, bool,
                                          std::int64_t, std::uint64_t, long double>;
    -

    Note values should then be parsed with json_ld::parse rather than json::parse as the latter would parse floating-point values to double before then converting them to long double.

    \ No newline at end of file +

    Note values should then be parsed with json_ld::parse rather than json::parse as the latter would parse floating-point values to double before then converting them to long double.

    \ No newline at end of file diff --git a/home/architecture/index.html b/home/architecture/index.html index efa0a9d33..d9dc961cd 100644 --- a/home/architecture/index.html +++ b/home/architecture/index.html @@ -52,4 +52,4 @@ template<class T> void from_json(const basic_json& j, T& t); -

    Additional features

    • JSON Pointers
    • Binary formats
    • Custom base class
    • Conversion macros

    Details namespace

    • C++ feature backports
    \ No newline at end of file +

    Additional features

    • JSON Pointers
    • Binary formats
    • Custom base class
    • Conversion macros

    Details namespace

    • C++ feature backports
    \ No newline at end of file diff --git a/home/customers/index.html b/home/customers/index.html index d44e60d87..df304f4b7 100644 --- a/home/customers/index.html +++ b/home/customers/index.html @@ -1 +1 @@ - Customers - JSON for Modern C++

    Customers

    The library is used in multiple projects, applications, operating systems, etc. The list below is not exhaustive, but the result of an internet search. If you know further customers of the library, please let me know.

    Space Exploration

    • Peregrine Lunar Lander Flight 01 - The library was used for payload management in the Peregrine Moon Lander, developed by Astrobotic Technology and launched as part of NASA's Commercial Lunar Payload Services (CLPS) program. After six days in orbit, the spacecraft was intentionally redirected into Earth's atmosphere, where it burned up over the Pacific Ocean on January 18, 2024.

    Automotive

    Gaming and Entertainment

    • Assassin's Creed: Mirage, a stealth-action game set in the Middle East, focusing on the journey of a young assassin with classic parkour and stealth mechanics
    • Chasm: The Rift, a first-person shooter blending horror and adventure, where players navigate dark realms and battle monsters
    • College Football 25, a college football simulation game featuring gameplay that mimics real-life college teams and competitions
    • Concepts, a digital sketching app designed for creative professionals, offering flexible drawing tools for illustration, design, and brainstorming
    • Depthkit, a tool for creating and capturing volumetric video, enabling immersive 3D experiences and interactive content
    • IMG.LY, a platform offering creative tools and SDKs for integrating advanced image and video editing in applications
    • LOOT, a tool for optimizing the load order of game plugins, commonly used in The Elder Scrolls and Fallout series
    • Madden NFL 25, a sports simulation game capturing the excitement of American football with realistic gameplay and team management features
    • Marne, an unofficial private server platform for hosting custom Battlefield 1 game experiences
    • Minecraft, a popular sandbox video game
    • NHL 22, a hockey simulation game offering realistic gameplay, team management, and various modes to enhance the hockey experience
    • Pixelpart, a 2D animation and video compositing software that allows users to create animated graphics and visual effects with a focus on simplicity and ease of use
    • Razer Cortex, a gaming performance optimizer and system booster designed to enhance the gaming experience
    • Red Dead Redemption II, an open-world action-adventure game following an outlaw's story in the late 1800s, emphasizing deep storytelling and immersive gameplay
    • Snapchat, a multimedia messaging and augmented reality app for communication and entertainment
    • Tactics Ogre: Reborn, a tactical role-playing game featuring strategic battles and deep storytelling elements
    • Throne and Liberty, an MMORPG that offers an expansive fantasy world with dynamic gameplay and immersive storytelling
    • Unity Vivox, a communication service that enables voice and text chat functionality in multiplayer games developed with Unity
    • Zool: Redimensioned, a modern reimagining of the classic platformer featuring fast-paced gameplay and vibrant environments
    • immersivetech, a technology company focused on immersive experiences, providing tools and solutions for virtual and augmented reality applications

    Consumer Electronics

    • Audinate, a provider of networked audio solutions specializing in Dante technology, which facilitates high-quality digital audio transport over IP networks
    • Canon CanoScan LIDE, a series of flatbed scanners offering high-resolution image scanning for home and office use
    • Canon PIXMA Printers, a line of all-in-one inkjet printers known for high-quality printing and wireless connectivity
    • Cisco Webex Desk Camera, a video camera designed for professional-quality video conferencing and remote collaboration
    • Philips Hue Personal Wireless Lighting, a smart lighting system for customizable and wireless home illumination
    • Ray-Ban Meta Smart glasses, a pair of smart glasses designed for capturing photos and videos with integrated connectivity and social features
    • Razer Synapse, a unified configuration software enabling hardware customization for Razer devices
    • Siemens SINEMA Remote Connect, a remote connectivity solution for monitoring and managing industrial networks and devices securely
    • Sony PlayStation 4, a gaming console developed by Sony that offers a wide range of games and multimedia entertainment features
    • Sony Virtual Webcam Driver for Remote Camera, a software driver that enables the use of Sony cameras as virtual webcams for video conferencing and streaming

    Operating Systems

    • Apple iOS and macOS, a family of operating systems developed by Apple, including iOS for mobile devices and macOS for desktop computers
    • Google Fuchsia, an open-source operating system developed by Google, designed to be secure, updatable, and adaptable across various devices
    • SerenityOS, an open-source operating system that aims to provide a simple and beautiful user experience with a focus on simplicity and elegance
    • Yocto, a Linux-based build system for creating custom operating systems and software distributions, tailored for embedded devices and IoT applications

    Development Tools and IDEs

    • Accentize SpectralBalance, an adaptive speech analysis tool designed to enhance audio quality by optimizing frequency balance in recordings
    • Arm Compiler for Linux, a software development toolchain for compiling and optimizing applications on Arm-based Linux systems
    • BBEdit, a professional text and code editor for macOS
    • CoderPad, a collaborative coding platform that enables real-time code interviews and assessments for developers; the library is included in every CoderPad instance and can be accessed with a simple #include "json.hpp"
    • Compiler Explorer, a web-based tool that allows users to write, compile, and visualize the assembly output of code in various programming languages; the library is readily available and accessible with the directive #include <nlohmann/json.hpp>.
    • GitHub CodeQL, a code analysis tool used for identifying security vulnerabilities and bugs in software through semantic queries
    • Hex-Rays, a reverse engineering toolset for analyzing and decompiling binaries, primarily used for security research and vulnerability analysis
    • ImHex, a hex editor designed for reverse engineering, providing advanced features for data analysis and manipulation
    • Intel GPA Framework, a suite of cross-platform tools for capturing, analyzing, and optimizing graphics applications across different APIs
    • Intopix, a provider of advanced image processing and compression solutions used in software development and AV workflows
    • MKVToolNix, a set of tools for creating, editing, and inspecting MKV (Matroska) multimedia container files
    • Meta Yoga, a layout engine that facilitates flexible and efficient user interface design across multiple platforms
    • NVIDIA Nsight Compute, a performance analysis tool for CUDA applications that provides detailed insights into GPU performance metrics
    • Notepad++, a free source code editor that supports various programming languages
    • OpenRGB, an open source RGB lighting control that doesn't depend on manufacturer software
    • OpenTelemetry C++, a library for collecting and exporting observability data in C++, enabling developers to implement distributed tracing and metrics in their application
    • Qt Creator, an IDE for developing applications using the Qt application framework
    • Scanbot SDK, a software development kit (SDK) that provides tools for integrating advanced document scanning and barcode scanning capabilities into applications

    Machine Learning and AI

    • Apple Core ML Tools, a set of tools for converting and configuring machine learning models for deployment in Apple's Core ML framework
    • Avular Mobile Robotics, a platform for developing and deploying mobile robotics solutions
    • Google gemma.cpp, a lightweight C++ inference engine designed for running AI models from the Gemma family
    • llama.cpp, a C++ library designed for efficient inference of large language models (LLMs), enabling streamlined integration into applications
    • MLX, an array framework for machine learning on Apple Silicon
    • Mozilla llamafile, a tool designed for distributing and executing large language models (LLMs) efficiently using a single file format
    • NVIDIA ACE, a suite of real-time AI solutions designed for the development of interactive avatars and digital human applications, enabling scalable and sophisticated user interactions
    • Peer, a platform offering personalized AI assistants for interactive learning and creative collaboration
    • stable-diffusion.cpp, a C++ implementation of the Stable Diffusion image generation model
    • TanvasTouch, a software development kit (SDK) that enables developers to create tactile experiences on touchscreens, allowing users to feel textures and physical sensations in a digital environment
    • TensorFlow, a machine learning framework that facilitates the development and training of models, supporting data serialization and efficient data exchange between components

    Scientific Research and Analysis

    • BLACK, a bounded linear temporal logic (LTL) satisfiability checker
    • CERN Atlas Athena, a software framework used in the ATLAS experiment at the Large Hadron Collider (LHC) for performance monitoring
    • ICU, the International Components for Unicode, a mature library for software globalization and multilingual support
    • KAMERA, a platform for synchronized data collection and real-time deep learning to map marine species like polar bears and seals, aiding Arctic ecosystem research
    • KiCad, a free and open-source software suite for electronic design automation
    • Maple, a symbolic and numeric computing environment for advanced mathematical modeling and analysis
    • MeVisLab, a software framework for medical image processing and visualization.
    • OpenPMD API, a versatile programming interface for accessing and managing scientific data, designed to facilitate the efficient storage, retrieval, and sharing of simulation data across various applications and platforms
    • ParaView, an open-source tool for large-scale data visualization and analysis across various scientific domains
    • QGIS, a free and open-source geographic information system (GIS) application that allows users to create, edit, visualize, and analyze geospatial data across a variety of formats
    • VTK, a software library for 3D computer graphics, image processing, and visualization
    • VolView, a lightweight application for interactive visualization and analysis of 3D medical imaging data.

    Business and Productivity Software

    • ArcGIS PRO, a desktop geographic information system (GIS) application developed by Esri for mapping and spatial analysis
    • Autodesk Desktop, a software platform developed by Autodesk for creating and managing desktop applications and services
    • Check Point, a cybersecurity company specializing in threat prevention and network security solutions, offering a range of products designed to protect enterprises from cyber threats and ensure data integrity
    • Microsoft Office for Mac, a suite of productivity applications developed by Microsoft for macOS, including tools for word processing, spreadsheets, and presentations
    • Microsoft Teams, a team collaboration application offering workspace chat and video conferencing, file storage, and integration of proprietary and third-party applications and services
    • Nexthink Infinity, a digital employee experience management platform for monitoring and improving IT performance
    • Sophos Connect Client, a secure VPN client from Sophos that allows remote users to connect to their corporate network, ensuring secure access to resources and data
    • Stonebranch, a cloud-based cybersecurity solution that integrates backup, disaster recovery, and cybersecurity features to protect data and ensure business continuity for organizations
    • Tablecruncher, a data analysis tool that allows users to import, analyze, and visualize spreadsheet data, offering interactive features for better insights and decision-making
    • magicplan, a mobile application for creating floor plans and interior designs using augmented reality

    Databases and Big Data

    • ADIOS2, a data management framework designed for high-performance input and output operations
    • Cribl Stream, a real-time data processing platform that enables organizations to collect, route, and transform observability data, enhancing visibility and insights into their systems
    • DB Browser for SQLite, a visual open-source tool for creating, designing, and editing SQLite database files
    • MySQL Connector/C++, a C++ library for connecting and interacting with MySQL databases
    • MySQL NDB Cluster, a distributed database system that provides high availability and scalability for MySQL databases
    • MySQL Shell, an advanced client and code editor for interacting with MySQL servers, supporting SQL, Python, and JavaScript
    • PrestoDB, a distributed SQL query engine designed for large-scale data analytics, originally developed by Facebook
    • ROOT Data Analysis Framework, an open-source data analysis framework widely used in high-energy physics and other fields for data processing and visualization
    • WiredTiger, a high-performance storage engine for databases, offering support for compression, concurrency, and checkpointing

    Simulation and Modeling

    • Arcturus HoloSuite, a software toolset for capturing, editing, and streaming volumetric video, featuring advanced compression technologies for high-quality 3D content creation
    • azul, a fast and efficient 3D city model viewer designed for visualizing urban environments and spatial data
    • Blender, a free and open-source 3D creation suite for modeling, animation, rendering, and more
    • cpplot, a library for creating interactive graphs and charts in C++, which can be viewed in web browsers
    • Foundry Nuke, a powerful node-based digital compositing and visual effects application used in film and television post-production
    • GAMS, a high-performance mathematical modeling system for optimization and decision support
    • Kitware SMTK, a software toolkit for managing simulation models and workflows in scientific and engineering applications
    • M-Star, a computational fluid dynamics software for simulating and analyzing fluid flow
    • MapleSim CAD Toolbox, a software extension for MapleSim that integrates CAD models, allowing users to import, manipulate, and analyze 3D CAD data within the MapleSim environment for enhanced modeling and simulation
    • NVIDIA Omniverse, a platform for 3D content creation and collaboration that enables real-time simulations and interactive experiences across various industries
    • Pixar Renderman, a photorealistic 3D rendering software developed by Pixar, widely used in the film industry for creating high-quality visual effects and animations
    • ROS - Robot Operating System, a set of software libraries and tools that assist in developing robot applications
    • UBS, a multinational financial services and banking company

    Enterprise and Cloud Applications

    • Acronis Cyber Protect Cloud, an all-in-one data protection solution that combines backup, disaster recovery, and cybersecurity to safeguard business data from threats like ransomware
    • Baereos, a backup solution that provides data protection and recovery options for various environments, including physical and virtual systems
    • Bitdefender Home Scanner, a tool from Bitdefender that scans devices for malware and security threats, providing a safeguard against potential online dangers
    • Citrix Provisioning, a solution that streamlines the delivery of virtual desktops and applications by allowing administrators to manage and provision resources efficiently across multiple environments
    • Citrix Virtual Apps and Desktops, a solution from Citrix that delivers virtual apps and desktops
    • Cyberarc, a security solution that specializes in privileged access management, enabling organizations to control and monitor access to critical systems and data, thereby enhancing overall cybersecurity posture
    • Egnyte Desktop, a secure cloud storage solution designed for businesses, enabling file sharing, collaboration, and data management across teams while ensuring compliance and data protection
    • Elster, a digital platform developed by German tax authorities for secure and efficient electronic tax filing and management using secunet protect4use
    • Ethereum Solidity, a high-level, object-oriented programming language designed for implementing smart contracts on the Ethereum platform
    • Inciga, a monitoring tool for IT infrastructure, designed to provide insights into system performance and availability through customizable dashboards and alerts
    • Intel Accelerator Management Daemon for VMware ESXi, a management tool designed for monitoring and controlling Intel hardware accelerators within VMware ESXi environments, optimizing performance and resource allocation
    • Juniper Identity Management Service
    • Microsoft Azure IoT SDK, a collection of tools and libraries to help developers connect, build, and deploy Internet of Things (IoT) solutions on the Azure cloud platform
    • Microsoft WinGet, a command-line utility included in the Windows Package Manager
    • plexusAV, a high-performance AV-over-IP transceiver device capable of video encoding and decoding using the IPMX standard
    • Pointr, a platform for indoor positioning and navigation solutions, offering tools and SDKs for developers to create location-based applications
    • secunet protect4use, a secure, passwordless multifactor authentication solution that transforms smartphones into digital keyrings, ensuring high security for online services and digital identities
    • Sencore MRD 7000, a professional multi-channel receiver and decoder supporting UHD and HD stream decoding
    \ No newline at end of file + Customers - JSON for Modern C++

    Customers

    The library is used in multiple projects, applications, operating systems, etc. The list below is not exhaustive, but the result of an internet search. If you know further customers of the library, please let me know.

    Space Exploration

    • Peregrine Lunar Lander Flight 01 - The library was used for payload management in the Peregrine Moon Lander, developed by Astrobotic Technology and launched as part of NASA's Commercial Lunar Payload Services (CLPS) program. After six days in orbit, the spacecraft was intentionally redirected into Earth's atmosphere, where it burned up over the Pacific Ocean on January 18, 2024.

    Automotive

    Gaming and Entertainment

    • Assassin's Creed: Mirage, a stealth-action game set in the Middle East, focusing on the journey of a young assassin with classic parkour and stealth mechanics
    • Chasm: The Rift, a first-person shooter blending horror and adventure, where players navigate dark realms and battle monsters
    • College Football 25, a college football simulation game featuring gameplay that mimics real-life college teams and competitions
    • Concepts, a digital sketching app designed for creative professionals, offering flexible drawing tools for illustration, design, and brainstorming
    • Depthkit, a tool for creating and capturing volumetric video, enabling immersive 3D experiences and interactive content
    • IMG.LY, a platform offering creative tools and SDKs for integrating advanced image and video editing in applications
    • LOOT, a tool for optimizing the load order of game plugins, commonly used in The Elder Scrolls and Fallout series
    • Madden NFL 25, a sports simulation game capturing the excitement of American football with realistic gameplay and team management features
    • Marne, an unofficial private server platform for hosting custom Battlefield 1 game experiences
    • Minecraft, a popular sandbox video game
    • NHL 22, a hockey simulation game offering realistic gameplay, team management, and various modes to enhance the hockey experience
    • Pixelpart, a 2D animation and video compositing software that allows users to create animated graphics and visual effects with a focus on simplicity and ease of use
    • Razer Cortex, a gaming performance optimizer and system booster designed to enhance the gaming experience
    • Red Dead Redemption II, an open-world action-adventure game following an outlaw's story in the late 1800s, emphasizing deep storytelling and immersive gameplay
    • Snapchat, a multimedia messaging and augmented reality app for communication and entertainment
    • Tactics Ogre: Reborn, a tactical role-playing game featuring strategic battles and deep storytelling elements
    • Throne and Liberty, an MMORPG that offers an expansive fantasy world with dynamic gameplay and immersive storytelling
    • Unity Vivox, a communication service that enables voice and text chat functionality in multiplayer games developed with Unity
    • Zool: Redimensioned, a modern reimagining of the classic platformer featuring fast-paced gameplay and vibrant environments
    • immersivetech, a technology company focused on immersive experiences, providing tools and solutions for virtual and augmented reality applications

    Consumer Electronics

    • Audinate, a provider of networked audio solutions specializing in Dante technology, which facilitates high-quality digital audio transport over IP networks
    • Canon CanoScan LIDE, a series of flatbed scanners offering high-resolution image scanning for home and office use
    • Canon PIXMA Printers, a line of all-in-one inkjet printers known for high-quality printing and wireless connectivity
    • Cisco Webex Desk Camera, a video camera designed for professional-quality video conferencing and remote collaboration
    • Philips Hue Personal Wireless Lighting, a smart lighting system for customizable and wireless home illumination
    • Ray-Ban Meta Smart glasses, a pair of smart glasses designed for capturing photos and videos with integrated connectivity and social features
    • Razer Synapse, a unified configuration software enabling hardware customization for Razer devices
    • Siemens SINEMA Remote Connect, a remote connectivity solution for monitoring and managing industrial networks and devices securely
    • Sony PlayStation 4, a gaming console developed by Sony that offers a wide range of games and multimedia entertainment features
    • Sony Virtual Webcam Driver for Remote Camera, a software driver that enables the use of Sony cameras as virtual webcams for video conferencing and streaming

    Operating Systems

    • Apple iOS and macOS, a family of operating systems developed by Apple, including iOS for mobile devices and macOS for desktop computers
    • Google Fuchsia, an open-source operating system developed by Google, designed to be secure, updatable, and adaptable across various devices
    • SerenityOS, an open-source operating system that aims to provide a simple and beautiful user experience with a focus on simplicity and elegance
    • Yocto, a Linux-based build system for creating custom operating systems and software distributions, tailored for embedded devices and IoT applications

    Development Tools and IDEs

    • Accentize SpectralBalance, an adaptive speech analysis tool designed to enhance audio quality by optimizing frequency balance in recordings
    • Arm Compiler for Linux, a software development toolchain for compiling and optimizing applications on Arm-based Linux systems
    • BBEdit, a professional text and code editor for macOS
    • CoderPad, a collaborative coding platform that enables real-time code interviews and assessments for developers; the library is included in every CoderPad instance and can be accessed with a simple #include "json.hpp"
    • Compiler Explorer, a web-based tool that allows users to write, compile, and visualize the assembly output of code in various programming languages; the library is readily available and accessible with the directive #include <nlohmann/json.hpp>.
    • GitHub CodeQL, a code analysis tool used for identifying security vulnerabilities and bugs in software through semantic queries
    • Hex-Rays, a reverse engineering toolset for analyzing and decompiling binaries, primarily used for security research and vulnerability analysis
    • ImHex, a hex editor designed for reverse engineering, providing advanced features for data analysis and manipulation
    • Intel GPA Framework, a suite of cross-platform tools for capturing, analyzing, and optimizing graphics applications across different APIs
    • Intopix, a provider of advanced image processing and compression solutions used in software development and AV workflows
    • MKVToolNix, a set of tools for creating, editing, and inspecting MKV (Matroska) multimedia container files
    • Meta Yoga, a layout engine that facilitates flexible and efficient user interface design across multiple platforms
    • NVIDIA Nsight Compute, a performance analysis tool for CUDA applications that provides detailed insights into GPU performance metrics
    • Notepad++, a free source code editor that supports various programming languages
    • OpenRGB, an open source RGB lighting control that doesn't depend on manufacturer software
    • OpenTelemetry C++, a library for collecting and exporting observability data in C++, enabling developers to implement distributed tracing and metrics in their application
    • Qt Creator, an IDE for developing applications using the Qt application framework
    • Scanbot SDK, a software development kit (SDK) that provides tools for integrating advanced document scanning and barcode scanning capabilities into applications

    Machine Learning and AI

    • Apple Core ML Tools, a set of tools for converting and configuring machine learning models for deployment in Apple's Core ML framework
    • Avular Mobile Robotics, a platform for developing and deploying mobile robotics solutions
    • Google gemma.cpp, a lightweight C++ inference engine designed for running AI models from the Gemma family
    • llama.cpp, a C++ library designed for efficient inference of large language models (LLMs), enabling streamlined integration into applications
    • MLX, an array framework for machine learning on Apple Silicon
    • Mozilla llamafile, a tool designed for distributing and executing large language models (LLMs) efficiently using a single file format
    • NVIDIA ACE, a suite of real-time AI solutions designed for the development of interactive avatars and digital human applications, enabling scalable and sophisticated user interactions
    • Peer, a platform offering personalized AI assistants for interactive learning and creative collaboration
    • stable-diffusion.cpp, a C++ implementation of the Stable Diffusion image generation model
    • TanvasTouch, a software development kit (SDK) that enables developers to create tactile experiences on touchscreens, allowing users to feel textures and physical sensations in a digital environment
    • TensorFlow, a machine learning framework that facilitates the development and training of models, supporting data serialization and efficient data exchange between components

    Scientific Research and Analysis

    • BLACK, a bounded linear temporal logic (LTL) satisfiability checker
    • CERN Atlas Athena, a software framework used in the ATLAS experiment at the Large Hadron Collider (LHC) for performance monitoring
    • ICU, the International Components for Unicode, a mature library for software globalization and multilingual support
    • KAMERA, a platform for synchronized data collection and real-time deep learning to map marine species like polar bears and seals, aiding Arctic ecosystem research
    • KiCad, a free and open-source software suite for electronic design automation
    • Maple, a symbolic and numeric computing environment for advanced mathematical modeling and analysis
    • MeVisLab, a software framework for medical image processing and visualization.
    • OpenPMD API, a versatile programming interface for accessing and managing scientific data, designed to facilitate the efficient storage, retrieval, and sharing of simulation data across various applications and platforms
    • ParaView, an open-source tool for large-scale data visualization and analysis across various scientific domains
    • QGIS, a free and open-source geographic information system (GIS) application that allows users to create, edit, visualize, and analyze geospatial data across a variety of formats
    • VTK, a software library for 3D computer graphics, image processing, and visualization
    • VolView, a lightweight application for interactive visualization and analysis of 3D medical imaging data.

    Business and Productivity Software

    • ArcGIS PRO, a desktop geographic information system (GIS) application developed by Esri for mapping and spatial analysis
    • Autodesk Desktop, a software platform developed by Autodesk for creating and managing desktop applications and services
    • Check Point, a cybersecurity company specializing in threat prevention and network security solutions, offering a range of products designed to protect enterprises from cyber threats and ensure data integrity
    • Microsoft Office for Mac, a suite of productivity applications developed by Microsoft for macOS, including tools for word processing, spreadsheets, and presentations
    • Microsoft Teams, a team collaboration application offering workspace chat and video conferencing, file storage, and integration of proprietary and third-party applications and services
    • Nexthink Infinity, a digital employee experience management platform for monitoring and improving IT performance
    • Sophos Connect Client, a secure VPN client from Sophos that allows remote users to connect to their corporate network, ensuring secure access to resources and data
    • Stonebranch, a cloud-based cybersecurity solution that integrates backup, disaster recovery, and cybersecurity features to protect data and ensure business continuity for organizations
    • Tablecruncher, a data analysis tool that allows users to import, analyze, and visualize spreadsheet data, offering interactive features for better insights and decision-making
    • magicplan, a mobile application for creating floor plans and interior designs using augmented reality

    Databases and Big Data

    • ADIOS2, a data management framework designed for high-performance input and output operations
    • Cribl Stream, a real-time data processing platform that enables organizations to collect, route, and transform observability data, enhancing visibility and insights into their systems
    • DB Browser for SQLite, a visual open-source tool for creating, designing, and editing SQLite database files
    • MySQL Connector/C++, a C++ library for connecting and interacting with MySQL databases
    • MySQL NDB Cluster, a distributed database system that provides high availability and scalability for MySQL databases
    • MySQL Shell, an advanced client and code editor for interacting with MySQL servers, supporting SQL, Python, and JavaScript
    • PrestoDB, a distributed SQL query engine designed for large-scale data analytics, originally developed by Facebook
    • ROOT Data Analysis Framework, an open-source data analysis framework widely used in high-energy physics and other fields for data processing and visualization
    • WiredTiger, a high-performance storage engine for databases, offering support for compression, concurrency, and checkpointing

    Simulation and Modeling

    • Arcturus HoloSuite, a software toolset for capturing, editing, and streaming volumetric video, featuring advanced compression technologies for high-quality 3D content creation
    • azul, a fast and efficient 3D city model viewer designed for visualizing urban environments and spatial data
    • Blender, a free and open-source 3D creation suite for modeling, animation, rendering, and more
    • cpplot, a library for creating interactive graphs and charts in C++, which can be viewed in web browsers
    • Foundry Nuke, a powerful node-based digital compositing and visual effects application used in film and television post-production
    • GAMS, a high-performance mathematical modeling system for optimization and decision support
    • Kitware SMTK, a software toolkit for managing simulation models and workflows in scientific and engineering applications
    • M-Star, a computational fluid dynamics software for simulating and analyzing fluid flow
    • MapleSim CAD Toolbox, a software extension for MapleSim that integrates CAD models, allowing users to import, manipulate, and analyze 3D CAD data within the MapleSim environment for enhanced modeling and simulation
    • NVIDIA Omniverse, a platform for 3D content creation and collaboration that enables real-time simulations and interactive experiences across various industries
    • Pixar Renderman, a photorealistic 3D rendering software developed by Pixar, widely used in the film industry for creating high-quality visual effects and animations
    • ROS - Robot Operating System, a set of software libraries and tools that assist in developing robot applications
    • UBS, a multinational financial services and banking company

    Enterprise and Cloud Applications

    • Acronis Cyber Protect Cloud, an all-in-one data protection solution that combines backup, disaster recovery, and cybersecurity to safeguard business data from threats like ransomware
    • Baereos, a backup solution that provides data protection and recovery options for various environments, including physical and virtual systems
    • Bitdefender Home Scanner, a tool from Bitdefender that scans devices for malware and security threats, providing a safeguard against potential online dangers
    • Citrix Provisioning, a solution that streamlines the delivery of virtual desktops and applications by allowing administrators to manage and provision resources efficiently across multiple environments
    • Citrix Virtual Apps and Desktops, a solution from Citrix that delivers virtual apps and desktops
    • Cyberarc, a security solution that specializes in privileged access management, enabling organizations to control and monitor access to critical systems and data, thereby enhancing overall cybersecurity posture
    • Egnyte Desktop, a secure cloud storage solution designed for businesses, enabling file sharing, collaboration, and data management across teams while ensuring compliance and data protection
    • Elster, a digital platform developed by German tax authorities for secure and efficient electronic tax filing and management using secunet protect4use
    • Ethereum Solidity, a high-level, object-oriented programming language designed for implementing smart contracts on the Ethereum platform
    • Inciga, a monitoring tool for IT infrastructure, designed to provide insights into system performance and availability through customizable dashboards and alerts
    • Intel Accelerator Management Daemon for VMware ESXi, a management tool designed for monitoring and controlling Intel hardware accelerators within VMware ESXi environments, optimizing performance and resource allocation
    • Juniper Identity Management Service
    • Microsoft Azure IoT SDK, a collection of tools and libraries to help developers connect, build, and deploy Internet of Things (IoT) solutions on the Azure cloud platform
    • Microsoft WinGet, a command-line utility included in the Windows Package Manager
    • plexusAV, a high-performance AV-over-IP transceiver device capable of video encoding and decoding using the IPMX standard
    • Pointr, a platform for indoor positioning and navigation solutions, offering tools and SDKs for developers to create location-based applications
    • secunet protect4use, a secure, passwordless multifactor authentication solution that transforms smartphones into digital keyrings, ensuring high security for online services and digital identities
    • Sencore MRD 7000, a professional multi-channel receiver and decoder supporting UHD and HD stream decoding
    \ No newline at end of file diff --git a/home/design_goals/index.html b/home/design_goals/index.html index f2148fce7..75ee5c43d 100644 --- a/home/design_goals/index.html +++ b/home/design_goals/index.html @@ -1 +1 @@ - Design goals - JSON for Modern C++

    Design goals

    There are myriads of JSON libraries out there, and each may even have its reason to exist. Our class had these design goals:

    • Intuitive syntax. In languages such as Python, JSON feels like a first-class data type. We used all the operator magic of modern C++ to achieve the same feeling in your code.

    • Trivial integration. Our whole code consists of a single header file json.hpp. That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings.

    • Serious testing. Our class is heavily unit-tested and covers 100% of the code, including all exceptional behavior. Furthermore, we checked with Valgrind and the Clang Sanitizers that there are no memory leaks. Google OSS-Fuzz additionally runs fuzz tests against all parsers 24/7, effectively executing billions of tests so far. To maintain high quality, the project is following the Core Infrastructure Initiative (CII) best practices.

    Other aspects were not so important to us:

    • Memory efficiency. Each JSON object has an overhead of one pointer (the maximal size of a union) and one enumeration element (1 byte). The default generalization uses the following C++ data types: std::string for strings, int64_t, uint64_t or double for numbers, std::map for objects, std::vector for arrays, and bool for Booleans. However, you can template the generalized class basic_json to your needs.

    • Speed. There are certainly faster JSON libraries out there. However, if your goal is to speed up your development by adding JSON support with a single header, then this library is the way to go. If you know how to use a std::vector or std::map, you are already set.

    See the contribution guidelines for more information.

    \ No newline at end of file + Design goals - JSON for Modern C++

    Design goals

    There are myriads of JSON libraries out there, and each may even have its reason to exist. Our class had these design goals:

    • Intuitive syntax. In languages such as Python, JSON feels like a first-class data type. We used all the operator magic of modern C++ to achieve the same feeling in your code.

    • Trivial integration. Our whole code consists of a single header file json.hpp. That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings.

    • Serious testing. Our class is heavily unit-tested and covers 100% of the code, including all exceptional behavior. Furthermore, we checked with Valgrind and the Clang Sanitizers that there are no memory leaks. Google OSS-Fuzz additionally runs fuzz tests against all parsers 24/7, effectively executing billions of tests so far. To maintain high quality, the project is following the Core Infrastructure Initiative (CII) best practices.

    Other aspects were not so important to us:

    • Memory efficiency. Each JSON object has an overhead of one pointer (the maximal size of a union) and one enumeration element (1 byte). The default generalization uses the following C++ data types: std::string for strings, int64_t, uint64_t or double for numbers, std::map for objects, std::vector for arrays, and bool for Booleans. However, you can template the generalized class basic_json to your needs.

    • Speed. There are certainly faster JSON libraries out there. However, if your goal is to speed up your development by adding JSON support with a single header, then this library is the way to go. If you know how to use a std::vector or std::map, you are already set.

    See the contribution guidelines for more information.

    \ No newline at end of file diff --git a/home/exceptions/index.html b/home/exceptions/index.html index 5e52fcce1..568d1b6a9 100644 --- a/home/exceptions/index.html +++ b/home/exceptions/index.html @@ -281,4 +281,4 @@ exception id: 401 exception id: 501

    json.exception.other_error.501

    A JSON Patch operation 'test' failed. The unsuccessful operation is also printed.

    Example message

    Executing {"op":"test", "path":"/baz", "value":"bar"} on {"baz": "qux"}:

    [json.exception.other_error.501] unsuccessful: {"op":"test","path":"/baz","value":"bar"}
     

    json.exception.other_error.502

    This exception is thrown when a null pointer is passed as SAX event listener to the sax_parse function.

    Example message

    [json.exception.other_error.502] SAX handler must not be null
    -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/home/faq/index.html b/home/faq/index.html index 0e55999b6..85baee4e2 100644 --- a/home/faq/index.html +++ b/home/faq/index.html @@ -26,4 +26,4 @@

    Exceptions

    Parsing without exceptions

    Question

    Is it possible to indicate a parse error without throwing an exception?

    Yes, see Parsing and exceptions.

    Key name in exceptions

    Question

    Can I get the key of the object item that caused an exception?

    Yes, you can. Please define the symbol JSON_DIAGNOSTICS to get extended diagnostics messages.

    Serialization issues

    Number precision

    Question

    • It seems that precision is lost when serializing a double.
    • Can I change the precision for floating-point serialization?

    The library uses std::numeric_limits<number_float_t>::digits10 (15 for IEEE doubles) digits for serialization. This value is sufficient to guarantee roundtripping. If one uses more than this number of digits of precision, then string -> value -> string is not guaranteed to round-trip.

    cppreference.com

    The value of std::numeric_limits<T>::digits10 is the number of base-10 digits that can be represented by the type T without change, that is, any number with this many significant decimal digits can be converted to a value of type T and back to decimal form, without change due to rounding or overflow.

    Tip

    The website https://float.exposed gives a good insight into the internal storage of floating-point numbers.

    See this section on the library's number handling for more information.

    Compilation issues

    Android SDK

    Question

    Why does the code not compile with Android SDK?

    Android defaults to using very old compilers and C++ libraries. To fix this, add the following to your Application.mk. This will switch to the LLVM C++ library, the Clang compiler, and enable C++11 and other features disabled by default.

    APP_STL := c++_shared
     NDK_TOOLCHAIN_VERSION := clang3.6
     APP_CPPFLAGS += -frtti -fexceptions
    -

    The code compiles successfully with Android NDK, Revision 9 - 11 (and possibly later) and CrystaX's Android NDK version 10.

    Missing STL function

    Questions

    • Why do I get a compilation error 'to_string' is not a member of 'std' (or similarly, for strtod or strtof)?
    • Why does the code not compile with MinGW or Android SDK?

    This is not an issue with the code, but rather with the compiler itself. On Android, see above to build with a newer environment. For MinGW, please refer to this site and this discussion for information on how to fix this bug. For Android NDK using APP_STL := gnustl_static, please refer to this discussion.

    \ No newline at end of file +

    The code compiles successfully with Android NDK, Revision 9 - 11 (and possibly later) and CrystaX's Android NDK version 10.

    Missing STL function

    Questions

    • Why do I get a compilation error 'to_string' is not a member of 'std' (or similarly, for strtod or strtof)?
    • Why does the code not compile with MinGW or Android SDK?

    This is not an issue with the code, but rather with the compiler itself. On Android, see above to build with a newer environment. For MinGW, please refer to this site and this discussion for information on how to fix this bug. For Android NDK using APP_STL := gnustl_static, please refer to this discussion.

    \ No newline at end of file diff --git a/home/license/index.html b/home/license/index.html index e318a7e6f..de1434989 100644 --- a/home/license/index.html +++ b/home/license/index.html @@ -1 +1 @@ - License - JSON for Modern C++

    License

    The class is licensed under the MIT License:

    Copyright © 2013-2026 Niels Lohmann

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    The class contains the UTF-8 Decoder from Bjoern Hoehrmann which is licensed under the MIT License (see above). Copyright © 2008-2009 Björn Hoehrmann bjoern@hoehrmann.de

    The class contains a slightly modified version of the Grisu2 algorithm from Florian Loitsch which is licensed under the MIT License (see above). Copyright © 2009 Florian Loitsch

    The class contains a copy of Hedley from Evan Nemerson which is licensed as CC0-1.0.

    \ No newline at end of file + License - JSON for Modern C++

    License

    The class is licensed under the MIT License:

    Copyright © 2013-2026 Niels Lohmann

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


    The class contains the UTF-8 Decoder from Bjoern Hoehrmann which is licensed under the MIT License (see above). Copyright © 2008-2009 Björn Hoehrmann bjoern@hoehrmann.de

    The class contains a slightly modified version of the Grisu2 algorithm from Florian Loitsch which is licensed under the MIT License (see above). Copyright © 2009 Florian Loitsch

    The class contains a copy of Hedley from Evan Nemerson which is licensed as CC0-1.0.

    \ No newline at end of file diff --git a/home/releases/index.html b/home/releases/index.html index 2e8ed0306..62dd51ad3 100644 --- a/home/releases/index.html +++ b/home/releases/index.html @@ -7,4 +7,4 @@ j << ss;

    or

    json j;
     ss >> j;
    -

    v2.1.1

    Files

    Release date: 2017-02-25 SHA-256: faa2321beb1aa7416d035e7417fcfa59692ac3d8c202728f9bcc302e2d558f57

    Summary

    This release fixes a locale-related bug in the parser. To do so, the whole number handling (lexer, parser, and also the serialization) have been overworked. Furthermore, a lot of small changes added up that were added to this release. All changes are backward-compatible.

    Changes

    • 🐛 Locales that have a different character than . as decimal separator (e.g., the Norwegian locale nb_NO.UTF-8) led to truncated number parsing or parse errors. The library now has been fixed to work with any locale. Note that . is still the only valid decimal separator for JSON input.
    • 🐛 Numbers like 1.0 were correctly parsed as floating-point number, but serialized as integer (1). Now, floating-point numbers correctly round trip.
    • 🐛 Parsing incorrect JSON numbers with leading 0 (0123) could yield a buffer overflow. This is fixed now by detecting such errors directly by the lexer.
    • 🐛 Constructing a JSON value from a pointer was incorrectly interpreted as a Boolean; such code will now yield a compiler error.
    • 🐛 Comparing a JSON number with 0 led to a comparison with null. This is fixed now.
    • 🐛 All throw calls are now wrapped in macros.
    • 🔒 Starting during the preparation of this release (since 8 February 2017), commits and released files are cryptographically signed with this GPG key. Previous releases have also been signed.
    • ✨ The parser for MessagePack and CBOR now supports an optional start index parameter to define a byte offset for the parser.
    • 🚨 Some more warnings have been fixed. With Clang, the code compiles without warnings with -Weverything (well, it needs -Wno-documentation-unknown-command and -Wno-deprecated-declarations, but you get the point).
    • 🔨 The code can be compiled easier with many Android NDKs by avoiding macros like UINT8_MAX which previously required defining a preprocessor macro for compilation.
    • ⚡ The unit tests now compile two times faster.
    • ➕ Cotire is used to speed up the build.
    • ✏ Fixed a lot of typos in the documentation.
    • 📝 Added a section to the README file that lists all used third-party code/tools.
    • 📝 Added a note on constructing a string value vs. parsing.
    • ✅ The test suite now contains 11202597 unit tests.
    • 📝 Improved the Doxygen documentation by shortening the template parameters of class basic_json.
    • 👷 Removed Doozer.
    • 👷 Added Codacity.
    • ⬆ Upgraded Catch to version 1.7.2.

    v2.1.0

    Files

    • Release date: 2017-01-28
    • SHA-256: a571dee92515b685784fd527e38405cf3f5e13e96edbfe3f03d6df2e363a767b

    Summary

    This release introduces a means to convert from/to user-defined types. The release is backwards compatible.

    conversion

    Changes

    • ✨ The library now offers an elegant way to convert from and to arbitrary value types. All you need to do is to implement two functions: to_json and from_json. Then, a conversion is as simple as putting a = between variables. See the README for more information and examples.
    • ✨ Exceptions can now be switched off. This can be done by defining the preprocessor symbol JSON_NOEXCEPTION or by passing -fno-exceptions to your compiler. In case the code would usually thrown an exception, abort() is now called.
    • ✨ Information on the library can be queried with the new (static) function meta() which returns a JSON object with information on the version, compiler, and platform. See the documentation for an example.
    • 🐛 A bug in the CBOR parser was fixed which led to a buffer overflow.
    • ✨ The function type_name() is now public. It allows to query the type of a JSON value as string.
    • ✅ Added the Big List of Naughty Strings as test case.
    • ⬆ Updated to Catch v1.6.0.
    • 📝 Some typos in the documentation have been fixed.

    v2.0.10

    Files

    • Release date: 2017-01-02
    • SHA-256: ec27d4e74e9ce0f78066389a70724afd07f10761009322dc020656704ad5296d

    Summary

    This release fixes several security-relevant bugs in the MessagePack and CBOR parsers. The fixes are backwards compatible.

    Changes

    • 🐛 Fixed a lot of bugs in the CBOR and MesssagePack parsers. These bugs occurred if invalid input was parsed and then could lead in buffer overflows. These bugs were found with Google's OSS-Fuzz, see #405, #407, #408, #409, #411, and #412 for more information.
    • 👷 We now also use the Doozer continuous integration platform.
    • 👷 The complete test suite is now also run with Clang's address sanitizer and undefined-behavior sanitizer.
    • ✅ Overworked fuzz testing; CBOR and MessagePack implementations are now fuzz-tested. Furthermore, all fuzz tests now include a round trip which ensures created output can again be properly parsed and yields the same JSON value.
    • 📝 Clarified documentation of find() function to always return end() when called on non-object value types.
    • 🔨 Moved thirdparty test code to test/thirdparty directory.

    v2.0.9

    Files

    • Release date: 2016-12-16
    • SHA-256: fbf3396f13e187d6c214c297bddc742d918ea9b55e10bfb3d9f458b9bfdc22e5

    Summary

    This release implements with CBOR and MessagePack two binary serialization/deserialization formats. It further contains some small fixes and improvements. The fixes are backwards compatible.

    cbor

    Changes

    • ✨ The library can now read and write the binary formats CBOR (Concise Binary Object Representation) and MessagePack. Both formats are aimed to produce a very compact representation of JSON which can be parsed very efficiently. See the README file for more information and examples.
    • 🔥 simplified the iteration implementation allowing to remove dozens of lines of code
    • 🐛 fixed an integer overflow error detected by Google's OSS-Fuzz
    • 🐛 suppressed documentation warnings inside the library to facilitate compilation with -Wdocumentation
    • 🐛 fixed an overflow detection error in the number parser
    • 📝 updated contribution guidelines to a list of frequentely asked features that will most likely be never added to the library
    • 📝 added a table of contents to the README file to add some structure
    • 📝 mentioned the many examples and the documentation in the README file
    • 🔨 split unit tests into individual independent binaries to speed up compilation and testing
    • ✅ the test suite now contains 11201886 tests

    v2.0.8

    Files

    • Release date: 2016-12-02
    • SHA-256: b70db0ad34f8e0e61dc3f0cbab88099336c9674c193d8a3439d93d6aca2d7120

    Summary

    This release combines a lot of small fixes and improvements. The fixes are backwards compatible.

    Changes

    • 🐛 fixed a bug that froze the parser if a passed file was not found (now, std::invalid_argument is thrown)
    • 🐛 fixed a bug that lead to an error of a file at EOF was parsed again (now, std::invalid_argument is thrown)
    • ✨ the well known functions emplace and emplace_back have been added to JSON values and work as expected
    • ⚡ improved the performance of the serialization (dump function)
    • ⚡ improved the performance of the deserialization (parser)
    • 👷 some continuous integration images at Travis were added and retired; see here for the current continuous integration setup
    • 👷 the Coverity scan works again
    • 📈 the benchmarking code has been improved to produce more stable results
    • 📝 the README file has been extended and includes more frequently asked examples
    • ✅ the test suite now contains 8905518 tests
    • ⬆ updated Catch to version 1.5.8

    v2.0.7

    Files

    • Release date: 2016-11-02
    • SHA-256: 5545c323670f8165bae90b9dc6078825e86ec310d96cc4e5b47233ea43715bbf

    Summary

    This release fixes a few bugs in the JSON parser found in the Parsing JSON is a Minefield 💣 article. The fixes are backwards compatible.

    Changes

    • The article Parsing JSON is a Minefield 💣 discusses a lot of pitfalls of the JSON specification. When investigating the published test cases, a few bugs in the library were found and fixed:
    • Files with less than 5 bytes can now be parsed without error.
    • The library now properly rejects any file encoding other than UTF-8. Furthermore, incorrect surrogate pairs are properly detected and rejected.
    • The library now accepts all but one "yes" test (y_string_utf16.json): UTF-16 is not supported.
    • The library rejects all but one "no" test (n_number_then_00.json): Null bytes are treated as end of file instead of an error. This allows to parse input from null-terminated strings.
    • The string length passed to a user-defined string literal is now exploited to choose a more efficient constructor.
    • A few grammar mistakes in the README file have been fixed.

    v2.0.6

    Files

    • Release date: 2016-10-15
    • SHA256: 459cc93d5e2f503e50c6d5876eb86bfea7daf405f5a567c5a2c9abc2383756ae

    Summary

    This release fixes the semantics of operator[] for JSON Pointers (see below). This fix is backwards compatible.

    Changes

    • operator[] for JSON Pointers now behaves like the other versions of operator[] and transforms null values into objects or arrays if required. This allows to created nested structures like j["/foo/bar/2"] = 17 (yielding {"foo": "bar": [null, null, 17]}) without problems.
    • overworked a helper SFINAE function
    • fixed some documentation issues
    • fixed the CMake files to allow to run the test suite outside the main project directory
    • restored test coverage to 100%.

    v2.0.5

    Files

    • Release date: 2016-09-14
    • SHA-256: 8b7565263a44e2b7d3b89808bc73d2d639037ff0c1f379e3d56dbd77e00b98d9

    Summary

    This release fixes a regression bug in the stream parser (function parse() and the <</>> operators). This fix is backwards compatible.

    Changes

    • Bug fix: The end of a file stream was not detected properly which led to parse errors. This bug should have been fixed with 2.0.4, but there was still a flaw in the code.

    v2.0.4

    Files

    • Release date: 2016-09-11
    • SHA-256: 632ceec4c25c4e2153f71470d3a2b992c8355f6d8b4d627d05dd16095cd3aeda

    Summary

    This release fixes a bug in the stream parser (function parse() and the <</>> operators). This fix is backwards compatible.

    Changes

    • Bug fix: The end of a file stream was not detected properly which led to parse errors.
    • Fixed a compiler warning about an unused variable.

    v2.0.3

    Files

    • Release date: 2016-08-31
    • SHA-256: 535b73efe5546fde9e763c14aeadfc7b58183c0b3cd43c29741025aba6cf6bd3

    Summary

    This release combines a lot of small fixes and improvements. The release is backwards compatible.

    Changes

    • The parser/deserialization functions have been generalized to process any contiguous sequence of 1-byte elements (e.g., char, unsigned char, uint8_t). This includes all kind of string representations (string literals, char arrays, std::string, const char*), contiguous containers (C-style arrays, std::vector, std::array, std::valarray, std::initializer_list). User-defined containers providing random-access iterator access via std::begin and std::end can be used as well. See the documentation (1, 2, 3, 4) for more information. Note that contiguous storage cannot be checked at compile time; if any of the parse functions are called with a noncompliant container, the behavior is undefined and will most likely yield segmentation violation. The preconditions are enforced by an assertion unless the library is compiled with preprocessor symbol NDEBUG.
    • As a general remark on assertions: The library uses assertions to preclude undefined behavior. A prominent example for this is the operator[] for const JSON objects. The behavior of this const version of the operator is undefined if the given key does not exist in the JSON object, because unlike the non-const version, it cannot add a null value at the given key. Assertions can be switched of by defining the preprocessor symbol NDEBUG. See the documentation of assert for more information.
    • In the course of cleaning up the parser/deserialization functions, the constructor basic_json(std::istream&, const parser_callback_t) has been deprecated and will be deleted with the next major release 3.0.0 to unify the interface of the library. Deserialization will be done by stream operators or by calling one of the parse functions. That is, calls like json j(i); for an input stream i need to be replaced by json j = json::parse(i);. Compilers will produce a deprecation warning if client code uses this function.
    • Minor improvements:
    • Improved the performance of the serialization by avoiding the re-creation of a locale object.
    • Fixed two MSVC warnings. Compiling the test suite with /Wall now only warns about non-inlined functions (C4710) and the deprecation of the constructor from input-stream (C4996).
    • Some project internals:
    • The project has qualified for the Core Infrastructure Initiative Best Practices Badge. While most requirements where already satisfied, some led to more explicit documentation of quality-ensuring procedures. For instance, static analysis is now executed with every commit on the build server. Furthermore, the contribution guidelines document how to communicate security issues privately.
    • The test suite has been overworked and split into several files to allow for faster compilation and analysis. The execute the test suite, simply execute make check.
    • The continuous integration with Travis was extended with Clang versions 3.6.0 to 3.8.1 and now includes 18 different compiler/OS combinations.
    • An 11-day run of American fuzzy lop checked 962 million inputs on the parser and found no issue.

    v2.0.2

    Files

    • Release date: 2016-07-31
    • SHA-256: 8e97b7965b4594b00998d6704465412360e1a0ed927badb51ded8b82291a8f3d

    Summary

    This release combines a lot of small fixes and improvements. The release is backwards compatible.

    Changes

    • The parser has been overworked, and a lot of small issues have been fixed:
    • Improved parser performance by avoiding recursion and using move semantics for the return value.
    • Unescaped control characters \x10-\x1f are not accepted any more.
    • Fixed a bug in the parser when reading from an input stream.
    • Improved test case coverage for UTF-8 parsing: now, all valid Unicode code points are tested both escaped and unescaped.
    • The precision of output streams is now preserved by the parser.
    • Started to check the code correctness by proving termination of important loops. Furthermore, individual assertions have been replaced by a more systematic function which checks the class invariants. Note that assertions should be switched off in production by defining the preprocessor macro NDEBUG, see the documentation of assert.
    • A lot of code cleanup: removed unused headers, fixed some compiler warnings, and fixed a build error for Windows-based Clang builds.
    • Added some compile-time checks:
    • Unsupported compilers are rejected during compilation with an #error command.
    • Static assertion prohibits code with incompatible pointer types used in get_ptr().
    • Improved the documentation, and adjusted the documentation script to choose the correct version of sed.
    • Replaced a lot of "raw loops" by STL functions like std::all_of, std::for_each, or std::accumulate. This facilitates reasoning about termination of loops and sometimes allowed to simplify functions to a single return statement.
    • Implemented a value() function for JSON pointers (similar to at function).
    • The Homebrew formula (see Integration) is now tested for all Xcode builds (6.1 - 8.x) with Travis.
    • Avoided output to std::cout in the test cases.

    v2.0.1

    Files

    • Release date: 2016-06-28
    • SHA-256: ef550fcd7df572555bf068e9ec4e9d3b9e4cdd441cecb0dcea9ea7fd313f72dd

    Summary

    This release fixes a performance regression in the JSON serialization (function dump()). This fix is backwards compatible.

    Changes

    • The locale of the output stream (or the internal string stream if a JSON value is serialized to a string) is now adjusted once for the whole serialization instead of for each floating-point number.
    • The locale of an output stream is now correctly reset to the previous value by the JSON library.

    v2.0.0

    Files

    • Release date: 2016-06-24
    • SHA-256: ac9e1fb25c2ac9ca5fc501fcd2fe3281fe04f07018a1b48820e7b1b11491bb6c

    Summary

    This release adds several features such as JSON Pointers, JSON Patch, or support for 64 bit unsigned integers. Furthermore, several (subtle) bugs have been fixed.

    As noexcept and constexpr specifier have been added to several functions, the public API has effectively been changed in a (potential) non-backwards compatible manner. As we adhere to Semantic Versioning, this calls for a new major version, so say hello to 2️⃣.0️⃣.0️⃣.

    Changes

    • 🔟 A JSON value now uses uint64_t (default value for template parameter NumberUnsignedType) as data type for unsigned integer values. This type is used automatically when an unsigned number is parsed. Furthermore, constructors, conversion operators and an is_number_unsigned() test have been added.
    • 👉 JSON Pointer (RFC 6901) support: A JSON Pointer is a string (similar to an XPath expression) to address a value inside a structured JSON value. JSON Pointers can be used in at() and operator[] functions. Furthermore, JSON values can be “flattened” to key/value pairs using flatten() where each key is a JSON Pointer. The original value can be restored by “unflattening” the flattened value using unflatten().
    • 🏥 JSON Patch (RFC 6902) support. A JSON Patch is a JSON value that describes the required edit operations (add, change, remove, …) to transform a JSON value into another one. A JSON Patch can be created with function diff(const basic_json&) and applied with patch(const basic_json&). Note the created patches use a rather primitive algorithm so far and leave room for improvement.
    • 🇪🇺 The code is now locale-independent: Floating-point numbers are always serialized with a period (.) as decimal separator and ignores different settings from the locale.
    • 🍺 Homebrew support: Install the library with brew tap nlohmann/json && brew install nlohmann_json.
    • Added constructor to create a JSON value by parsing a std::istream (e.g., std::stringstream or std::ifstream).
    • Added noexcept specifier to basic_json(boolean_t), basic_json(const number_integer_t), basic_json(const int), basic_json(const number_float_t), iterator functions (begin(), end(), etc.)
    • When parsing numbers, the sign of 0.0 (vs. -0.0) is preserved.
    • Improved MSVC 2015, Android, and MinGW support. See README for more information.
    • Improved test coverage (added 2,225,386 tests).
    • Removed some misuses of std::move.
    • Fixed several compiler warnings.
    • Improved error messages from JSON parser.
    • Updated to re2c to version 0.16 to use a minimal DFAs for the lexer.
    • Updated test suite to use Catch version 1.5.6.
    • Made type getters (is_number, etc.) and const value access constexpr.
    • Functions push_back and operator+= now work with key/value pairs passed as initializer list, e.g. j_object += {"key", 1}.
    • Overworked CMakeLists.txt to make it easier to integrate the library into other projects.

    Notes

    • Parser error messages are still very vague and contain no information on the error location.
    • The implemented diff function is rather primitive and does not create minimal diffs.
    • The name of function iteration_wrapper may change in the future and the function will be deprecated in the next release.
    • Roundtripping (i.e., parsing a JSON value from a string, serializing it, and comparing the strings) of floating-point numbers is not 100% accurate. Note that RFC 8259 defines no format to internally represent numbers and states not requirement for roundtripping. Nevertheless, benchmarks like Native JSON Benchmark treat roundtripping deviations as conformance errors.

    v1.1.0

    Files

    • Release date: 2016-01-24
    • SHA-256: c0cf0e3017798ca6bb18e757ebc570d21a3bdac877845e2b9e9573d183ed2f05

    Summary

    This release fixes several small bugs and adds functionality in a backwards-compatible manner. Compared to the last version (1.0.0), the following changes have been made:

    Changes

    • Fixed: Floating-point numbers are now serialized and deserialized properly such that roundtripping works in more cases. [#185, #186, #190, #191, #194]
    • Added: The code now contains assertions to detect undefined behavior during development. As the standard function assert is used, the assertions can be switched off by defining the preprocessor symbol NDEBUG during compilation. [#168]
    • Added: It is now possible to get a reference to the stored values via the newly added function get_ref(). [#128, #184]
    • Fixed: Access to object values via keys (operator[]) now works with all kind of string representations. [#171, #189]
    • Fixed: The code now compiles again with Microsoft Visual Studio 2015. [#144, #167, #188]
    • Fixed: All required headers are now included.
    • Fixed: Typos and other small issues. [#162, #166, #175, #177, #179, #180]

    Notes

    There are still known open issues (#178, #187) which will be fixed in version 2.0.0. However, these fixes will require a small API change and will not be entirely backwards-compatible.

    v1.0.0

    Files

    • Release date: 2015-12-28
    • SHA-256: 767dc2fab1819d7b9e19b6e456d61e38d21ef7182606ecf01516e3f5230446de

    Summary

    This is the first official release. Compared to the prerelease version 1.0.0-rc1, only a few minor improvements have been made:

    Changes

    • Changed: A UTF-8 byte order mark is silently ignored.
    • Changed: sprintf is no longer used.
    • Changed: iterator_wrapper also works for const objects; note: the name may change!
    • Changed: Error messages during deserialization have been improved.
    • Added: The parse function now also works with type std::istream&&.
    • Added: Function value(key, default_value) returns either a copy of an object's element at the specified key or a given default value if no element with the key exists.
    • Added: Public functions are tagged with the version they were introduced. This shall allow for better versioning in the future.
    • Added: All public functions and types are documented (see http://nlohmann.github.io/json/doxygen/) including executable examples.
    • Added: Allocation of all types (in particular arrays, strings, and objects) is now exception-safe.
    • Added: They descriptions of thrown exceptions have been overworked and are part of the tests suite and documentation.
    \ No newline at end of file +

    v2.1.1

    Files

    Release date: 2017-02-25 SHA-256: faa2321beb1aa7416d035e7417fcfa59692ac3d8c202728f9bcc302e2d558f57

    Summary

    This release fixes a locale-related bug in the parser. To do so, the whole number handling (lexer, parser, and also the serialization) have been overworked. Furthermore, a lot of small changes added up that were added to this release. All changes are backward-compatible.

    Changes

    • 🐛 Locales that have a different character than . as decimal separator (e.g., the Norwegian locale nb_NO.UTF-8) led to truncated number parsing or parse errors. The library now has been fixed to work with any locale. Note that . is still the only valid decimal separator for JSON input.
    • 🐛 Numbers like 1.0 were correctly parsed as floating-point number, but serialized as integer (1). Now, floating-point numbers correctly round trip.
    • 🐛 Parsing incorrect JSON numbers with leading 0 (0123) could yield a buffer overflow. This is fixed now by detecting such errors directly by the lexer.
    • 🐛 Constructing a JSON value from a pointer was incorrectly interpreted as a Boolean; such code will now yield a compiler error.
    • 🐛 Comparing a JSON number with 0 led to a comparison with null. This is fixed now.
    • 🐛 All throw calls are now wrapped in macros.
    • 🔒 Starting during the preparation of this release (since 8 February 2017), commits and released files are cryptographically signed with this GPG key. Previous releases have also been signed.
    • ✨ The parser for MessagePack and CBOR now supports an optional start index parameter to define a byte offset for the parser.
    • 🚨 Some more warnings have been fixed. With Clang, the code compiles without warnings with -Weverything (well, it needs -Wno-documentation-unknown-command and -Wno-deprecated-declarations, but you get the point).
    • 🔨 The code can be compiled easier with many Android NDKs by avoiding macros like UINT8_MAX which previously required defining a preprocessor macro for compilation.
    • ⚡ The unit tests now compile two times faster.
    • ➕ Cotire is used to speed up the build.
    • ✏ Fixed a lot of typos in the documentation.
    • 📝 Added a section to the README file that lists all used third-party code/tools.
    • 📝 Added a note on constructing a string value vs. parsing.
    • ✅ The test suite now contains 11202597 unit tests.
    • 📝 Improved the Doxygen documentation by shortening the template parameters of class basic_json.
    • 👷 Removed Doozer.
    • 👷 Added Codacity.
    • ⬆ Upgraded Catch to version 1.7.2.

    v2.1.0

    Files

    • Release date: 2017-01-28
    • SHA-256: a571dee92515b685784fd527e38405cf3f5e13e96edbfe3f03d6df2e363a767b

    Summary

    This release introduces a means to convert from/to user-defined types. The release is backwards compatible.

    conversion

    Changes

    • ✨ The library now offers an elegant way to convert from and to arbitrary value types. All you need to do is to implement two functions: to_json and from_json. Then, a conversion is as simple as putting a = between variables. See the README for more information and examples.
    • ✨ Exceptions can now be switched off. This can be done by defining the preprocessor symbol JSON_NOEXCEPTION or by passing -fno-exceptions to your compiler. In case the code would usually thrown an exception, abort() is now called.
    • ✨ Information on the library can be queried with the new (static) function meta() which returns a JSON object with information on the version, compiler, and platform. See the documentation for an example.
    • 🐛 A bug in the CBOR parser was fixed which led to a buffer overflow.
    • ✨ The function type_name() is now public. It allows to query the type of a JSON value as string.
    • ✅ Added the Big List of Naughty Strings as test case.
    • ⬆ Updated to Catch v1.6.0.
    • 📝 Some typos in the documentation have been fixed.

    v2.0.10

    Files

    • Release date: 2017-01-02
    • SHA-256: ec27d4e74e9ce0f78066389a70724afd07f10761009322dc020656704ad5296d

    Summary

    This release fixes several security-relevant bugs in the MessagePack and CBOR parsers. The fixes are backwards compatible.

    Changes

    • 🐛 Fixed a lot of bugs in the CBOR and MesssagePack parsers. These bugs occurred if invalid input was parsed and then could lead in buffer overflows. These bugs were found with Google's OSS-Fuzz, see #405, #407, #408, #409, #411, and #412 for more information.
    • 👷 We now also use the Doozer continuous integration platform.
    • 👷 The complete test suite is now also run with Clang's address sanitizer and undefined-behavior sanitizer.
    • ✅ Overworked fuzz testing; CBOR and MessagePack implementations are now fuzz-tested. Furthermore, all fuzz tests now include a round trip which ensures created output can again be properly parsed and yields the same JSON value.
    • 📝 Clarified documentation of find() function to always return end() when called on non-object value types.
    • 🔨 Moved thirdparty test code to test/thirdparty directory.

    v2.0.9

    Files

    • Release date: 2016-12-16
    • SHA-256: fbf3396f13e187d6c214c297bddc742d918ea9b55e10bfb3d9f458b9bfdc22e5

    Summary

    This release implements with CBOR and MessagePack two binary serialization/deserialization formats. It further contains some small fixes and improvements. The fixes are backwards compatible.

    cbor

    Changes

    • ✨ The library can now read and write the binary formats CBOR (Concise Binary Object Representation) and MessagePack. Both formats are aimed to produce a very compact representation of JSON which can be parsed very efficiently. See the README file for more information and examples.
    • 🔥 simplified the iteration implementation allowing to remove dozens of lines of code
    • 🐛 fixed an integer overflow error detected by Google's OSS-Fuzz
    • 🐛 suppressed documentation warnings inside the library to facilitate compilation with -Wdocumentation
    • 🐛 fixed an overflow detection error in the number parser
    • 📝 updated contribution guidelines to a list of frequentely asked features that will most likely be never added to the library
    • 📝 added a table of contents to the README file to add some structure
    • 📝 mentioned the many examples and the documentation in the README file
    • 🔨 split unit tests into individual independent binaries to speed up compilation and testing
    • ✅ the test suite now contains 11201886 tests

    v2.0.8

    Files

    • Release date: 2016-12-02
    • SHA-256: b70db0ad34f8e0e61dc3f0cbab88099336c9674c193d8a3439d93d6aca2d7120

    Summary

    This release combines a lot of small fixes and improvements. The fixes are backwards compatible.

    Changes

    • 🐛 fixed a bug that froze the parser if a passed file was not found (now, std::invalid_argument is thrown)
    • 🐛 fixed a bug that lead to an error of a file at EOF was parsed again (now, std::invalid_argument is thrown)
    • ✨ the well known functions emplace and emplace_back have been added to JSON values and work as expected
    • ⚡ improved the performance of the serialization (dump function)
    • ⚡ improved the performance of the deserialization (parser)
    • 👷 some continuous integration images at Travis were added and retired; see here for the current continuous integration setup
    • 👷 the Coverity scan works again
    • 📈 the benchmarking code has been improved to produce more stable results
    • 📝 the README file has been extended and includes more frequently asked examples
    • ✅ the test suite now contains 8905518 tests
    • ⬆ updated Catch to version 1.5.8

    v2.0.7

    Files

    • Release date: 2016-11-02
    • SHA-256: 5545c323670f8165bae90b9dc6078825e86ec310d96cc4e5b47233ea43715bbf

    Summary

    This release fixes a few bugs in the JSON parser found in the Parsing JSON is a Minefield 💣 article. The fixes are backwards compatible.

    Changes

    • The article Parsing JSON is a Minefield 💣 discusses a lot of pitfalls of the JSON specification. When investigating the published test cases, a few bugs in the library were found and fixed:
    • Files with less than 5 bytes can now be parsed without error.
    • The library now properly rejects any file encoding other than UTF-8. Furthermore, incorrect surrogate pairs are properly detected and rejected.
    • The library now accepts all but one "yes" test (y_string_utf16.json): UTF-16 is not supported.
    • The library rejects all but one "no" test (n_number_then_00.json): Null bytes are treated as end of file instead of an error. This allows to parse input from null-terminated strings.
    • The string length passed to a user-defined string literal is now exploited to choose a more efficient constructor.
    • A few grammar mistakes in the README file have been fixed.

    v2.0.6

    Files

    • Release date: 2016-10-15
    • SHA256: 459cc93d5e2f503e50c6d5876eb86bfea7daf405f5a567c5a2c9abc2383756ae

    Summary

    This release fixes the semantics of operator[] for JSON Pointers (see below). This fix is backwards compatible.

    Changes

    • operator[] for JSON Pointers now behaves like the other versions of operator[] and transforms null values into objects or arrays if required. This allows to created nested structures like j["/foo/bar/2"] = 17 (yielding {"foo": "bar": [null, null, 17]}) without problems.
    • overworked a helper SFINAE function
    • fixed some documentation issues
    • fixed the CMake files to allow to run the test suite outside the main project directory
    • restored test coverage to 100%.

    v2.0.5

    Files

    • Release date: 2016-09-14
    • SHA-256: 8b7565263a44e2b7d3b89808bc73d2d639037ff0c1f379e3d56dbd77e00b98d9

    Summary

    This release fixes a regression bug in the stream parser (function parse() and the <</>> operators). This fix is backwards compatible.

    Changes

    • Bug fix: The end of a file stream was not detected properly which led to parse errors. This bug should have been fixed with 2.0.4, but there was still a flaw in the code.

    v2.0.4

    Files

    • Release date: 2016-09-11
    • SHA-256: 632ceec4c25c4e2153f71470d3a2b992c8355f6d8b4d627d05dd16095cd3aeda

    Summary

    This release fixes a bug in the stream parser (function parse() and the <</>> operators). This fix is backwards compatible.

    Changes

    • Bug fix: The end of a file stream was not detected properly which led to parse errors.
    • Fixed a compiler warning about an unused variable.

    v2.0.3

    Files

    • Release date: 2016-08-31
    • SHA-256: 535b73efe5546fde9e763c14aeadfc7b58183c0b3cd43c29741025aba6cf6bd3

    Summary

    This release combines a lot of small fixes and improvements. The release is backwards compatible.

    Changes

    • The parser/deserialization functions have been generalized to process any contiguous sequence of 1-byte elements (e.g., char, unsigned char, uint8_t). This includes all kind of string representations (string literals, char arrays, std::string, const char*), contiguous containers (C-style arrays, std::vector, std::array, std::valarray, std::initializer_list). User-defined containers providing random-access iterator access via std::begin and std::end can be used as well. See the documentation (1, 2, 3, 4) for more information. Note that contiguous storage cannot be checked at compile time; if any of the parse functions are called with a noncompliant container, the behavior is undefined and will most likely yield segmentation violation. The preconditions are enforced by an assertion unless the library is compiled with preprocessor symbol NDEBUG.
    • As a general remark on assertions: The library uses assertions to preclude undefined behavior. A prominent example for this is the operator[] for const JSON objects. The behavior of this const version of the operator is undefined if the given key does not exist in the JSON object, because unlike the non-const version, it cannot add a null value at the given key. Assertions can be switched of by defining the preprocessor symbol NDEBUG. See the documentation of assert for more information.
    • In the course of cleaning up the parser/deserialization functions, the constructor basic_json(std::istream&, const parser_callback_t) has been deprecated and will be deleted with the next major release 3.0.0 to unify the interface of the library. Deserialization will be done by stream operators or by calling one of the parse functions. That is, calls like json j(i); for an input stream i need to be replaced by json j = json::parse(i);. Compilers will produce a deprecation warning if client code uses this function.
    • Minor improvements:
    • Improved the performance of the serialization by avoiding the re-creation of a locale object.
    • Fixed two MSVC warnings. Compiling the test suite with /Wall now only warns about non-inlined functions (C4710) and the deprecation of the constructor from input-stream (C4996).
    • Some project internals:
    • The project has qualified for the Core Infrastructure Initiative Best Practices Badge. While most requirements where already satisfied, some led to more explicit documentation of quality-ensuring procedures. For instance, static analysis is now executed with every commit on the build server. Furthermore, the contribution guidelines document how to communicate security issues privately.
    • The test suite has been overworked and split into several files to allow for faster compilation and analysis. The execute the test suite, simply execute make check.
    • The continuous integration with Travis was extended with Clang versions 3.6.0 to 3.8.1 and now includes 18 different compiler/OS combinations.
    • An 11-day run of American fuzzy lop checked 962 million inputs on the parser and found no issue.

    v2.0.2

    Files

    • Release date: 2016-07-31
    • SHA-256: 8e97b7965b4594b00998d6704465412360e1a0ed927badb51ded8b82291a8f3d

    Summary

    This release combines a lot of small fixes and improvements. The release is backwards compatible.

    Changes

    • The parser has been overworked, and a lot of small issues have been fixed:
    • Improved parser performance by avoiding recursion and using move semantics for the return value.
    • Unescaped control characters \x10-\x1f are not accepted any more.
    • Fixed a bug in the parser when reading from an input stream.
    • Improved test case coverage for UTF-8 parsing: now, all valid Unicode code points are tested both escaped and unescaped.
    • The precision of output streams is now preserved by the parser.
    • Started to check the code correctness by proving termination of important loops. Furthermore, individual assertions have been replaced by a more systematic function which checks the class invariants. Note that assertions should be switched off in production by defining the preprocessor macro NDEBUG, see the documentation of assert.
    • A lot of code cleanup: removed unused headers, fixed some compiler warnings, and fixed a build error for Windows-based Clang builds.
    • Added some compile-time checks:
    • Unsupported compilers are rejected during compilation with an #error command.
    • Static assertion prohibits code with incompatible pointer types used in get_ptr().
    • Improved the documentation, and adjusted the documentation script to choose the correct version of sed.
    • Replaced a lot of "raw loops" by STL functions like std::all_of, std::for_each, or std::accumulate. This facilitates reasoning about termination of loops and sometimes allowed to simplify functions to a single return statement.
    • Implemented a value() function for JSON pointers (similar to at function).
    • The Homebrew formula (see Integration) is now tested for all Xcode builds (6.1 - 8.x) with Travis.
    • Avoided output to std::cout in the test cases.

    v2.0.1

    Files

    • Release date: 2016-06-28
    • SHA-256: ef550fcd7df572555bf068e9ec4e9d3b9e4cdd441cecb0dcea9ea7fd313f72dd

    Summary

    This release fixes a performance regression in the JSON serialization (function dump()). This fix is backwards compatible.

    Changes

    • The locale of the output stream (or the internal string stream if a JSON value is serialized to a string) is now adjusted once for the whole serialization instead of for each floating-point number.
    • The locale of an output stream is now correctly reset to the previous value by the JSON library.

    v2.0.0

    Files

    • Release date: 2016-06-24
    • SHA-256: ac9e1fb25c2ac9ca5fc501fcd2fe3281fe04f07018a1b48820e7b1b11491bb6c

    Summary

    This release adds several features such as JSON Pointers, JSON Patch, or support for 64 bit unsigned integers. Furthermore, several (subtle) bugs have been fixed.

    As noexcept and constexpr specifier have been added to several functions, the public API has effectively been changed in a (potential) non-backwards compatible manner. As we adhere to Semantic Versioning, this calls for a new major version, so say hello to 2️⃣.0️⃣.0️⃣.

    Changes

    • 🔟 A JSON value now uses uint64_t (default value for template parameter NumberUnsignedType) as data type for unsigned integer values. This type is used automatically when an unsigned number is parsed. Furthermore, constructors, conversion operators and an is_number_unsigned() test have been added.
    • 👉 JSON Pointer (RFC 6901) support: A JSON Pointer is a string (similar to an XPath expression) to address a value inside a structured JSON value. JSON Pointers can be used in at() and operator[] functions. Furthermore, JSON values can be “flattened” to key/value pairs using flatten() where each key is a JSON Pointer. The original value can be restored by “unflattening” the flattened value using unflatten().
    • 🏥 JSON Patch (RFC 6902) support. A JSON Patch is a JSON value that describes the required edit operations (add, change, remove, …) to transform a JSON value into another one. A JSON Patch can be created with function diff(const basic_json&) and applied with patch(const basic_json&). Note the created patches use a rather primitive algorithm so far and leave room for improvement.
    • 🇪🇺 The code is now locale-independent: Floating-point numbers are always serialized with a period (.) as decimal separator and ignores different settings from the locale.
    • 🍺 Homebrew support: Install the library with brew tap nlohmann/json && brew install nlohmann_json.
    • Added constructor to create a JSON value by parsing a std::istream (e.g., std::stringstream or std::ifstream).
    • Added noexcept specifier to basic_json(boolean_t), basic_json(const number_integer_t), basic_json(const int), basic_json(const number_float_t), iterator functions (begin(), end(), etc.)
    • When parsing numbers, the sign of 0.0 (vs. -0.0) is preserved.
    • Improved MSVC 2015, Android, and MinGW support. See README for more information.
    • Improved test coverage (added 2,225,386 tests).
    • Removed some misuses of std::move.
    • Fixed several compiler warnings.
    • Improved error messages from JSON parser.
    • Updated to re2c to version 0.16 to use a minimal DFAs for the lexer.
    • Updated test suite to use Catch version 1.5.6.
    • Made type getters (is_number, etc.) and const value access constexpr.
    • Functions push_back and operator+= now work with key/value pairs passed as initializer list, e.g. j_object += {"key", 1}.
    • Overworked CMakeLists.txt to make it easier to integrate the library into other projects.

    Notes

    • Parser error messages are still very vague and contain no information on the error location.
    • The implemented diff function is rather primitive and does not create minimal diffs.
    • The name of function iteration_wrapper may change in the future and the function will be deprecated in the next release.
    • Roundtripping (i.e., parsing a JSON value from a string, serializing it, and comparing the strings) of floating-point numbers is not 100% accurate. Note that RFC 8259 defines no format to internally represent numbers and states not requirement for roundtripping. Nevertheless, benchmarks like Native JSON Benchmark treat roundtripping deviations as conformance errors.

    v1.1.0

    Files

    • Release date: 2016-01-24
    • SHA-256: c0cf0e3017798ca6bb18e757ebc570d21a3bdac877845e2b9e9573d183ed2f05

    Summary

    This release fixes several small bugs and adds functionality in a backwards-compatible manner. Compared to the last version (1.0.0), the following changes have been made:

    Changes

    • Fixed: Floating-point numbers are now serialized and deserialized properly such that roundtripping works in more cases. [#185, #186, #190, #191, #194]
    • Added: The code now contains assertions to detect undefined behavior during development. As the standard function assert is used, the assertions can be switched off by defining the preprocessor symbol NDEBUG during compilation. [#168]
    • Added: It is now possible to get a reference to the stored values via the newly added function get_ref(). [#128, #184]
    • Fixed: Access to object values via keys (operator[]) now works with all kind of string representations. [#171, #189]
    • Fixed: The code now compiles again with Microsoft Visual Studio 2015. [#144, #167, #188]
    • Fixed: All required headers are now included.
    • Fixed: Typos and other small issues. [#162, #166, #175, #177, #179, #180]

    Notes

    There are still known open issues (#178, #187) which will be fixed in version 2.0.0. However, these fixes will require a small API change and will not be entirely backwards-compatible.

    v1.0.0

    Files

    • Release date: 2015-12-28
    • SHA-256: 767dc2fab1819d7b9e19b6e456d61e38d21ef7182606ecf01516e3f5230446de

    Summary

    This is the first official release. Compared to the prerelease version 1.0.0-rc1, only a few minor improvements have been made:

    Changes

    • Changed: A UTF-8 byte order mark is silently ignored.
    • Changed: sprintf is no longer used.
    • Changed: iterator_wrapper also works for const objects; note: the name may change!
    • Changed: Error messages during deserialization have been improved.
    • Added: The parse function now also works with type std::istream&&.
    • Added: Function value(key, default_value) returns either a copy of an object's element at the specified key or a given default value if no element with the key exists.
    • Added: Public functions are tagged with the version they were introduced. This shall allow for better versioning in the future.
    • Added: All public functions and types are documented (see http://nlohmann.github.io/json/doxygen/) including executable examples.
    • Added: Allocation of all types (in particular arrays, strings, and objects) is now exception-safe.
    • Added: They descriptions of thrown exceptions have been overworked and are part of the tests suite and documentation.
    \ No newline at end of file diff --git a/home/sponsors/index.html b/home/sponsors/index.html index b73ba4bfe..bd4398dde 100644 --- a/home/sponsors/index.html +++ b/home/sponsors/index.html @@ -1 +1 @@ - Sponsors - JSON for Modern C++
    \ No newline at end of file + Sponsors - JSON for Modern C++
    \ No newline at end of file diff --git a/index.html b/index.html index 23f2fc766..969b8afdb 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ - JSON for Modern C++ - JSON for Modern C++

    JSON for Modern C++

    \ No newline at end of file + JSON for Modern C++ - JSON for Modern C++

    JSON for Modern C++

    \ No newline at end of file diff --git a/integration/cmake/index.html b/integration/cmake/index.html index 1c0dfdc26..bc55978e1 100644 --- a/integration/cmake/index.html +++ b/integration/cmake/index.html @@ -46,4 +46,4 @@ GIT_REPOSITORY https://github.com/nlohmann/json GIT_TAG v3.12.0 ) -

    However, the repository https://github.com/nlohmann/json download size is quite large.

    CMake Options

    JSON_BuildTests

    Build the unit tests when BUILD_TESTING is enabled. This option is ON by default if the library's CMake project is the top project. That is, when integrating the library as described above, the test suite is not built unless explicitly switched on with this option.

    JSON_CI

    Enable CI build targets. The exact targets are used during the several CI steps and are subject to change without notice. This option is OFF by default.

    JSON_Diagnostics

    Enable extended diagnostic messages by defining macro JSON_DIAGNOSTICS. This option is OFF by default.

    JSON_Diagnostic_Positions

    Enable position diagnostics by defining macro JSON_DIAGNOSTIC_POSITIONS. This option is OFF by default.

    JSON_DisableEnumSerialization

    Disable default enum serialization by defining the macro JSON_DISABLE_ENUM_SERIALIZATION. This option is OFF by default.

    JSON_FastTests

    Skip expensive/slow test suites. This option is OFF by default. Depends on JSON_BuildTests.

    JSON_GlobalUDLs

    Place user-defined string literals in the global namespace by defining the macro JSON_USE_GLOBAL_UDLS. This option is OFF by default.

    JSON_ImplicitConversions

    Enable implicit conversions by defining macro JSON_USE_IMPLICIT_CONVERSIONS. This option is ON by default.

    JSON_Install

    Install CMake targets during install step. This option is ON by default if the library's CMake project is the top project.

    JSON_LegacyDiscardedValueComparison

    Enable the (incorrect) legacy comparison behavior of discarded JSON values by defining macro JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON. This option is OFF by default.

    JSON_MultipleHeaders

    Use the non-amalgamated version of the library. This option is OFF by default.

    JSON_SystemInclude

    Treat the library headers like system headers (i.e., adding SYSTEM to the target_include_directories call) to check for this library by tools like Clang-Tidy. This option is OFF by default.

    JSON_Valgrind

    Execute the test suite with Valgrind. This option is OFF by default. Depends on JSON_BuildTests.

    \ No newline at end of file +

    However, the repository https://github.com/nlohmann/json download size is quite large.

    CMake Options

    JSON_BuildTests

    Build the unit tests when BUILD_TESTING is enabled. This option is ON by default if the library's CMake project is the top project. That is, when integrating the library as described above, the test suite is not built unless explicitly switched on with this option.

    JSON_CI

    Enable CI build targets. The exact targets are used during the several CI steps and are subject to change without notice. This option is OFF by default.

    JSON_Diagnostics

    Enable extended diagnostic messages by defining macro JSON_DIAGNOSTICS. This option is OFF by default.

    JSON_Diagnostic_Positions

    Enable position diagnostics by defining macro JSON_DIAGNOSTIC_POSITIONS. This option is OFF by default.

    JSON_DisableEnumSerialization

    Disable default enum serialization by defining the macro JSON_DISABLE_ENUM_SERIALIZATION. This option is OFF by default.

    JSON_FastTests

    Skip expensive/slow test suites. This option is OFF by default. Depends on JSON_BuildTests.

    JSON_GlobalUDLs

    Place user-defined string literals in the global namespace by defining the macro JSON_USE_GLOBAL_UDLS. This option is OFF by default.

    JSON_ImplicitConversions

    Enable implicit conversions by defining macro JSON_USE_IMPLICIT_CONVERSIONS. This option is ON by default.

    JSON_Install

    Install CMake targets during install step. This option is ON by default if the library's CMake project is the top project.

    JSON_LegacyDiscardedValueComparison

    Enable the (incorrect) legacy comparison behavior of discarded JSON values by defining macro JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON. This option is OFF by default.

    JSON_MultipleHeaders

    Use the non-amalgamated version of the library. This option is OFF by default.

    JSON_SystemInclude

    Treat the library headers like system headers (i.e., adding SYSTEM to the target_include_directories call) to check for this library by tools like Clang-Tidy. This option is OFF by default.

    JSON_Valgrind

    Execute the test suite with Valgrind. This option is OFF by default. Depends on JSON_BuildTests.

    \ No newline at end of file diff --git a/integration/index.html b/integration/index.html index 52b9b4bdb..ac4463089 100644 --- a/integration/index.html +++ b/integration/index.html @@ -2,4 +2,4 @@ // for convenience using json = nlohmann::json; -

    to the files you want to process JSON and set the necessary switches to enable C++11 (e.g., -std=c++11 for GCC and Clang).

    You can further use file single_include/nlohmann/json_fwd.hpp for forward declarations.

    \ No newline at end of file +

    to the files you want to process JSON and set the necessary switches to enable C++11 (e.g., -std=c++11 for GCC and Clang).

    You can further use file single_include/nlohmann/json_fwd.hpp for forward declarations.

    \ No newline at end of file diff --git a/integration/migration_guide/index.html b/integration/migration_guide/index.html index 143c4f2f9..66362778a 100644 --- a/integration/migration_guide/index.html +++ b/integration/migration_guide/index.html @@ -54,4 +54,4 @@ { j["age"] = p.age; } -

    Do not use the details namespace

    The details namespace is not part of the public API of the library and can change in any version without an announcement. Do not rely on any function or type in the details namespace.

    \ No newline at end of file +

    Do not use the details namespace

    The details namespace is not part of the public API of the library and can change in any version without an announcement. Do not rely on any function or type in the details namespace.

    \ No newline at end of file diff --git a/integration/package_managers/index.html b/integration/package_managers/index.html index 7bf6c7bf3..166d47b46 100644 --- a/integration/package_managers/index.html +++ b/integration/package_managers/index.html @@ -330,4 +330,4 @@ cmake --build build set_languages("cxx11")
  • Build

    xmake
     
  • Run

    xmake run
    -

  • Other package managers

    The library is also contained in many other package repositories: Packaging status

    Package version overview

    Packaging status


    Buckaroo

    If you are using Buckaroo, you can install this library's module with buckaroo add github.com/buckaroo-pm/nlohmann-json. There is a demo repo here.

    Warning

    The module is outdated as the respective repository has not been updated in years.

    CocoaPods

    If you are using CocoaPods, you can use the library by adding pod "nlohmann_json", '~>3.1.2' to your podfile (see an example). Please file issues here.

    Warning

    The module is outdated as the respective pod has not been updated in years.

    \ No newline at end of file +

    Other package managers

    The library is also contained in many other package repositories: Packaging status

    Package version overview

    Packaging status


    Buckaroo

    If you are using Buckaroo, you can install this library's module with buckaroo add github.com/buckaroo-pm/nlohmann-json. There is a demo repo here.

    Warning

    The module is outdated as the respective repository has not been updated in years.

    CocoaPods

    If you are using CocoaPods, you can use the library by adding pod "nlohmann_json", '~>3.1.2' to your podfile (see an example). Please file issues here.

    Warning

    The module is outdated as the respective pod has not been updated in years.

    \ No newline at end of file diff --git a/integration/pkg-config/index.html b/integration/pkg-config/index.html index b6d7e0d51..2e327439f 100644 --- a/integration/pkg-config/index.html +++ b/integration/pkg-config/index.html @@ -1,3 +1,3 @@ Pkg-config - JSON for Modern C++

    Pkg-config

    If you are using bare Makefiles, you can use pkg-config to generate the include flags that point to where the library is installed:

    pkg-config nlohmann_json --cflags
     

    Users of the Meson build system will also be able to use a system-wide library, which will be found by pkg-config:

    json = dependency('nlohmann_json', required: true)
    -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index b8612b10a..a231bf69e 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -2,950 +2,950 @@ https://json.nlohmann.me/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/operator_gtgt/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/operator_literal_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/operator_literal_json_pointer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/operator_ltlt/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/ordered_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/ordered_map/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/adl_serializer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/adl_serializer/from_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/adl_serializer/to_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/accept/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/array/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/array_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/at/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/back/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/basic_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/begin/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/binary/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/binary_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/boolean_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/cbegin/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/cbor_tag_handler_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/cend/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/clear/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/contains/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/count/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/crbegin/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/crend/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/default_object_comparator_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/diff/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/dump/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/emplace/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/emplace_back/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/empty/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/end/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/end_pos/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/erase/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/error_handler_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/exception/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/find/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/flatten/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/from_bjdata/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/from_bson/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/from_cbor/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/from_msgpack/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/from_ubjson/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/front/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/get/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/get_allocator/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/get_binary/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/get_ptr/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/get_ref/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/get_to/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/input_format_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/insert/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/invalid_iterator/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_array/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_binary/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_boolean/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_discarded/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_null/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_number/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_number_float/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_number_integer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_number_unsigned/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_object/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_primitive/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_string/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/is_structured/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/items/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/json_base_class_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/json_serializer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/max_size/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/merge_patch/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/meta/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/number_float_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/number_integer_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/number_unsigned_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/object/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/object_comparator_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/object_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator%2B%3D/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator%3D/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator%5B%5D/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_ValueType/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_eq/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_ge/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_gt/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_le/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_lt/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_ne/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_spaceship/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/operator_value_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/other_error/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/out_of_range/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/parse/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/parse_error/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/parse_event_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/parser_callback_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/patch/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/patch_inplace/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/push_back/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/rbegin/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/rend/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/sax_parse/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/size/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/start_pos/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/std_hash/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/std_swap/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/string_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/swap/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/to_bjdata/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/to_bson/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/to_cbor/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/to_msgpack/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/to_string/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/to_ubjson/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/type/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/type_error/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/type_name/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/unflatten/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/update/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/value/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/value_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/basic_json/~basic_json/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/byte_container_with_subtype/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/byte_container_with_subtype/byte_container_with_subtype/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/byte_container_with_subtype/clear_subtype/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/byte_container_with_subtype/has_subtype/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/byte_container_with_subtype/set_subtype/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/byte_container_with_subtype/subtype/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/back/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/empty/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/json_pointer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/operator_eq/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/operator_ne/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/operator_slash/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/operator_slasheq/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/operator_string_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/parent_pointer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/pop_back/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/push_back/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/string_t/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_pointer/to_string/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/binary/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/boolean/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/end_array/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/end_object/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/key/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/null/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/number_float/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/number_integer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/number_unsigned/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/parse_error/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/start_array/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/start_object/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/json_sax/string/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_assert/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_diagnostic_positions/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_diagnostics/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_disable_enum_serialization/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_has_cpp_11/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_has_filesystem/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_has_ranges/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_has_static_rtti/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_has_three_way_comparison/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_no_io/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_noexception/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_skip_library_version_check/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_skip_unsupported_compiler_check/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_throw_user/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_use_global_udls/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_use_implicit_conversions/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/json_use_legacy_discarded_value_comparison/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_define_derived_type/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_define_type_intrusive/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_define_type_non_intrusive/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_json_namespace/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_json_namespace_begin/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_json_namespace_no_version/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_json_serialize_enum/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/api/macros/nlohmann_json_version_major/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/community/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/community/code_of_conduct/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/community/contribution_guidelines/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/community/governance/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/community/quality_assurance/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/community/security_policy/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/arbitrary_types/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/assertions/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_values/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/comments/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/enum_conversion/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/iterators/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/json_patch/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/json_pointer/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/macros/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/merge_patch/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/modules/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/namespace/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/object_order/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/trailing_commas/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_formats/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_formats/bjdata/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_formats/bson/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_formats/cbor/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_formats/messagepack/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/binary_formats/ubjson/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/element_access/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/element_access/checked_access/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/element_access/default_value/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/element_access/unchecked_access/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/parsing/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/parsing/json_lines/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/parsing/parse_exceptions/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/parsing/parser_callbacks/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/parsing/sax_interface/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/types/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/features/types/number_handling/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/architecture/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/customers/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/design_goals/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/exceptions/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/faq/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/license/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/releases/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/home/sponsors/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/integration/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/integration/cmake/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/integration/migration_guide/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/integration/package_managers/ - 2026-01-27 + 2026-03-03 https://json.nlohmann.me/integration/pkg-config/ - 2026-01-27 + 2026-03-03 \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index bd2ebdcfb..861a8f200 100644 Binary files a/sitemap.xml.gz and b/sitemap.xml.gz differ