diff --git a/coverage/lcov.info b/coverage/lcov.info index 8fc9201..5ac1390 100644 --- a/coverage/lcov.info +++ b/coverage/lcov.info @@ -9,9 +9,9 @@ FN:160,generate_id FNF:6 FNH:6 FNDA:54,entity -FNDA:54,preload -FNDA:108,build_api_make -FNDA:292,entityAPI +FNDA:55,preload +FNDA:110,build_api_make +FNDA:297,entityAPI FNDA:65,seneca.root.private$.exports.Entity.log$ FNDA:56,generate_id DA:1,1 @@ -81,89 +81,89 @@ DA:64,1 DA:65,1 DA:66,1 DA:67,1 -DA:68,54 -DA:69,54 -DA:70,54 -DA:71,54 -DA:72,54 -DA:73,54 -DA:74,54 -DA:75,54 -DA:76,54 -DA:77,54 -DA:78,54 -DA:79,54 -DA:80,54 -DA:81,54 -DA:82,54 -DA:83,54 -DA:84,54 -DA:85,54 -DA:86,54 -DA:87,108 -DA:88,108 -DA:89,292 -DA:90,292 -DA:91,292 -DA:92,108 -DA:93,108 -DA:94,108 -DA:95,54 -DA:96,54 -DA:97,54 -DA:98,54 -DA:99,54 -DA:100,54 -DA:101,54 -DA:102,51 -DA:103,51 -DA:104,54 -DA:105,54 -DA:106,51 -DA:107,51 -DA:108,54 -DA:109,54 -DA:110,51 -DA:111,51 -DA:112,54 -DA:113,54 -DA:114,54 -DA:115,54 -DA:116,54 -DA:117,54 -DA:118,54 -DA:119,54 -DA:120,54 -DA:121,54 -DA:122,54 -DA:123,54 -DA:124,54 -DA:125,54 -DA:126,54 -DA:127,54 -DA:128,54 +DA:68,55 +DA:69,55 +DA:70,55 +DA:71,55 +DA:72,55 +DA:73,55 +DA:74,55 +DA:75,55 +DA:76,55 +DA:77,55 +DA:78,55 +DA:79,55 +DA:80,55 +DA:81,55 +DA:82,55 +DA:83,55 +DA:84,55 +DA:85,55 +DA:86,55 +DA:87,110 +DA:88,110 +DA:89,297 +DA:90,297 +DA:91,297 +DA:92,110 +DA:93,110 +DA:94,110 +DA:95,55 +DA:96,55 +DA:97,55 +DA:98,55 +DA:99,55 +DA:100,55 +DA:101,55 +DA:102,52 +DA:103,52 +DA:104,55 +DA:105,55 +DA:106,52 +DA:107,52 +DA:108,55 +DA:109,55 +DA:110,52 +DA:111,52 +DA:112,55 +DA:113,55 +DA:114,55 +DA:115,55 +DA:116,55 +DA:117,55 +DA:118,55 +DA:119,55 +DA:120,55 +DA:121,55 +DA:122,55 +DA:123,55 +DA:124,55 +DA:125,55 +DA:126,55 +DA:127,55 +DA:128,55 DA:129,1 DA:130,65 DA:131,65 DA:132,65 DA:133,65 DA:134,1 -DA:135,54 -DA:136,54 -DA:137,54 -DA:138,54 -DA:139,54 -DA:140,54 -DA:141,54 -DA:142,54 -DA:143,54 -DA:144,54 -DA:145,54 -DA:146,54 -DA:147,54 -DA:148,54 -DA:149,54 -DA:150,54 +DA:135,55 +DA:136,55 +DA:137,55 +DA:138,55 +DA:139,55 +DA:140,55 +DA:141,55 +DA:142,55 +DA:143,55 +DA:144,55 +DA:145,55 +DA:146,55 +DA:147,55 +DA:148,55 +DA:149,55 +DA:150,55 DA:151,1 DA:152,1 DA:153,1 @@ -210,17 +210,17 @@ DA:193,1 LF:193 LH:193 BRDA:20,0,0,54 -BRDA:68,1,0,54 +BRDA:68,1,0,55 BRDA:73,2,0,3 -BRDA:80,3,0,51 -BRDA:84,4,0,51 -BRDA:101,5,0,51 -BRDA:105,6,0,51 -BRDA:109,7,0,51 +BRDA:80,3,0,52 +BRDA:84,4,0,52 +BRDA:101,5,0,52 +BRDA:105,6,0,52 +BRDA:109,7,0,52 BRDA:128,8,0,0 BRDA:128,9,0,1 -BRDA:86,10,0,108 -BRDA:88,11,0,292 +BRDA:86,10,0,110 +BRDA:88,11,0,297 BRDA:129,12,0,65 BRDA:160,13,0,56 BRDA:164,14,0,2 @@ -272,7 +272,7 @@ SF:src/valid.ts FN:8,buildValidation FNF:1 FNH:1 -FNDA:54,buildValidation +FNDA:55,buildValidation DA:1,1 DA:2,1 DA:3,1 @@ -280,29 +280,29 @@ DA:4,1 DA:5,1 DA:6,1 DA:7,1 -DA:8,54 -DA:9,54 -DA:10,54 -DA:11,54 -DA:12,54 -DA:13,54 -DA:14,54 -DA:15,54 -DA:16,54 -DA:17,54 -DA:18,54 -DA:19,54 -DA:20,54 -DA:21,6 -DA:22,6 -DA:23,6 -DA:24,6 -DA:25,6 -DA:26,6 -DA:27,6 -DA:28,3 -DA:29,3 -DA:30,3 +DA:8,55 +DA:9,55 +DA:10,55 +DA:11,55 +DA:12,55 +DA:13,55 +DA:14,55 +DA:15,55 +DA:16,55 +DA:17,55 +DA:18,55 +DA:19,55 +DA:20,55 +DA:21,9 +DA:22,9 +DA:23,9 +DA:24,9 +DA:25,9 +DA:26,9 +DA:27,9 +DA:28,5 +DA:29,5 +DA:30,4 DA:31,2 DA:32,2 DA:33,2 @@ -310,37 +310,36 @@ DA:34,2 DA:35,2 DA:36,2 DA:37,2 -DA:38,2 -DA:39,2 -DA:40,6 -DA:41,6 -DA:42,6 -DA:43,6 -DA:44,6 -DA:45,6 -DA:46,6 -DA:47,6 -DA:48,54 -DA:49,54 -DA:50,54 -DA:51,54 -DA:52,54 +DA:38,9 +DA:39,9 +DA:40,9 +DA:41,9 +DA:42,9 +DA:43,9 +DA:44,9 +DA:45,9 +DA:46,55 +DA:47,55 +DA:48,55 +DA:49,55 +DA:50,55 +DA:51,1 +DA:52,1 DA:53,1 DA:54,1 DA:55,1 -DA:56,1 -DA:57,1 -LF:57 -LH:57 -BRDA:8,0,0,54 +LF:55 +LH:55 +BRDA:8,0,0,55 BRDA:14,1,0,0 -BRDA:20,2,0,6 -BRDA:27,3,0,3 -BRDA:30,4,0,2 -BRDA:32,5,0,1 -BRDA:33,6,0,1 -BRF:7 -BRH:6 +BRDA:20,2,0,9 +BRDA:27,3,0,5 +BRDA:30,4,0,4 +BRDA:30,5,0,2 +BRDA:32,6,0,1 +BRDA:33,7,0,1 +BRF:8 +BRH:7 end_of_record TN: SF:src/lib/make_entity.ts @@ -350,53 +349,55 @@ FN:102,Entity FN:97,get_instance FN:105,Entity.private$.get_instance FN:135,make$ -FN:234,save$ -FN:289,native$ -FN:313,load$ -FN:368,list$ -FN:415,remove$ -FN:450,delete$ -FN:459,fields$ -FN:476,close$ -FN:493,is$ -FN:518,canon$ -FN:571,data$ -FN:645,clone$ -FN:661,custom$ -FN:665,directive$ -FN:672,entityPromise -FN:691,prepareCmd -FN:705,emptyQuery -FN:710,normalize_query -FN:741,parsecanon -FN:774,canonstr -FN:783,handle_options -FN:810,Entity.done$ -FN:822,make_toString -FN:859,MakeEntity -FN:878,custom$ -FN:896,MakeEntity.hidden.directive$ -FN:915,jsonic_strify -FN:988,jsonic_stringify -FNF:34 -FNH:28 -FNDA:119,makeEntMsg -FNDA:476,strictCanon -FNDA:357,Entity +FN:230,valid$ +FN:293,save$ +FN:352,native$ +FN:376,load$ +FN:431,list$ +FN:478,remove$ +FN:513,delete$ +FN:522,fields$ +FN:539,close$ +FN:556,is$ +FN:581,canon$ +FN:634,data$ +FN:708,clone$ +FN:724,custom$ +FN:728,directive$ +FN:735,entityPromise +FN:754,prepareCmd +FN:768,emptyQuery +FN:773,normalize_query +FN:804,parsecanon +FN:837,canonstr +FN:846,handle_options +FN:873,Entity.done$ +FN:885,make_toString +FN:922,MakeEntity +FN:941,custom$ +FN:959,MakeEntity.hidden.directive$ +FN:978,jsonic_strify +FN:1051,jsonic_stringify +FNF:35 +FNH:29 +FNDA:194,makeEntMsg +FNDA:557,strictCanon +FNDA:363,Entity FNDA:0,get_instance -FNDA:602,Entity.private$.get_instance -FNDA:408,make$ +FNDA:682,Entity.private$.get_instance +FNDA:413,make$ +FNDA:75,valid$ FNDA:68,save$ FNDA:0,native$ FNDA:16,load$ FNDA:26,list$ FNDA:9,remove$ FNDA:0,delete$ -FNDA:108,fields$ +FNDA:116,fields$ FNDA:0,close$ FNDA:30,is$ -FNDA:1824,canon$ -FNDA:166,data$ +FNDA:1842,canon$ +FNDA:179,data$ FNDA:3,clone$ FNDA:0,custom$ FNDA:0,directive$ @@ -404,12 +405,12 @@ FNDA:58,entityPromise FNDA:119,prepareCmd FNDA:25,emptyQuery FNDA:51,normalize_query -FNDA:290,parsecanon -FNDA:1273,canonstr -FNDA:357,handle_options +FNDA:298,parsecanon +FNDA:1285,canonstr +FNDA:363,handle_options FNDA:1,Entity.done$ FNDA:3,make_toString -FNDA:357,MakeEntity +FNDA:363,MakeEntity FNDA:4,custom$ FNDA:1,MakeEntity.hidden.directive$ FNDA:8206,jsonic_strify @@ -447,44 +448,44 @@ DA:30,1 DA:31,1 DA:32,1 DA:33,1 -DA:34,119 -DA:35,119 -DA:36,119 -DA:37,119 -DA:38,119 -DA:39,119 -DA:40,119 -DA:41,119 -DA:42,119 -DA:43,119 -DA:44,119 -DA:45,119 -DA:46,119 -DA:47,119 -DA:48,119 -DA:49,119 -DA:50,119 -DA:51,119 -DA:52,119 -DA:53,1 -DA:54,1 -DA:55,119 -DA:56,119 -DA:57,119 -DA:58,119 -DA:59,119 +DA:34,194 +DA:35,194 +DA:36,194 +DA:37,194 +DA:38,194 +DA:39,194 +DA:40,194 +DA:41,194 +DA:42,194 +DA:43,194 +DA:44,194 +DA:45,194 +DA:46,194 +DA:47,194 +DA:48,194 +DA:49,194 +DA:50,194 +DA:51,194 +DA:52,194 +DA:53,2 +DA:54,2 +DA:55,194 +DA:56,194 +DA:57,194 +DA:58,194 +DA:59,194 DA:60,1 -DA:61,476 -DA:62,476 -DA:63,476 -DA:64,476 -DA:65,476 -DA:66,476 -DA:67,476 -DA:68,11 -DA:69,11 -DA:70,11 -DA:71,11 +DA:61,557 +DA:62,557 +DA:63,557 +DA:64,557 +DA:65,557 +DA:66,557 +DA:67,557 +DA:68,14 +DA:69,14 +DA:70,14 +DA:71,14 DA:72,1 DA:73,1 DA:74,1 @@ -492,12 +493,12 @@ DA:75,1 DA:76,1 DA:77,1 DA:78,1 -DA:79,11 -DA:80,11 +DA:79,14 +DA:80,14 DA:81,1 DA:82,1 -DA:83,11 -DA:84,476 +DA:83,14 +DA:84,557 DA:85,1 DA:86,1 DA:87,1 @@ -516,23 +517,23 @@ DA:99,1 DA:100,1 DA:101,1 DA:102,1 -DA:103,357 -DA:104,357 -DA:105,357 -DA:106,602 -DA:107,602 -DA:108,357 -DA:109,357 -DA:110,357 -DA:111,357 -DA:112,357 -DA:113,357 -DA:114,357 -DA:115,357 -DA:116,357 -DA:117,357 -DA:118,357 -DA:119,357 +DA:103,363 +DA:104,363 +DA:105,363 +DA:106,682 +DA:107,682 +DA:108,363 +DA:109,363 +DA:110,363 +DA:111,363 +DA:112,363 +DA:113,363 +DA:114,363 +DA:115,363 +DA:116,363 +DA:117,363 +DA:118,363 +DA:119,363 DA:120,1 DA:121,1 DA:122,1 @@ -549,81 +550,81 @@ DA:132,1 DA:133,1 DA:134,1 DA:135,1 -DA:136,408 -DA:137,408 -DA:138,408 -DA:139,408 -DA:140,408 -DA:141,408 -DA:142,292 -DA:143,292 -DA:144,292 -DA:145,408 -DA:146,408 -DA:147,408 -DA:148,408 -DA:149,408 -DA:150,292 -DA:151,292 -DA:152,292 -DA:153,292 -DA:154,292 -DA:155,292 -DA:156,292 -DA:157,292 -DA:158,408 -DA:159,408 +DA:136,413 +DA:137,413 +DA:138,413 +DA:139,413 +DA:140,413 +DA:141,413 +DA:142,297 +DA:143,297 +DA:144,297 +DA:145,413 +DA:146,413 +DA:147,413 +DA:148,413 +DA:149,413 +DA:150,297 +DA:151,297 +DA:152,297 +DA:153,297 +DA:154,297 +DA:155,297 +DA:156,297 +DA:157,297 +DA:158,413 +DA:159,413 DA:160,102 DA:161,102 -DA:162,306 -DA:163,306 -DA:164,306 -DA:165,306 -DA:166,408 +DA:162,311 +DA:163,311 +DA:164,311 +DA:165,311 +DA:166,413 DA:167,214 DA:168,214 DA:169,214 -DA:170,306 -DA:171,306 -DA:172,408 -DA:173,795 -DA:174,795 -DA:175,306 -DA:176,306 -DA:177,408 +DA:170,311 +DA:171,311 +DA:172,413 +DA:173,805 +DA:174,805 +DA:175,311 +DA:176,311 +DA:177,413 DA:178,107 -DA:179,408 +DA:179,413 DA:180,76 DA:181,76 DA:182,76 DA:183,76 -DA:184,199 -DA:185,123 -DA:186,123 -DA:187,123 -DA:188,123 -DA:189,306 -DA:190,306 -DA:191,306 -DA:192,306 -DA:193,408 -DA:194,408 -DA:195,408 -DA:196,408 -DA:197,408 -DA:198,408 -DA:199,408 -DA:200,408 -DA:201,408 -DA:202,408 -DA:203,408 -DA:204,408 -DA:205,408 -DA:206,408 -DA:207,408 -DA:208,408 -DA:209,408 -DA:210,408 +DA:184,204 +DA:185,128 +DA:186,128 +DA:187,128 +DA:188,128 +DA:189,311 +DA:190,311 +DA:191,311 +DA:192,311 +DA:193,413 +DA:194,413 +DA:195,413 +DA:196,413 +DA:197,413 +DA:198,413 +DA:199,413 +DA:200,413 +DA:201,413 +DA:202,413 +DA:203,413 +DA:204,413 +DA:205,413 +DA:206,413 +DA:207,413 +DA:208,413 +DA:209,413 +DA:210,413 DA:211,481 DA:212,481 DA:213,293 @@ -632,327 +633,327 @@ DA:215,1 DA:216,1 DA:217,481 DA:218,481 -DA:219,305 -DA:220,408 +DA:219,310 +DA:220,413 DA:221,2 DA:222,2 -DA:223,305 -DA:224,305 +DA:223,310 +DA:224,310 DA:225,64 -DA:226,408 -DA:227,408 -DA:228,408 +DA:226,413 +DA:227,413 +DA:228,413 DA:229,1 DA:230,1 -DA:231,1 -DA:232,1 -DA:233,1 -DA:234,1 -DA:235,68 -DA:236,68 -DA:237,68 -DA:238,68 -DA:239,68 -DA:240,68 -DA:241,68 -DA:242,68 -DA:243,68 -DA:244,68 -DA:245,68 -DA:246,68 -DA:247,68 -DA:248,68 -DA:249,12 -DA:250,11 -DA:251,11 -DA:252,11 -DA:253,11 -DA:254,10 -DA:255,11 +DA:231,75 +DA:232,75 +DA:233,75 +DA:234,75 +DA:235,75 +DA:236,75 +DA:237,75 +DA:238,75 +DA:239,75 +DA:240,75 +DA:241,75 +DA:242,75 +DA:243,75 +DA:244,75 +DA:245,75 +DA:246,75 +DA:247,75 +DA:248,18 +DA:249,16 +DA:250,16 +DA:251,16 +DA:252,16 +DA:253,15 +DA:254,16 +DA:255,1 DA:256,1 DA:257,1 -DA:258,1 -DA:259,11 -DA:260,11 -DA:261,11 +DA:258,16 +DA:259,16 +DA:260,16 +DA:261,1 DA:262,1 DA:263,1 DA:264,1 DA:265,1 DA:266,1 -DA:267,1 -DA:268,11 -DA:269,11 -DA:270,11 -DA:271,12 -DA:272,68 -DA:273,64 -DA:274,64 -DA:275,68 -DA:276,68 -DA:277,68 -DA:278,68 -DA:279,68 -DA:280,68 -DA:281,1 -DA:282,1 -DA:283,1 -DA:284,1 -DA:285,1 -DA:286,1 -DA:287,1 +DA:267,16 +DA:268,16 +DA:269,4 +DA:270,4 +DA:271,16 +DA:272,16 +DA:273,16 +DA:274,16 +DA:275,2 +DA:276,2 +DA:277,9 +DA:278,9 +DA:279,18 +DA:280,75 +DA:281,68 +DA:282,75 +DA:283,0 +DA:284,0 +DA:285,68 +DA:286,68 +DA:287,68 DA:288,1 DA:289,1 -DA:290,0 -DA:291,0 -DA:292,0 -DA:293,0 -DA:294,0 -DA:295,0 -DA:296,0 -DA:297,0 -DA:298,0 -DA:299,0 -DA:300,0 -DA:301,0 -DA:302,0 -DA:303,0 -DA:304,1 -DA:305,1 -DA:306,1 -DA:307,1 -DA:308,1 -DA:309,1 -DA:310,1 -DA:311,1 -DA:312,1 -DA:313,1 -DA:314,16 -DA:315,16 -DA:316,16 -DA:317,3 -DA:318,3 -DA:319,3 -DA:320,16 -DA:321,16 -DA:322,16 -DA:323,16 -DA:324,16 -DA:325,16 -DA:326,16 -DA:327,16 -DA:328,16 -DA:329,16 -DA:330,16 -DA:331,16 -DA:332,16 -DA:333,16 -DA:334,16 -DA:335,16 -DA:336,16 -DA:337,16 -DA:338,5 -DA:339,5 -DA:340,5 -DA:341,5 -DA:342,11 -DA:343,11 -DA:344,16 -DA:345,16 -DA:346,16 -DA:347,16 -DA:348,16 -DA:349,16 +DA:290,1 +DA:291,1 +DA:292,1 +DA:293,1 +DA:294,68 +DA:295,68 +DA:296,68 +DA:297,68 +DA:298,68 +DA:299,68 +DA:300,68 +DA:301,68 +DA:302,68 +DA:303,68 +DA:304,68 +DA:305,68 +DA:306,68 +DA:307,68 +DA:308,68 +DA:309,68 +DA:310,68 +DA:311,68 +DA:312,68 +DA:313,68 +DA:314,68 +DA:315,68 +DA:316,68 +DA:317,68 +DA:318,68 +DA:319,68 +DA:320,68 +DA:321,68 +DA:322,68 +DA:323,68 +DA:324,68 +DA:325,68 +DA:326,68 +DA:327,68 +DA:328,68 +DA:329,68 +DA:330,68 +DA:331,68 +DA:332,68 +DA:333,68 +DA:334,68 +DA:335,68 +DA:336,68 +DA:337,68 +DA:338,68 +DA:339,68 +DA:340,68 +DA:341,68 +DA:342,68 +DA:343,68 +DA:344,1 +DA:345,1 +DA:346,1 +DA:347,1 +DA:348,1 +DA:349,1 DA:350,1 DA:351,1 DA:352,1 -DA:353,1 -DA:354,1 -DA:355,1 -DA:356,1 -DA:357,1 -DA:358,1 -DA:359,1 -DA:360,1 -DA:361,1 -DA:362,1 -DA:363,1 -DA:364,1 -DA:365,1 -DA:366,1 +DA:353,0 +DA:354,0 +DA:355,0 +DA:356,0 +DA:357,0 +DA:358,0 +DA:359,0 +DA:360,0 +DA:361,0 +DA:362,0 +DA:363,0 +DA:364,0 +DA:365,0 +DA:366,0 DA:367,1 DA:368,1 -DA:369,26 -DA:370,26 -DA:371,26 -DA:372,7 -DA:373,7 -DA:374,7 -DA:375,26 -DA:376,26 -DA:377,26 -DA:378,26 -DA:379,26 -DA:380,26 -DA:381,26 -DA:382,26 -DA:383,26 -DA:384,26 -DA:385,26 -DA:386,26 -DA:387,26 -DA:388,26 -DA:389,26 -DA:390,26 -DA:391,26 -DA:392,26 -DA:393,26 -DA:394,13 -DA:395,13 -DA:396,13 -DA:397,26 -DA:398,26 -DA:399,26 -DA:400,26 -DA:401,1 -DA:402,1 -DA:403,1 -DA:404,1 -DA:405,1 -DA:406,1 -DA:407,1 -DA:408,1 -DA:409,1 -DA:410,1 -DA:411,1 -DA:412,1 +DA:369,1 +DA:370,1 +DA:371,1 +DA:372,1 +DA:373,1 +DA:374,1 +DA:375,1 +DA:376,1 +DA:377,16 +DA:378,16 +DA:379,16 +DA:380,3 +DA:381,3 +DA:382,3 +DA:383,16 +DA:384,16 +DA:385,16 +DA:386,16 +DA:387,16 +DA:388,16 +DA:389,16 +DA:390,16 +DA:391,16 +DA:392,16 +DA:393,16 +DA:394,16 +DA:395,16 +DA:396,16 +DA:397,16 +DA:398,16 +DA:399,16 +DA:400,16 +DA:401,5 +DA:402,5 +DA:403,5 +DA:404,5 +DA:405,11 +DA:406,11 +DA:407,16 +DA:408,16 +DA:409,16 +DA:410,16 +DA:411,16 +DA:412,16 DA:413,1 DA:414,1 DA:415,1 -DA:416,9 -DA:417,9 -DA:418,9 -DA:419,4 -DA:420,4 -DA:421,4 -DA:422,9 -DA:423,9 -DA:424,9 -DA:425,9 -DA:426,9 -DA:427,9 -DA:428,9 -DA:429,9 -DA:430,9 -DA:431,9 -DA:432,9 -DA:433,9 -DA:434,9 -DA:435,9 -DA:436,9 -DA:437,9 -DA:438,5 -DA:439,5 -DA:440,5 -DA:441,5 -DA:442,4 -DA:443,4 -DA:444,9 -DA:445,9 -DA:446,9 -DA:447,9 -DA:448,1 -DA:449,1 -DA:450,1 -DA:451,0 -DA:452,0 -DA:453,1 -DA:454,1 -DA:455,1 -DA:456,1 -DA:457,1 -DA:458,1 -DA:459,1 -DA:460,108 -DA:461,108 -DA:462,108 -DA:463,108 -DA:464,770 -DA:465,770 -DA:466,770 -DA:467,298 -DA:468,770 -DA:469,187 -DA:470,187 -DA:471,770 -DA:472,108 -DA:473,108 +DA:416,1 +DA:417,1 +DA:418,1 +DA:419,1 +DA:420,1 +DA:421,1 +DA:422,1 +DA:423,1 +DA:424,1 +DA:425,1 +DA:426,1 +DA:427,1 +DA:428,1 +DA:429,1 +DA:430,1 +DA:431,1 +DA:432,26 +DA:433,26 +DA:434,26 +DA:435,7 +DA:436,7 +DA:437,7 +DA:438,26 +DA:439,26 +DA:440,26 +DA:441,26 +DA:442,26 +DA:443,26 +DA:444,26 +DA:445,26 +DA:446,26 +DA:447,26 +DA:448,26 +DA:449,26 +DA:450,26 +DA:451,26 +DA:452,26 +DA:453,26 +DA:454,26 +DA:455,26 +DA:456,26 +DA:457,13 +DA:458,13 +DA:459,13 +DA:460,26 +DA:461,26 +DA:462,26 +DA:463,26 +DA:464,1 +DA:465,1 +DA:466,1 +DA:467,1 +DA:468,1 +DA:469,1 +DA:470,1 +DA:471,1 +DA:472,1 +DA:473,1 DA:474,1 DA:475,1 DA:476,1 -DA:477,0 -DA:478,0 -DA:479,0 -DA:480,0 -DA:481,0 -DA:482,0 -DA:483,0 -DA:484,0 -DA:485,0 -DA:486,0 -DA:487,0 -DA:488,0 -DA:489,0 -DA:490,0 -DA:491,0 -DA:492,1 -DA:493,1 -DA:494,30 -DA:495,30 -DA:496,30 -DA:497,30 -DA:498,30 -DA:499,30 -DA:500,30 -DA:501,30 -DA:502,30 -DA:503,30 -DA:504,30 -DA:505,30 -DA:506,30 -DA:507,30 -DA:508,30 -DA:509,30 -DA:510,30 -DA:511,90 -DA:512,90 -DA:513,30 -DA:514,30 -DA:515,30 -DA:516,30 +DA:477,1 +DA:478,1 +DA:479,9 +DA:480,9 +DA:481,9 +DA:482,4 +DA:483,4 +DA:484,4 +DA:485,9 +DA:486,9 +DA:487,9 +DA:488,9 +DA:489,9 +DA:490,9 +DA:491,9 +DA:492,9 +DA:493,9 +DA:494,9 +DA:495,9 +DA:496,9 +DA:497,9 +DA:498,9 +DA:499,9 +DA:500,9 +DA:501,5 +DA:502,5 +DA:503,5 +DA:504,5 +DA:505,4 +DA:506,4 +DA:507,9 +DA:508,9 +DA:509,9 +DA:510,9 +DA:511,1 +DA:512,1 +DA:513,1 +DA:514,0 +DA:515,0 +DA:516,1 DA:517,1 DA:518,1 -DA:519,1824 -DA:520,1824 -DA:521,1824 -DA:522,1824 -DA:523,1824 -DA:524,1460 -DA:525,18 -DA:526,18 -DA:527,18 -DA:528,18 -DA:529,18 -DA:530,18 -DA:531,12 -DA:532,18 -DA:533,1460 -DA:534,1 -DA:535,1442 -DA:536,0 -DA:537,0 -DA:538,0 -DA:539,0 +DA:519,1 +DA:520,1 +DA:521,1 +DA:522,1 +DA:523,116 +DA:524,116 +DA:525,116 +DA:526,116 +DA:527,819 +DA:528,819 +DA:529,819 +DA:530,315 +DA:531,819 +DA:532,196 +DA:533,196 +DA:534,819 +DA:535,116 +DA:536,116 +DA:537,1 +DA:538,1 +DA:539,1 DA:540,0 DA:541,0 DA:542,0 @@ -962,764 +963,849 @@ DA:545,0 DA:546,0 DA:547,0 DA:548,0 -DA:549,1460 -DA:550,1805 -DA:551,1824 -DA:552,1824 -DA:553,1273 -DA:554,1273 -DA:555,1273 -DA:556,1273 -DA:557,1273 -DA:558,1273 -DA:559,1824 -DA:560,532 -DA:561,532 -DA:562,531 -DA:563,531 -DA:564,530 -DA:565,530 -DA:566,2 -DA:567,2 -DA:568,1824 -DA:569,1 -DA:570,1 -DA:571,1 -DA:572,166 -DA:573,166 -DA:574,166 -DA:575,166 -DA:576,166 -DA:577,166 -DA:578,166 -DA:579,60 -DA:580,60 -DA:581,82 -DA:582,73 -DA:583,73 -DA:584,0 -DA:585,73 -DA:586,73 -DA:587,73 -DA:588,73 -DA:589,82 -DA:590,60 -DA:591,60 -DA:592,4 -DA:593,4 -DA:594,60 -DA:595,60 -DA:596,0 -DA:597,0 -DA:598,60 -DA:599,60 -DA:600,2 -DA:601,2 -DA:602,60 -DA:603,60 -DA:604,1 -DA:605,1 -DA:606,60 -DA:607,60 -DA:608,60 -DA:609,106 -DA:610,106 -DA:611,106 -DA:612,106 -DA:613,106 -DA:614,106 -DA:615,106 -DA:616,81 -DA:617,81 -DA:618,81 -DA:619,81 -DA:620,81 -DA:621,81 -DA:622,6 -DA:623,6 -DA:624,81 -DA:625,106 -DA:626,106 -DA:627,106 -DA:628,181 -DA:629,181 -DA:630,181 -DA:631,0 -DA:632,0 -DA:633,181 -DA:634,181 -DA:635,181 -DA:636,180 -DA:637,180 -DA:638,181 -DA:639,181 -DA:640,106 -DA:641,106 -DA:642,106 -DA:643,166 -DA:644,1 -DA:645,1 -DA:646,3 -DA:647,3 -DA:648,3 -DA:649,3 -DA:650,3 -DA:651,1 -DA:652,1 -DA:653,3 -DA:654,3 -DA:655,0 -DA:656,0 -DA:657,3 -DA:658,3 -DA:659,3 -DA:660,1 -DA:661,1 -DA:662,0 -DA:663,0 -DA:664,1 -DA:665,1 -DA:666,0 -DA:667,0 +DA:549,0 +DA:550,0 +DA:551,0 +DA:552,0 +DA:553,0 +DA:554,0 +DA:555,1 +DA:556,1 +DA:557,30 +DA:558,30 +DA:559,30 +DA:560,30 +DA:561,30 +DA:562,30 +DA:563,30 +DA:564,30 +DA:565,30 +DA:566,30 +DA:567,30 +DA:568,30 +DA:569,30 +DA:570,30 +DA:571,30 +DA:572,30 +DA:573,30 +DA:574,90 +DA:575,90 +DA:576,30 +DA:577,30 +DA:578,30 +DA:579,30 +DA:580,1 +DA:581,1 +DA:582,1842 +DA:583,1842 +DA:584,1842 +DA:585,1842 +DA:586,1842 +DA:587,1472 +DA:588,18 +DA:589,18 +DA:590,18 +DA:591,18 +DA:592,18 +DA:593,18 +DA:594,12 +DA:595,18 +DA:596,1472 +DA:597,1 +DA:598,1454 +DA:599,0 +DA:600,0 +DA:601,0 +DA:602,0 +DA:603,0 +DA:604,0 +DA:605,0 +DA:606,0 +DA:607,0 +DA:608,0 +DA:609,0 +DA:610,0 +DA:611,0 +DA:612,1472 +DA:613,1823 +DA:614,1842 +DA:615,1842 +DA:616,1285 +DA:617,1285 +DA:618,1285 +DA:619,1285 +DA:620,1285 +DA:621,1285 +DA:622,1842 +DA:623,538 +DA:624,538 +DA:625,537 +DA:626,537 +DA:627,536 +DA:628,536 +DA:629,2 +DA:630,2 +DA:631,1842 +DA:632,1 +DA:633,1 +DA:634,1 +DA:635,179 +DA:636,179 +DA:637,179 +DA:638,179 +DA:639,179 +DA:640,179 +DA:641,179 +DA:642,65 +DA:643,65 +DA:644,88 +DA:645,79 +DA:646,79 +DA:647,0 +DA:648,79 +DA:649,79 +DA:650,79 +DA:651,79 +DA:652,88 +DA:653,65 +DA:654,65 +DA:655,4 +DA:656,4 +DA:657,65 +DA:658,65 +DA:659,0 +DA:660,0 +DA:661,65 +DA:662,65 +DA:663,2 +DA:664,2 +DA:665,65 +DA:666,65 +DA:667,1 DA:668,1 -DA:669,1 -DA:670,1 -DA:671,1 -DA:672,58 -DA:673,58 -DA:674,58 -DA:675,58 -DA:676,58 -DA:677,58 -DA:678,58 -DA:679,57 -DA:680,57 -DA:681,4 -DA:682,4 -DA:683,4 -DA:684,57 -DA:685,57 -DA:686,58 -DA:687,58 -DA:688,58 -DA:689,58 -DA:690,1 -DA:691,119 -DA:692,119 -DA:693,28 -DA:694,119 -DA:695,20 -DA:696,20 -DA:697,20 -DA:698,20 -DA:699,20 -DA:700,20 -DA:701,119 -DA:702,119 -DA:703,119 -DA:704,1 -DA:705,25 -DA:706,25 -DA:707,25 +DA:669,65 +DA:670,65 +DA:671,65 +DA:672,114 +DA:673,114 +DA:674,114 +DA:675,114 +DA:676,114 +DA:677,114 +DA:678,114 +DA:679,81 +DA:680,81 +DA:681,81 +DA:682,81 +DA:683,81 +DA:684,81 +DA:685,6 +DA:686,6 +DA:687,81 +DA:688,114 +DA:689,114 +DA:690,114 +DA:691,190 +DA:692,190 +DA:693,190 +DA:694,0 +DA:695,0 +DA:696,190 +DA:697,190 +DA:698,190 +DA:699,189 +DA:700,189 +DA:701,190 +DA:702,190 +DA:703,114 +DA:704,114 +DA:705,114 +DA:706,179 +DA:707,1 DA:708,1 -DA:709,1 -DA:710,51 -DA:711,51 -DA:712,51 -DA:713,51 -DA:714,51 -DA:715,51 -DA:716,25 +DA:709,3 +DA:710,3 +DA:711,3 +DA:712,3 +DA:713,3 +DA:714,1 +DA:715,1 +DA:716,3 DA:717,3 -DA:718,25 -DA:719,6 -DA:720,22 -DA:721,0 -DA:722,0 -DA:723,25 -DA:724,51 -DA:725,51 -DA:726,51 -DA:727,51 -DA:728,30 -DA:729,37 +DA:718,0 +DA:719,0 +DA:720,3 +DA:721,3 +DA:722,3 +DA:723,1 +DA:724,1 +DA:725,0 +DA:726,0 +DA:727,1 +DA:728,1 +DA:729,0 DA:730,0 -DA:731,0 -DA:732,37 -DA:733,30 -DA:734,51 -DA:735,51 -DA:736,51 -DA:737,1 -DA:738,1 -DA:739,1 -DA:740,1 -DA:741,290 -DA:742,290 -DA:743,290 -DA:744,290 -DA:745,6 -DA:746,6 -DA:747,6 -DA:748,6 -DA:749,6 -DA:750,6 -DA:751,284 -DA:752,290 -DA:753,278 -DA:754,290 -DA:755,269 -DA:756,269 -DA:757,288 -DA:758,267 -DA:759,267 -DA:760,267 -DA:761,267 -DA:762,267 -DA:763,267 -DA:764,290 -DA:765,2 -DA:766,2 -DA:767,2 -DA:768,2 -DA:769,2 -DA:770,267 -DA:771,267 -DA:772,267 -DA:773,1 -DA:774,1273 -DA:775,1273 -DA:776,1273 -DA:777,1273 -DA:778,1273 -DA:779,1273 -DA:780,1273 -DA:781,1273 -DA:782,1 -DA:783,357 -DA:784,357 -DA:785,357 -DA:786,357 -DA:787,357 -DA:788,0 -DA:789,0 -DA:790,0 -DA:791,0 -DA:792,0 +DA:731,1 +DA:732,1 +DA:733,1 +DA:734,1 +DA:735,58 +DA:736,58 +DA:737,58 +DA:738,58 +DA:739,58 +DA:740,58 +DA:741,58 +DA:742,57 +DA:743,57 +DA:744,4 +DA:745,4 +DA:746,4 +DA:747,57 +DA:748,57 +DA:749,58 +DA:750,58 +DA:751,58 +DA:752,58 +DA:753,1 +DA:754,119 +DA:755,119 +DA:756,28 +DA:757,119 +DA:758,20 +DA:759,20 +DA:760,20 +DA:761,20 +DA:762,20 +DA:763,20 +DA:764,119 +DA:765,119 +DA:766,119 +DA:767,1 +DA:768,25 +DA:769,25 +DA:770,25 +DA:771,1 +DA:772,1 +DA:773,51 +DA:774,51 +DA:775,51 +DA:776,51 +DA:777,51 +DA:778,51 +DA:779,25 +DA:780,3 +DA:781,25 +DA:782,6 +DA:783,22 +DA:784,0 +DA:785,0 +DA:786,25 +DA:787,51 +DA:788,51 +DA:789,51 +DA:790,51 +DA:791,30 +DA:792,37 DA:793,0 DA:794,0 -DA:795,0 -DA:796,0 -DA:797,0 -DA:798,0 -DA:799,0 -DA:800,0 -DA:801,0 -DA:802,0 -DA:803,0 -DA:804,0 -DA:805,0 -DA:806,0 -DA:807,357 -DA:808,357 +DA:795,37 +DA:796,30 +DA:797,51 +DA:798,51 +DA:799,51 +DA:800,1 +DA:801,1 +DA:802,1 +DA:803,1 +DA:804,298 +DA:805,298 +DA:806,298 +DA:807,298 +DA:808,6 DA:809,6 DA:810,6 -DA:811,1 -DA:812,1 -DA:813,1 -DA:814,1 -DA:815,1 -DA:816,1 -DA:817,6 -DA:818,357 -DA:819,357 -DA:820,357 -DA:821,1 -DA:822,3 -DA:823,3 -DA:824,3 -DA:825,3 -DA:826,3 -DA:827,3 -DA:828,3 -DA:829,3 -DA:830,3 -DA:831,3 -DA:832,3 -DA:833,0 -DA:834,3 -DA:835,0 -DA:836,0 -DA:837,0 -DA:838,0 -DA:839,3 -DA:840,3 -DA:841,3 -DA:842,3 -DA:843,309 -DA:844,309 -DA:845,309 -DA:846,309 -DA:847,309 -DA:848,309 -DA:849,309 -DA:850,309 -DA:851,309 -DA:852,309 -DA:853,309 -DA:854,309 -DA:855,309 -DA:856,309 -DA:857,3 -DA:858,1 -DA:859,357 -DA:860,357 -DA:861,357 -DA:862,357 -DA:863,357 -DA:864,357 -DA:865,357 -DA:866,357 -DA:867,357 -DA:868,357 -DA:869,357 -DA:870,3 -DA:871,3 -DA:872,3 -DA:873,3 -DA:874,3 -DA:875,3 -DA:876,357 -DA:877,357 -DA:878,357 -DA:879,4 -DA:880,4 -DA:881,4 -DA:882,4 -DA:883,4 -DA:884,4 -DA:885,4 -DA:886,4 -DA:887,357 -DA:888,357 -DA:889,357 -DA:890,357 -DA:891,357 -DA:892,357 -DA:893,357 -DA:894,357 -DA:895,357 -DA:896,357 -DA:897,1 -DA:898,1 -DA:899,1 -DA:900,1 -DA:901,1 -DA:902,357 -DA:903,357 -DA:904,357 -DA:905,357 -DA:906,357 -DA:907,357 -DA:908,357 -DA:909,357 -DA:910,357 -DA:911,1 -DA:912,1 -DA:913,1 -DA:914,1 -DA:915,8206 -DA:916,8206 -DA:917,8206 -DA:918,7542 -DA:919,7542 -DA:920,8206 -DA:921,5538 -DA:922,5538 -DA:923,8206 -DA:924,0 -DA:925,0 -DA:926,0 -DA:927,0 -DA:928,0 -DA:929,0 -DA:930,5538 -DA:931,5538 -DA:932,5538 -DA:933,5538 -DA:934,5538 -DA:935,5538 -DA:936,8206 -DA:937,279 -DA:938,8206 -DA:939,3092 -DA:940,3092 -DA:941,1238 -DA:942,1238 -DA:943,7897 -DA:944,7897 -DA:945,7897 -DA:946,7897 -DA:947,7897 -DA:948,7897 -DA:949,7897 -DA:950,7897 -DA:951,7897 -DA:952,7897 -DA:953,7897 -DA:954,4927 -DA:955,4927 -DA:956,4927 -DA:957,4927 -DA:958,7897 -DA:959,1238 -DA:960,3092 -DA:961,5259 -DA:962,0 -DA:963,0 -DA:964,0 -DA:965,0 -DA:966,0 -DA:967,0 -DA:968,0 -DA:969,0 -DA:970,0 -DA:971,0 -DA:972,2167 -DA:973,2167 -DA:974,2167 -DA:975,2167 -DA:976,2167 -DA:977,2167 -DA:978,2167 -DA:979,2167 -DA:980,0 -DA:981,0 -DA:982,2167 -DA:983,2167 -DA:984,2167 -DA:985,8206 -DA:986,1 -DA:987,1 -DA:988,309 -DA:989,309 -DA:990,309 -DA:991,309 -DA:992,309 -DA:993,309 -DA:994,309 -DA:995,309 -DA:996,309 -DA:997,309 -DA:998,309 -DA:999,309 -DA:1000,309 -DA:1001,309 -DA:1002,309 -DA:1003,309 -DA:1004,309 -DA:1005,309 -DA:1006,309 -DA:1007,309 -DA:1008,309 -DA:1009,309 -DA:1010,0 -DA:1011,0 -DA:1012,0 -DA:1013,0 -DA:1014,309 -DA:1015,1 -DA:1016,1 -LF:1016 -LH:911 -BRDA:34,0,0,119 -BRDA:52,1,0,1 -BRDA:49,2,0,1 -BRDA:61,3,0,476 -BRDA:65,4,0,13 -BRDA:67,5,0,11 +DA:811,6 +DA:812,6 +DA:813,6 +DA:814,292 +DA:815,298 +DA:816,286 +DA:817,298 +DA:818,277 +DA:819,277 +DA:820,296 +DA:821,275 +DA:822,275 +DA:823,275 +DA:824,275 +DA:825,275 +DA:826,275 +DA:827,298 +DA:828,2 +DA:829,2 +DA:830,2 +DA:831,2 +DA:832,2 +DA:833,275 +DA:834,275 +DA:835,275 +DA:836,1 +DA:837,1285 +DA:838,1285 +DA:839,1285 +DA:840,1285 +DA:841,1285 +DA:842,1285 +DA:843,1285 +DA:844,1285 +DA:845,1 +DA:846,363 +DA:847,363 +DA:848,363 +DA:849,363 +DA:850,363 +DA:851,0 +DA:852,0 +DA:853,0 +DA:854,0 +DA:855,0 +DA:856,0 +DA:857,0 +DA:858,0 +DA:859,0 +DA:860,0 +DA:861,0 +DA:862,0 +DA:863,0 +DA:864,0 +DA:865,0 +DA:866,0 +DA:867,0 +DA:868,0 +DA:869,0 +DA:870,363 +DA:871,363 +DA:872,6 +DA:873,6 +DA:874,1 +DA:875,1 +DA:876,1 +DA:877,1 +DA:878,1 +DA:879,1 +DA:880,6 +DA:881,363 +DA:882,363 +DA:883,363 +DA:884,1 +DA:885,3 +DA:886,3 +DA:887,3 +DA:888,3 +DA:889,3 +DA:890,3 +DA:891,3 +DA:892,3 +DA:893,3 +DA:894,3 +DA:895,3 +DA:896,0 +DA:897,3 +DA:898,0 +DA:899,0 +DA:900,0 +DA:901,0 +DA:902,3 +DA:903,3 +DA:904,3 +DA:905,3 +DA:906,309 +DA:907,309 +DA:908,309 +DA:909,309 +DA:910,309 +DA:911,309 +DA:912,309 +DA:913,309 +DA:914,309 +DA:915,309 +DA:916,309 +DA:917,309 +DA:918,309 +DA:919,309 +DA:920,3 +DA:921,1 +DA:922,363 +DA:923,363 +DA:924,363 +DA:925,363 +DA:926,363 +DA:927,363 +DA:928,363 +DA:929,363 +DA:930,363 +DA:931,363 +DA:932,363 +DA:933,3 +DA:934,3 +DA:935,3 +DA:936,3 +DA:937,3 +DA:938,3 +DA:939,363 +DA:940,363 +DA:941,363 +DA:942,4 +DA:943,4 +DA:944,4 +DA:945,4 +DA:946,4 +DA:947,4 +DA:948,4 +DA:949,4 +DA:950,363 +DA:951,363 +DA:952,363 +DA:953,363 +DA:954,363 +DA:955,363 +DA:956,363 +DA:957,363 +DA:958,363 +DA:959,363 +DA:960,1 +DA:961,1 +DA:962,1 +DA:963,1 +DA:964,1 +DA:965,363 +DA:966,363 +DA:967,363 +DA:968,363 +DA:969,363 +DA:970,363 +DA:971,363 +DA:972,363 +DA:973,363 +DA:974,1 +DA:975,1 +DA:976,1 +DA:977,1 +DA:978,8206 +DA:979,8206 +DA:980,8206 +DA:981,7542 +DA:982,7542 +DA:983,8206 +DA:984,5538 +DA:985,5538 +DA:986,8206 +DA:987,0 +DA:988,0 +DA:989,0 +DA:990,0 +DA:991,0 +DA:992,0 +DA:993,5538 +DA:994,5538 +DA:995,5538 +DA:996,5538 +DA:997,5538 +DA:998,5538 +DA:999,8206 +DA:1000,279 +DA:1001,8206 +DA:1002,3092 +DA:1003,3092 +DA:1004,1238 +DA:1005,1238 +DA:1006,7897 +DA:1007,7897 +DA:1008,7897 +DA:1009,7897 +DA:1010,7897 +DA:1011,7897 +DA:1012,7897 +DA:1013,7897 +DA:1014,7897 +DA:1015,7897 +DA:1016,7897 +DA:1017,4927 +DA:1018,4927 +DA:1019,4927 +DA:1020,4927 +DA:1021,7897 +DA:1022,1238 +DA:1023,3092 +DA:1024,5259 +DA:1025,0 +DA:1026,0 +DA:1027,0 +DA:1028,0 +DA:1029,0 +DA:1030,0 +DA:1031,0 +DA:1032,0 +DA:1033,0 +DA:1034,0 +DA:1035,2167 +DA:1036,2167 +DA:1037,2167 +DA:1038,2167 +DA:1039,2167 +DA:1040,2167 +DA:1041,2167 +DA:1042,2167 +DA:1043,0 +DA:1044,0 +DA:1045,2167 +DA:1046,2167 +DA:1047,2167 +DA:1048,8206 +DA:1049,1 +DA:1050,1 +DA:1051,309 +DA:1052,309 +DA:1053,309 +DA:1054,309 +DA:1055,309 +DA:1056,309 +DA:1057,309 +DA:1058,309 +DA:1059,309 +DA:1060,309 +DA:1061,309 +DA:1062,309 +DA:1063,309 +DA:1064,309 +DA:1065,309 +DA:1066,309 +DA:1067,309 +DA:1068,309 +DA:1069,309 +DA:1070,309 +DA:1071,309 +DA:1072,309 +DA:1073,0 +DA:1074,0 +DA:1075,0 +DA:1076,0 +DA:1077,309 +DA:1078,1 +DA:1079,1 +LF:1079 +LH:972 +BRDA:34,0,0,194 +BRDA:52,1,0,2 +BRDA:49,2,0,2 +BRDA:61,3,0,557 +BRDA:65,4,0,16 +BRDA:67,5,0,14 BRDA:69,6,0,1 BRDA:71,7,0,1 BRDA:80,8,0,1 -BRDA:102,9,0,357 -BRDA:105,10,0,602 -BRDA:135,11,0,408 -BRDA:141,12,0,292 -BRDA:149,13,0,407 -BRDA:149,14,0,292 -BRDA:159,15,0,407 +BRDA:102,9,0,363 +BRDA:105,10,0,682 +BRDA:135,11,0,413 +BRDA:141,12,0,297 +BRDA:149,13,0,412 +BRDA:149,14,0,297 +BRDA:159,15,0,412 BRDA:159,16,0,285 BRDA:159,17,0,102 -BRDA:162,18,0,311 -BRDA:162,19,0,306 -BRDA:166,20,0,305 +BRDA:162,18,0,316 +BRDA:162,19,0,311 +BRDA:166,20,0,310 BRDA:166,21,0,214 -BRDA:170,22,0,306 -BRDA:172,23,0,795 -BRDA:175,24,0,306 +BRDA:170,22,0,311 +BRDA:172,23,0,805 +BRDA:175,24,0,311 BRDA:177,25,0,107 -BRDA:179,26,0,199 +BRDA:179,26,0,204 BRDA:179,27,0,76 BRDA:179,28,0,76 -BRDA:184,29,0,123 +BRDA:184,29,0,128 BRDA:186,30,0,9 -BRDA:186,31,0,114 -BRDA:189,32,0,394 -BRDA:189,33,0,306 -BRDA:193,34,0,300 +BRDA:186,31,0,119 +BRDA:189,32,0,399 +BRDA:189,33,0,311 +BRDA:193,34,0,305 BRDA:193,35,0,6 -BRDA:194,36,0,236 -BRDA:194,37,0,70 -BRDA:197,38,0,303 +BRDA:194,36,0,238 +BRDA:194,37,0,73 +BRDA:197,38,0,308 BRDA:197,39,0,3 -BRDA:198,40,0,291 -BRDA:198,41,0,15 +BRDA:198,40,0,293 +BRDA:198,41,0,18 BRDA:201,42,0,66 -BRDA:201,43,0,240 -BRDA:202,44,0,236 -BRDA:202,45,0,70 -BRDA:203,46,0,291 -BRDA:203,47,0,15 +BRDA:201,43,0,245 +BRDA:202,44,0,238 +BRDA:202,45,0,73 +BRDA:203,46,0,293 +BRDA:203,47,0,18 BRDA:210,48,0,481 BRDA:212,49,0,293 BRDA:214,50,0,188 BRDA:214,51,0,1 -BRDA:219,52,0,305 +BRDA:219,52,0,310 BRDA:220,53,0,2 -BRDA:223,54,0,305 +BRDA:223,54,0,310 BRDA:224,55,0,64 -BRDA:234,56,0,68 -BRDA:248,57,0,12 -BRDA:249,58,0,11 -BRDA:253,59,0,10 -BRDA:255,60,0,1 -BRDA:260,61,0,0 -BRDA:261,62,0,1 -BRDA:262,63,0,0 -BRDA:263,64,0,0 -BRDA:264,65,0,0 -BRDA:273,66,0,64 -BRDA:274,67,0,38 -BRDA:277,68,0,33 -BRDA:278,69,0,31 -BRDA:278,70,0,0 -BRDA:263,71,0,1 -BRDA:313,72,0,16 -BRDA:316,73,0,3 -BRDA:334,74,0,11 -BRDA:337,75,0,5 -BRDA:339,76,0,1 -BRDA:340,77,0,4 -BRDA:342,78,0,11 -BRDA:344,79,0,9 -BRDA:345,80,0,2 -BRDA:345,81,0,0 -BRDA:368,82,0,26 -BRDA:371,83,0,7 -BRDA:389,84,0,14 -BRDA:392,85,0,13 -BRDA:393,86,0,13 -BRDA:395,87,0,0 -BRDA:415,88,0,9 -BRDA:418,89,0,4 -BRDA:434,90,0,5 -BRDA:437,91,0,5 -BRDA:439,92,0,1 -BRDA:440,93,0,4 -BRDA:442,94,0,4 -BRDA:444,95,0,3 -BRDA:445,96,0,1 -BRDA:445,97,0,0 -BRDA:459,98,0,108 -BRDA:463,99,0,770 -BRDA:465,100,0,298 -BRDA:466,101,0,298 -BRDA:468,102,0,187 -BRDA:493,103,0,30 -BRDA:498,104,0,6 -BRDA:499,105,0,24 -BRDA:500,106,0,0 -BRDA:502,107,0,0 -BRDA:510,108,0,90 -BRDA:518,109,0,1824 -BRDA:523,110,0,1460 -BRDA:524,111,0,18 -BRDA:529,112,0,15 -BRDA:530,113,0,12 -BRDA:533,114,0,1442 -BRDA:533,115,0,1 -BRDA:535,116,0,1441 -BRDA:535,117,0,0 -BRDA:550,118,0,1805 -BRDA:551,119,0,1441 -BRDA:551,120,0,533 -BRDA:552,121,0,1273 -BRDA:558,122,0,909 -BRDA:558,123,0,1 -BRDA:558,124,0,1272 -BRDA:559,125,0,532 -BRDA:560,126,0,1 -BRDA:561,127,0,531 -BRDA:562,128,0,1 -BRDA:563,129,0,530 -BRDA:564,130,0,528 -BRDA:565,131,0,2 -BRDA:566,132,0,1 -BRDA:567,133,0,1 -BRDA:571,134,0,166 -BRDA:578,135,0,122 -BRDA:578,136,0,60 -BRDA:580,137,0,82 -BRDA:581,138,0,73 -BRDA:583,139,0,69 -BRDA:583,140,0,5 -BRDA:583,141,0,0 -BRDA:591,142,0,4 -BRDA:595,143,0,0 -BRDA:599,144,0,2 -BRDA:603,145,0,1 -BRDA:609,146,0,106 -BRDA:612,147,0,19 -BRDA:612,148,0,87 -BRDA:615,149,0,81 -BRDA:616,150,0,19 -BRDA:621,151,0,6 -BRDA:627,152,0,181 -BRDA:630,153,0,172 -BRDA:630,154,0,8 -BRDA:630,155,0,0 -BRDA:635,156,0,180 -BRDA:645,157,0,3 -BRDA:650,158,0,1 -BRDA:654,159,0,0 -BRDA:672,160,0,58 -BRDA:673,161,0,4 -BRDA:673,162,0,54 -BRDA:674,163,0,58 -BRDA:675,164,0,58 -BRDA:677,165,0,1 -BRDA:677,166,0,0 -BRDA:678,167,0,57 -BRDA:680,168,0,4 -BRDA:680,169,0,2 -BRDA:680,170,0,2 -BRDA:680,171,0,2 -BRDA:681,172,0,1 -BRDA:682,173,0,3 -BRDA:682,174,0,2 -BRDA:684,175,0,53 -BRDA:691,176,0,119 -BRDA:692,177,0,28 -BRDA:694,178,0,91 -BRDA:694,179,0,20 -BRDA:694,180,0,20 -BRDA:702,181,0,67 -BRDA:702,182,0,52 -BRDA:702,183,0,1 -BRDA:702,184,0,51 -BRDA:705,185,0,25 -BRDA:706,186,0,15 -BRDA:710,187,0,51 -BRDA:713,188,0,26 -BRDA:713,189,0,0 -BRDA:713,190,0,25 -BRDA:715,191,0,25 -BRDA:716,192,0,14 -BRDA:716,193,0,11 -BRDA:716,194,0,3 -BRDA:718,195,0,22 -BRDA:718,196,0,16 -BRDA:718,197,0,6 -BRDA:719,198,0,2 -BRDA:719,199,0,4 -BRDA:720,200,0,16 -BRDA:720,201,0,0 -BRDA:727,202,0,30 -BRDA:728,203,0,37 -BRDA:729,204,0,0 -BRDA:741,205,0,290 -BRDA:744,206,0,6 -BRDA:751,207,0,284 -BRDA:752,208,0,274 -BRDA:752,209,0,6 -BRDA:752,210,0,6 -BRDA:753,211,0,278 -BRDA:754,212,0,9 -BRDA:755,213,0,288 -BRDA:755,214,0,269 -BRDA:757,215,0,267 -BRDA:758,216,0,127 -BRDA:758,217,0,140 -BRDA:759,218,0,127 -BRDA:759,219,0,140 -BRDA:761,220,0,118 -BRDA:761,221,0,149 -BRDA:762,222,0,89 -BRDA:762,223,0,178 -BRDA:763,224,0,4 -BRDA:763,225,0,263 -BRDA:764,226,0,2 -BRDA:770,227,0,267 -BRDA:774,228,0,1273 -BRDA:775,229,0,0 -BRDA:777,230,0,44 -BRDA:777,231,0,1229 -BRDA:777,232,0,44 -BRDA:778,233,0,213 -BRDA:778,234,0,1060 -BRDA:778,235,0,213 -BRDA:779,236,0,962 -BRDA:779,237,0,311 -BRDA:779,238,0,962 -BRDA:783,239,0,357 -BRDA:784,240,0,0 -BRDA:787,241,0,0 -BRDA:808,242,0,0 -BRDA:808,243,0,6 -BRDA:810,244,0,1 -BRDA:812,245,0,0 -BRDA:813,246,0,1 -BRDA:822,247,0,3 -BRDA:832,248,0,0 -BRDA:834,249,0,0 -BRDA:834,250,0,0 -BRDA:842,251,0,309 -BRDA:859,252,0,357 -BRDA:868,253,0,356 -BRDA:869,254,0,3 -BRDA:878,255,0,4 -BRDA:881,256,0,1 -BRDA:896,257,0,1 -BRDA:915,258,0,8206 -BRDA:917,259,0,664 -BRDA:918,260,0,7542 -BRDA:920,261,0,2004 -BRDA:920,262,0,2004 -BRDA:921,263,0,5538 -BRDA:923,264,0,0 -BRDA:930,265,0,5538 -BRDA:936,266,0,279 -BRDA:937,267,0,0 -BRDA:938,268,0,5259 -BRDA:938,269,0,3092 -BRDA:940,270,0,1238 -BRDA:942,271,0,7897 -BRDA:943,272,0,0 -BRDA:949,273,0,6197 -BRDA:953,274,0,5893 -BRDA:953,275,0,4927 -BRDA:954,276,0,0 -BRDA:961,277,0,2167 -BRDA:961,278,0,0 -BRDA:979,279,0,0 -BRDA:988,280,0,309 -BRDA:990,281,0,0 -BRDA:999,282,0,0 -BRDA:999,283,0,0 -BRDA:1007,284,0,0 -BRDA:1009,285,0,0 -BRF:286 -BRH:248 +BRDA:230,56,0,75 +BRDA:236,57,0,5 +BRDA:236,58,0,70 +BRDA:239,59,0,5 +BRDA:239,60,0,70 +BRDA:239,61,0,7 +BRDA:247,62,0,18 +BRDA:248,63,0,16 +BRDA:252,64,0,15 +BRDA:254,65,0,1 +BRDA:259,66,0,5 +BRDA:259,67,0,11 +BRDA:260,68,0,1 +BRDA:261,69,0,0 +BRDA:262,70,0,0 +BRDA:263,71,0,0 +BRDA:268,72,0,3 +BRDA:268,73,0,13 +BRDA:268,74,0,15 +BRDA:268,75,0,4 +BRDA:274,76,0,4 +BRDA:274,77,0,2 +BRDA:275,78,0,1 +BRDA:275,79,0,1 +BRDA:275,80,0,1 +BRDA:275,81,0,1 +BRDA:277,82,0,9 +BRDA:281,83,0,68 +BRDA:282,84,0,4 +BRDA:282,85,0,64 +BRDA:282,86,0,0 +BRDA:285,87,0,68 +BRDA:262,88,0,1 +BRDA:293,89,0,68 +BRDA:337,90,0,38 +BRDA:340,91,0,33 +BRDA:341,92,0,31 +BRDA:341,93,0,0 +BRDA:376,94,0,16 +BRDA:379,95,0,3 +BRDA:397,96,0,11 +BRDA:400,97,0,5 +BRDA:402,98,0,1 +BRDA:403,99,0,4 +BRDA:405,100,0,11 +BRDA:407,101,0,9 +BRDA:408,102,0,2 +BRDA:408,103,0,0 +BRDA:431,104,0,26 +BRDA:434,105,0,7 +BRDA:452,106,0,14 +BRDA:455,107,0,13 +BRDA:456,108,0,13 +BRDA:458,109,0,0 +BRDA:478,110,0,9 +BRDA:481,111,0,4 +BRDA:497,112,0,5 +BRDA:500,113,0,5 +BRDA:502,114,0,1 +BRDA:503,115,0,4 +BRDA:505,116,0,4 +BRDA:507,117,0,3 +BRDA:508,118,0,1 +BRDA:508,119,0,0 +BRDA:522,120,0,116 +BRDA:526,121,0,819 +BRDA:528,122,0,315 +BRDA:529,123,0,315 +BRDA:531,124,0,196 +BRDA:556,125,0,30 +BRDA:561,126,0,6 +BRDA:562,127,0,24 +BRDA:563,128,0,0 +BRDA:565,129,0,0 +BRDA:573,130,0,90 +BRDA:581,131,0,1842 +BRDA:586,132,0,1472 +BRDA:587,133,0,18 +BRDA:592,134,0,15 +BRDA:593,135,0,12 +BRDA:596,136,0,1454 +BRDA:596,137,0,1 +BRDA:598,138,0,1453 +BRDA:598,139,0,0 +BRDA:613,140,0,1823 +BRDA:614,141,0,1453 +BRDA:614,142,0,539 +BRDA:615,143,0,1285 +BRDA:621,144,0,915 +BRDA:621,145,0,1 +BRDA:621,146,0,1284 +BRDA:622,147,0,538 +BRDA:623,148,0,1 +BRDA:624,149,0,537 +BRDA:625,150,0,1 +BRDA:626,151,0,536 +BRDA:627,152,0,534 +BRDA:628,153,0,2 +BRDA:629,154,0,1 +BRDA:630,155,0,1 +BRDA:634,156,0,179 +BRDA:641,157,0,127 +BRDA:641,158,0,65 +BRDA:643,159,0,88 +BRDA:644,160,0,79 +BRDA:646,161,0,75 +BRDA:646,162,0,5 +BRDA:646,163,0,0 +BRDA:654,164,0,4 +BRDA:658,165,0,0 +BRDA:662,166,0,2 +BRDA:666,167,0,1 +BRDA:672,168,0,114 +BRDA:675,169,0,19 +BRDA:675,170,0,95 +BRDA:678,171,0,81 +BRDA:679,172,0,19 +BRDA:684,173,0,6 +BRDA:690,174,0,190 +BRDA:693,175,0,181 +BRDA:693,176,0,8 +BRDA:693,177,0,0 +BRDA:698,178,0,189 +BRDA:708,179,0,3 +BRDA:713,180,0,1 +BRDA:717,181,0,0 +BRDA:735,182,0,58 +BRDA:736,183,0,4 +BRDA:736,184,0,54 +BRDA:737,185,0,58 +BRDA:738,186,0,58 +BRDA:740,187,0,1 +BRDA:740,188,0,0 +BRDA:741,189,0,57 +BRDA:743,190,0,4 +BRDA:743,191,0,2 +BRDA:743,192,0,2 +BRDA:743,193,0,2 +BRDA:744,194,0,1 +BRDA:745,195,0,3 +BRDA:745,196,0,2 +BRDA:747,197,0,53 +BRDA:754,198,0,119 +BRDA:755,199,0,28 +BRDA:757,200,0,91 +BRDA:757,201,0,20 +BRDA:757,202,0,20 +BRDA:765,203,0,67 +BRDA:765,204,0,52 +BRDA:765,205,0,1 +BRDA:765,206,0,51 +BRDA:768,207,0,25 +BRDA:769,208,0,15 +BRDA:773,209,0,51 +BRDA:776,210,0,26 +BRDA:776,211,0,0 +BRDA:776,212,0,25 +BRDA:778,213,0,25 +BRDA:779,214,0,14 +BRDA:779,215,0,11 +BRDA:779,216,0,3 +BRDA:781,217,0,22 +BRDA:781,218,0,16 +BRDA:781,219,0,6 +BRDA:782,220,0,2 +BRDA:782,221,0,4 +BRDA:783,222,0,16 +BRDA:783,223,0,0 +BRDA:790,224,0,30 +BRDA:791,225,0,37 +BRDA:792,226,0,0 +BRDA:804,227,0,298 +BRDA:807,228,0,6 +BRDA:814,229,0,292 +BRDA:815,230,0,282 +BRDA:815,231,0,6 +BRDA:815,232,0,6 +BRDA:816,233,0,286 +BRDA:817,234,0,9 +BRDA:818,235,0,296 +BRDA:818,236,0,277 +BRDA:820,237,0,275 +BRDA:821,238,0,129 +BRDA:821,239,0,146 +BRDA:822,240,0,129 +BRDA:822,241,0,146 +BRDA:824,242,0,119 +BRDA:824,243,0,156 +BRDA:825,244,0,91 +BRDA:825,245,0,184 +BRDA:826,246,0,5 +BRDA:826,247,0,270 +BRDA:827,248,0,2 +BRDA:833,249,0,275 +BRDA:837,250,0,1285 +BRDA:838,251,0,0 +BRDA:840,252,0,50 +BRDA:840,253,0,1235 +BRDA:840,254,0,50 +BRDA:841,255,0,219 +BRDA:841,256,0,1066 +BRDA:841,257,0,219 +BRDA:842,258,0,972 +BRDA:842,259,0,313 +BRDA:842,260,0,972 +BRDA:846,261,0,363 +BRDA:847,262,0,0 +BRDA:850,263,0,0 +BRDA:871,264,0,0 +BRDA:871,265,0,6 +BRDA:873,266,0,1 +BRDA:875,267,0,0 +BRDA:876,268,0,1 +BRDA:885,269,0,3 +BRDA:895,270,0,0 +BRDA:897,271,0,0 +BRDA:897,272,0,0 +BRDA:905,273,0,309 +BRDA:922,274,0,363 +BRDA:931,275,0,362 +BRDA:932,276,0,3 +BRDA:941,277,0,4 +BRDA:944,278,0,1 +BRDA:959,279,0,1 +BRDA:978,280,0,8206 +BRDA:980,281,0,664 +BRDA:981,282,0,7542 +BRDA:983,283,0,2004 +BRDA:983,284,0,2004 +BRDA:984,285,0,5538 +BRDA:986,286,0,0 +BRDA:993,287,0,5538 +BRDA:999,288,0,279 +BRDA:1000,289,0,0 +BRDA:1001,290,0,5259 +BRDA:1001,291,0,3092 +BRDA:1003,292,0,1238 +BRDA:1005,293,0,7897 +BRDA:1006,294,0,0 +BRDA:1012,295,0,6197 +BRDA:1016,296,0,5893 +BRDA:1016,297,0,4927 +BRDA:1017,298,0,0 +BRDA:1024,299,0,2167 +BRDA:1024,300,0,0 +BRDA:1042,301,0,0 +BRDA:1051,302,0,309 +BRDA:1053,303,0,0 +BRDA:1062,304,0,0 +BRDA:1062,305,0,0 +BRDA:1070,306,0,0 +BRDA:1072,307,0,0 +BRF:308 +BRH:270 end_of_record TN: SF:src/lib/store.ts @@ -1730,7 +1816,7 @@ FN:143,reify_entity_wrap FN:150,outfunc FNF:5 FNH:5 -FNDA:54,Store +FNDA:55,Store FNDA:59,make_tag FNDA:59,init FNDA:356,reify_entity_wrap @@ -1739,21 +1825,21 @@ DA:1,1 DA:2,1 DA:3,1 DA:4,1 -DA:5,54 -DA:6,54 -DA:7,54 -DA:8,54 +DA:5,55 +DA:6,55 +DA:7,55 +DA:8,55 DA:9,59 DA:10,59 DA:11,59 -DA:12,54 -DA:13,54 -DA:14,54 -DA:15,54 -DA:16,54 -DA:17,54 -DA:18,54 -DA:19,54 +DA:12,55 +DA:13,55 +DA:14,55 +DA:15,55 +DA:16,55 +DA:17,55 +DA:18,55 +DA:19,55 DA:20,59 DA:21,59 DA:22,59 @@ -1869,11 +1955,11 @@ DA:131,59 DA:132,59 DA:133,59 DA:134,59 -DA:135,54 -DA:136,54 -DA:137,54 -DA:138,54 -DA:139,54 +DA:135,55 +DA:136,55 +DA:137,55 +DA:138,55 +DA:139,55 DA:140,1 DA:141,1 DA:142,1 @@ -1935,7 +2021,7 @@ DA:197,1 DA:198,1 LF:198 LH:188 -BRDA:5,0,0,54 +BRDA:5,0,0,55 BRDA:8,1,0,59 BRDA:9,2,0,55 BRDA:19,3,0,59 diff --git a/dist/lib/make_entity.d.ts b/dist/lib/make_entity.d.ts index caf719d..450124b 100644 --- a/dist/lib/make_entity.d.ts +++ b/dist/lib/make_entity.d.ts @@ -12,6 +12,11 @@ declare class Entity implements Record { }; constructor(canon: any, seneca: any, options: any); make$(...args: any[]): any; + valid$(opts?: { + throws?: boolean; + errors?: boolean; + entmsg?: any; + }): boolean | any[]; /** Save the entity. * param {object} [data] - Subset of entity field values. * param {callback~save$} done - Callback function providing saved entity. diff --git a/dist/lib/make_entity.js b/dist/lib/make_entity.js index c7e34bb..4a4bb7f 100644 --- a/dist/lib/make_entity.js +++ b/dist/lib/make_entity.js @@ -47,7 +47,7 @@ function strictCanon(ent, entmsg) { if (options.strict && '-/-/-' !== ent.entity$ // template entity ) { - let entDefined = options.ent[ent.entity$] || options.ent[ent.entity$.replace(/-\//g, '')]; + let entDefined = options.ent[ent.entity$] || options.ent[ent.entity$.replace(/[-\/]/g, '')]; // console.log('STRICT', Object.keys(options.ent), entDefined, ent.entity$) if (!entDefined) { const si = ent.private$.get_instance(); @@ -184,17 +184,12 @@ class Entity { self.log$('make', entity.canon$({ string: true }), entity); return entity; } - /** Save the entity. - * param {object} [data] - Subset of entity field values. - * param {callback~save$} done - Callback function providing saved entity. - */ - save$(data, done) { + valid$(opts) { var _a; const self = this; + const throws = opts === null || opts === void 0 ? void 0 : opts.throws; const si = self.private$.get_instance(); - let entmsg = { cmd: 'save', q: {}, ...self.private$.options.pattern_fix }; - const done$ = prepareCmd(self, data, entmsg, done); - entmsg = self.private$.makeEntMsg(self, entmsg); + const entmsg = self.private$.makeEntMsg(self, (opts === null || opts === void 0 ? void 0 : opts.entmsg) || {}); const entityTemplate = si.private$.entity; const canonRouter = entityTemplate.canonRouter$; if (canonRouter) { @@ -218,11 +213,66 @@ class Entity { sctx.skip.keys = sctx.skip.keys || []; sctx.skip.keys = sctx.skip.keys.concat(skip$); } + if ((opts === null || opts === void 0 ? void 0 : opts.errors) || !throws) { + sctx.err = []; + } let vdata = canonOps.shape(odata, sctx); + if (sctx.err && 0 < sctx.err.length) { + return true === (opts === null || opts === void 0 ? void 0 : opts.errors) ? sctx.err : false; + } entmsg.ent.data$(vdata); } } } + if (opts === null || opts === void 0 ? void 0 : opts.errors) { + return []; + } + return true; + } + /** Save the entity. + * param {object} [data] - Subset of entity field values. + * param {callback~save$} done - Callback function providing saved entity. + */ + save$(data, done) { + const self = this; + const si = self.private$.get_instance(); + let entmsg = { cmd: 'save', q: {}, ...self.private$.options.pattern_fix }; + const done$ = prepareCmd(self, data, entmsg, done); + entmsg = self.private$.makeEntMsg(self, entmsg); + self.valid$({ throws: true, entmsg }); + /* + const entityTemplate = (si.private$ as any).entity + const canonRouter = entityTemplate.canonRouter$ + + if (canonRouter) { + const canonOps = canonRouter.find(entmsg) + + if (canonOps) { + if (canonOps.shape) { + let odata = entmsg.ent.data$(false) + + let sctx: any = {} + if (null == odata.id) { + sctx.skip = { keys: ['id'] } + } else { + // TODO: handle merge off case + sctx.skip = { depth: 1 } + } + + let skip$ = entmsg.q?.skip$ + if (skip$) { + skip$ = 'string' === typeof skip$ ? skip$.split(',') : skip$ + skip$ = Array.isArray(skip$) ? skip$.map((f: any) => '' + f) : [] + sctx.skip = sctx.skip || {} + sctx.skip.keys = sctx.skip.keys || [] + sctx.skip.keys = sctx.skip.keys.concat(skip$) + } + let vdata = canonOps.shape(odata, sctx) + entmsg.ent.data$(vdata) + } + } + } + */ const promise = self.private$.promise && !done$; let res = promise ? entityPromise(si, entmsg) diff --git a/dist/lib/make_entity.js.map b/dist/lib/make_entity.js.map index 305f92e..e524401 100644 --- a/dist/lib/make_entity.js.map +++ b/dist/lib/make_entity.js.map @@ -1 +1 @@ -{"version":3,"file":"make_entity.js","sourceRoot":"","sources":["../../src/lib/make_entity.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"make_entity.js","sourceRoot":"","sources":["../../src/lib/make_entity.ts"],"names":[],"mappings":";AAAA,gFAAgF;;;AAsjCvE,gCAAU;AAljCnB,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAA;AAEnC,MAAM,YAAY,GAAQ;AACxB,uBAAuB;CACxB,CAAA;AAED,qCAAqC;AACrC,MAAM,SAAS,GAAG,IAAI,CAAA;AAEtB,8BAA8B;AAC9B,MAAM,QAAQ,GAAG,IAAI,CAAA;AAErB,MAAM,mBAAmB,GAAwB;IAC/C,GAAG,EAAE,IAAI;IAET,0CAA0C;IAC1C,OAAO,EAAE,IAAI;IAEb,4BAA4B;IAC5B,MAAM,EAAE,IAAI;IAEZ,mCAAmC;IACnC,KAAK,EAAE,IAAI;IAEX,uCAAuC;IACvC,UAAU,EAAE,IAAI;CACjB,CAAA;AAED,4BAA4B;AAC5B,SAAS,UAAU,CAAY,GAAW,EAAE,MAAW;IACrD,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAEhB,kCAAkC;IAClC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IAC/B,CAAC;IAED,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CACjD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAC9D,CAAA;IAED,KAAK,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,GAAI,GAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAChD,CAAC;IAED,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAExB,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,MAAW;IAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAA;IAEpC,IACE,OAAO,CAAC,MAAM;QACd,OAAO,KAAK,GAAG,CAAC,OAAO,CAAC,kBAAkB;MAC1C,CAAC;QACD,IAAI,UAAU,GACZ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;QAC5E,2EAA2E;QAC3E,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;YACtC,MAAM,cAAc,GAAI,EAAE,CAAC,QAAgB,CAAC,MAAM,CAAA;YAClD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAA;gBAC/C,UAAU,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,GAAG,CAAC,OAAO,CAAC,CAAA;QAC3D,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,MAAM;IAgBV,YAAY,KAAU,EAAE,MAAW,EAAE,OAAY;QATjD,uDAAuD;QACvD,aAAQ,GAAG;YACT,KAAK,EAAE,IAAW;YAClB,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,GAAQ,EAAE,CAAC,IAAI;YAC7B,UAAU;YACV,OAAO,EAAE,EAAS;SACnB,CAAA;QAGC,MAAM,QAAQ,GAAQ,IAAI,CAAC,QAAQ,CAAA;QAEnC,QAAQ,CAAC,YAAY,GAAG;YACtB,OAAO,MAAM,CAAA;QACf,CAAC,CAAA;QACD,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAA;QACtB,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAA;QAChC,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAA;QAE1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAE7B,iDAAiD;QACjD,wCAAwC;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;QAE5B,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAClD,CAAC;IAED,8CAA8C;IAC9C,6DAA6D;IAC7D,mDAAmD;IACnD,uCAAuC;IACvC,iDAAiD;IACjD,uCAAuC;IACvC,8BAA8B;IAC9B,cAAc;IACd,mBAAmB;IACnB,wBAAwB;IACxB,wBAAwB;IACxB,wBAAwB;IACxB,oEAAoE;IACpE,2CAA2C;IAC3C,KAAK,CAAC,GAAG,IAAW;QAClB,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAChC,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAA;QAEnC,IAAI,SAAS,KAAK,OAAO,IAAI,EAAE,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAA;YACd,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QAE3C,iDAAiD;QACjD,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAC1B,QAAQ,GAAG,KAAK,CAAA;YAChB,uBAAuB;YACvB,4CAA4C;YAC5C,iBAAiB;YACjB,IAAI;YACJ,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACf,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACtB,CAAC;QAED,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,UAAU,KAAK,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;YACjE,OAAO,KAAK,CAAA;QACd,CAAC;QAED,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACtC,IAAI,KAAK,GAAQ,EAAE,CAAA;QACnB,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC7C,IAAI,CAAC,GAAG,EAAE,CAAA;YACV,KAAK,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAA;QACzB,CAAC;QAED,kBAAkB;QAClB,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;QAED,IAAI,KAAU,CAAA;QACd,IAAI,QAAQ,KAAK,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;YACtC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,IAAI,QAAQ,KAAK,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9D,KAAK,GAAG,EAAE,CAAA;YACV,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAA;YAC/B,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAA;YAC/B,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAA;QACjC,CAAC;aAAM,CAAC;YACN,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACzB,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;YACpD,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QAEvB,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACrB,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QACvC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QAExC,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACrB,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QACvC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QAExC,MAAM,SAAS,GAAQ,EAAE,CAAA;QACzB,SAAS,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QAC/D,SAAS,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QAC/D,SAAS,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QAE/D,MAAM,MAAM,GAAW,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE;YACrD,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO;YACxB,OAAO;SACR,CAAC,CAAA;QAEF,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrB,CAAC;oBAAC,MAAc,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gBAChC,CAAC;qBAAM,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;oBAChD,CAAC;oBAAC,MAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YACvD,CAAC;YAAC,MAAc,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;QAClC,CAAC;QAED,CAAC;QAAC,IAAY,CAAC,IAAI;YAChB,IAAY,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;QAErE,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,IAIN;;QACC,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA;QAE3B,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,KAAI,EAAE,CAAC,CAAA;QAEjE,MAAM,cAAc,GAAI,EAAE,CAAC,QAAgB,CAAC,MAAM,CAAA;QAClD,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAA;QAE/C,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAEzC,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAEnC,IAAI,IAAI,GAAQ,EAAE,CAAA;oBAClB,IAAI,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;wBACrB,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAA;oBAC9B,CAAC;yBAAM,CAAC;wBACN,8BAA8B;wBAC9B,IAAI,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;oBAC1B,CAAC;oBAED,IAAI,KAAK,GAAG,MAAA,MAAM,CAAC,CAAC,0CAAE,KAAK,CAAA;oBAC3B,IAAI,KAAK,EAAE,CAAC;wBACV,KAAK,GAAG,QAAQ,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;wBAC5D,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;wBACjE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA;wBAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA;wBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBAC/C,CAAC;oBAED,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,KAAI,CAAC,MAAM,EAAE,CAAC;wBAC5B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;oBACf,CAAC;oBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;oBAEvC,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;wBACpC,OAAO,IAAI,MAAK,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA;oBACjD,CAAC;oBACD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAC;YACjB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAS,EAAE,IAAU;QACzB,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QAEvC,IAAI,MAAM,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACzE,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAClD,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE/C,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAErC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAgCE;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAAA;QAE/C,IAAI,GAAG,GAAG,OAAO;YACf,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACvD,OAAO,GAAG,CAAA,CAAC,gEAAgE;IAC7E,CAAC;IAED;;;;OAIG;IAEH,iCAAiC;IACjC,OAAO,CAAC,IAAU;QAChB,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAA;QAErC,IAAI,MAAM,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;QACpE,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACrD,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE/C,IAAI,GAAG,GACL,OAAO,IAAI,CAAC,IAAI;YACd,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACzD,OAAO,GAAG,CAAA,CAAC,gEAAgE;IAC7E,CAAC;IAED,WAAW;IACX,oEAAoE;IACpE,6BAA6B;IAE7B;;;OAGG;IACH,KAAK,CAAC,KAAU,EAAE,IAAU;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,IAAI,UAAU,KAAK,OAAO,KAAK,EAAE,CAAC;YAChC,IAAI,GAAG,KAAK,CAAA;YACZ,KAAK,GAAG,IAAI,CAAA;QACd,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QAEvC,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,IAAI,MAAM,GAAG;YACX,GAAG,EAAE,MAAM;YACX,CAAC;YACD,IAAI,EAAE,IAAI;YACV,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW;SACrC,CAAA;QAED,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACrD,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE/C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAAA;QAE/C,kCAAkC;QAClC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,OAAO;gBACZ,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAA;QACxD,CAAC;QAED,IAAI,GAAG,GAAG,OAAO;YACf,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAEvD,gEAAgE;QAChE,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;;OAIG;IAEH,gDAAgD;IAEhD,oBAAoB;IACpB,wCAAwC;IAExC;;;OAGG;IAEH,sDAAsD;IACtD,KAAK,CAAC,KAAU,EAAE,IAAU;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,IAAI,UAAU,KAAK,OAAO,KAAK,EAAE,CAAC;YAChC,IAAI,GAAG,KAAK,CAAA;YACZ,KAAK,GAAG,IAAI,CAAA;QACd,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;QAE5D,IAAI,MAAM,GAAG;YACX,GAAG,EAAE,MAAM;YACX,CAAC;YACD,IAAI,EAAE,IAAI;YACV,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW;SACrC,CAAA;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACvD,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE/C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAAA;QAE/C,IAAI,GAAG,GAAG,OAAO;YACf,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;gBACtB,OAAO;oBACL,CAAC,CAAC,SAAS,CAAC,mDAAmD;oBAC/D,CAAC,CAAC,IAAI,CAAC,CAAA;QAEb,gEAAgE;QAChE,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;;OAIG;IAEH,qBAAqB;IACrB,iDAAiD;IAEjD;;;OAGG;IACH,OAAO,CAAC,KAAU,EAAE,IAAU;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,IAAI,UAAU,KAAK,OAAO,KAAK,EAAE,CAAC;YAChC,IAAI,GAAG,KAAK,CAAA;YACZ,KAAK,GAAG,IAAI,CAAA;QACd,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QAEvC,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;YAC1C,GAAG,EAAE,QAAQ;YACb,CAAC;YACD,IAAI,EAAE,IAAI;YACV,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW;SACrC,CAAC,CAAA;QAEF,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAAA;QAE/C,mCAAmC;QACnC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,OAAO;gBACZ,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAA;QAC1D,CAAC;QAED,IAAI,GAAG,GAAG,OAAO;YACf,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACvD,OAAO,GAAG,CAAA,CAAC,gEAAgE;IAC7E,CAAC;IAED,oBAAoB;IACpB,OAAO,CAAC,KAAU,EAAE,IAAU;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAClC,CAAC;IAED;;;OAGG;IAEH,OAAO;QACL,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU;gBAC7B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAC9B,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAChB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,eAAe;IACf,MAAM,CAAC,IAAU;QACf,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;QAEvC,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;YAC1C,GAAG,EAAE,OAAO;YACZ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW;SACrC,CAAC,CAAA;QACF,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAErD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAE9C;QAAC,IAAY,CAAC,IAAI,IAAK,IAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAElD,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAA;IAClE,CAAC;IAED,GAAG,CAAC,SAAc;QAChB,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,MAAM,KAAK,GAAG,SAAS;YACrB,CAAC,CAAC,SAAS,CAAC,OAAO;gBACjB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;gBACpC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;YACzB,CAAC,CAAC,IAAI,CAAA;QAER,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QAExB,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7C,IAAI,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAEnC,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAA;QAEvD,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;gBACvB,KAAK,GAAG,KAAK,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,CAAA;YAChD,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,CAAC,GAAS;QACd,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA;QAEjC,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;gBACZ,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAE/B,6BAA6B;gBAC7B,OAAO,CACL,GAAG,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;oBACtB,GAAG,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;oBACtB,GAAG,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CACvB,CAAA;YACH,CAAC;iBAAM,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACrB,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC9B,CAAC;iBAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACtB,aAAa;gBACb,sCAAsC;gBACtC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAA;gBACnE,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAA;gBACnE,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAA;gBAEnE,+BAA+B;gBAC/B,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC,IAAI,CAAA;gBACvC,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC,IAAI,CAAA;gBACvC,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC,IAAI,CAAA;gBAEvC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,OAAO,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO;YAC7C,CAAC,CAAC,MAAM;gBACN,sCAAsC;gBACtC,6CAA6C;gBAC7C,2CAA2C;gBAC3C,2CAA2C;gBAC3C,6CAA6C;gBAC7C,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC;YACnD,CAAC,CAAC,GAAG,CAAC,KAAK;gBACT,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;gBACtC,CAAC,CAAC,GAAG,CAAC,MAAM;oBACV,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;oBACtC,CAAC,CAAC,GAAG,CAAC,MAAM;wBACV,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;wBAC1D,CAAC,CAAC,GAAG,CAAC,OAAO;4BACX,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;4BAC7D,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,IAAU,EAAE,SAAe;QAC/B,MAAM,IAAI,GAAQ,IAAI,CAAA;QACtB,IAAI,GAAG,CAAA;QAEP,qCAAqC;QAErC,iDAAiD;QACjD,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;YACrC,oCAAoC;YACpC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBAC1D,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;oBACb,IAAI,GAAG,IAAI,QAAQ,KAAK,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;wBAClD,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,CAAA;oBAClB,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;oBACf,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;YACrB,CAAC;YAED,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC3B,CAAC;YAED,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC5B,CAAC;YAED,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAClC,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;QAED,mDAAmD;aAC9C,CAAC;YACJ,MAAM,SAAS,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAC9C,IAAI,GAAG,EAAE,CAAA;YAET,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,GAAG,SAAS,IAAI,QAAQ,CAAA;gBACjC,IAAI,WAAW,GAAQ,EAAE,CAAA;gBACzB,WAAW,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;gBAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;gBAEvC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;oBACzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACrE,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;YAC7B,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;gBAC1C,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC9B,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;oBACtB,IAAI,GAAG,IAAI,QAAQ,KAAK,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;wBAClD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,CAAA;oBAC3B,CAAC;oBAED,2CAA2C;yBACtC,IAAI,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;wBACxB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAA;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,IAAI,GAAQ,IAAI,CAAA;QACtB,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,CAAA;QACjD,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAE9C,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;YACzC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7B,CAAC;QAED,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC;YAC5C,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACnC,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,CAAC,MAAW;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,UAAU,CAAY,aAAkC;QACtD,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AA4VoB,wBAAM;AA1V3B,kDAAkD;AAClD,+EAA+E;AAC/E,SAAS,aAAa,CAAC,EAAO,EAAE,MAAW;;IACzC,IAAI,UAAU,GAAG,IAAI,MAAK,MAAA,MAAM,CAAC,CAAC,0CAAE,KAAK,CAAA,CAAA;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC9B,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAS,EAAE,EAAE;YAC/C,GAAG;gBACD,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACpD,CAAC,CAAC,GAAG,CACD,CAAC,UAAU;oBACT,CAAC,CAAC,CAAC,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO;wBACZ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;wBACZ,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CACnC,CAAC,KAAK,GAAG,IAAI,CAAC;oBACjB,CAAC,CAAC,IAAI;oBACR,GAAG,CAAC,CACL,CAAA;QACP,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,GAAQ,EAAE,IAAS,EAAE,MAAW,EAAE,IAAS;IAC7D,IAAI,UAAU,KAAK,OAAO,IAAI,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,CAAA;IACb,CAAC;SAAM,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;QAC5C,8DAA8D;QAC9D,yDAAyD;QACzD,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEf,MAAM,CAAC,CAAC,GAAG,IAAI,CAAA;IACjB,CAAC;IAED,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACtE,CAAC;AAED,SAAS,UAAU,CAAC,CAAM;IACxB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;AACjD,CAAC;AAED,2EAA2E;AAC3E,SAAS,eAAe,CAAC,GAAQ,EAAE,GAAQ,EAAE,KAA8B;IACzE,IAAI,CAAC,GAAG,GAAG,CAAA;IAEX,IAAI,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAEzE,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC,IAAI,IAAI,GAAG,IAAI,UAAU,KAAK,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;YACjE,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAA;QACpB,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,GAAG,IAAI,QAAQ,KAAK,OAAO,GAAG,EAAE,CAAC;YAC9D,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAA;QACrC,CAAC;aAAM,IAAI,UAAU,KAAK,OAAO,GAAG,EAAE,CAAC;YACrC,CAAC,GAAG,IAAI,CAAA;QACV,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,2BAA2B;IAC3B,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChB,IAAI,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,wBAAwB;AACxB,kBAAkB;AAClB,6BAA6B;AAC7B,SAAS,UAAU,CAAC,GAAc;IAChC,IAAI,GAAG,GAAQ,EAAE,CAAA;IAEjB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YACZ,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YACZ,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;SACb,CAAA;IACH,CAAC;IAED,IAAI,GAAG,IAAI,QAAQ,KAAK,OAAO,GAAG,IAAI,UAAU,KAAK,OAAO,GAAG;QAAE,OAAO,GAAG,CAAA;IAE3E,IAAI,QAAQ,KAAK,OAAO,GAAG;QAAE,OAAO,GAAG,CAAA;IAEvC,MAAM,CAAC,GAAG,oCAAoC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACxD,IAAI,CAAC,EAAE,CAAC;QACN,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAE/B,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACzC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACzC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACN,8BAA8B;QAC9B,MAAM,IAAI,KAAK,CACb,iCAAiC,GAAG,oCAAoC,CACzE,CAAA;IACH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAY;IAC5B,KAAK,GAAG,KAAK,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;IAC7B,OAAO;QACL,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;QAC1D,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;QAC1D,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;KAC3D,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACb,CAAC;AAED,SAAS,cAAc,CAAC,OAAY,EAAE,MAAW;;IAC/C,OAAO,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACxC,IAAI,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAA;IAE/B,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;YAClD,wCAAwC;YACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;YAElC,MAAM,SAAS,GAAG;gBAChB,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;gBACrC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;gBACrC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;aACtC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAEX,YAAY,CAAC,SAAS,CAAC,GAAG,aAAa,CACrC,SAAS,EACT,aAAa,EACb,OAAO,EACP,MAAM,CACP,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,KAAK,MAAK,MAAA,OAAO,CAAC,IAAI,0CAAE,OAAO,CAAA,EAAE,CAAC;QACpC,mCAAmC;QACnC,CAAC;QAAC,MAAM,CAAC,SAAiB,CAAC,KAAK,GAAG,CAAC,IAAS,EAAE,EAAE;YAC/C,OAAO,IAAI,IAAI,IAAI;gBACjB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,UAAqB,GAAQ,EAAE,GAAQ;oBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;gBAC3B,CAAC,CAAA;QACP,CAAC,CAAA;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,aAAa,CACpB,SAA6B,EAC7B,kBAAmC,EACnC,IAAqB,EACrB,MAAW;IAEX,IAAI,GAAG,IAAI,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAE7B,IAAI,aAAa,GAAU,EAAE,CAAA;IAE7B,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACtC,aAAa,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAC1C,CAAC;SAAM,IAAI,kBAAkB,IAAI,QAAQ,KAAK,OAAO,kBAAkB,EAAE,CAAC;QACxE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5C,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACvB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAExB,OAAO;QACL,OAAO;YACL,GAAG;YACH,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YAC1C,MAAM;YACN,IAAI,CAAC,EAAE;YACP,GAAG;YACH,gBAAgB,CAAC,IAAI,EAAE;gBACrB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;gBACxB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAC9B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;aAC/B,CAAC;SACH,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACZ,CAAC,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAU,EAAE,MAAW,EAAE,IAAS;IACpD,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAEnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA;IAE7B,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC3C,IAAI,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAE5C,IAAI,QAAQ,GAAG,CACb,YAAY,CAAC,SAAS,CAAC;QACvB,YAAY,CAAC,EAAE,CAAC;QAChB,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,aAAa,CAC/B,SAAS,EACT,SAAS,EACT,SAAS,EACT,MAAM,CAAC,IAAI,CAAC,MAAM,CACnB,CAAC,CACH,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEX,IAAI,OAAO,GAAG,UAAqB,KAAU;QAC3C,IACE,IAAI,IAAI,KAAK;YACb,CAAC,QAAQ,KAAK,OAAO,KAAK,IAAI,UAAU,KAAK,OAAO,KAAK,CAAC,EAC1D,CAAC;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QAC1C,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;IAED,oEAAoE;IACpE,uCAAuC;IAEvC,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAA;IAEtD,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;IAExB,MAAM,CAAC,UAAU,GAAG,UAAqB,YAAiC;QACxE,IAAI,IAAI,IAAI,YAAY,IAAI,QAAQ,KAAK,OAAO,YAAY,EAAE,CAAC;YAC7D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;QACpD,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;IAED,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAA;IAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAA;IAExC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAElC,OAAQ,GAAW,CAAC,QAAQ,CAAA;IAC5B,OAAO,GAAa,CAAA;AACtB,CAAC;AAED,UAAU,CAAC,UAAU,GAAG,UAAU,CAAA;AAClC,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAA;AAE9B,SAAS,aAAa,CAAC,GAAQ,EAAE,IAAS,EAAE,KAAa;IACvD,KAAK,EAAE,CAAA;IACP,IAAI,IAAI,IAAI,GAAG;QAAE,OAAO,MAAM,CAAA;IAE9B,IAAI,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACxD,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAA;IAE/C,kDAAkD;IAClD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAA;QACvB,CAAC;aAAM,IAAI,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,OAAO,GAAG,CAAC,OAAO,EAAE,CAAA;QACtB,CAAC;IACH,CAAC;IAED,IAAI,GAAG,EACL,CAAC,GAAG,CAAC,EACL,CAAC,EACD,CAAC,CAAA;IAEH,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;IAC7C,CAAC;SAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACxB,GAAG,GAAG,EAAE,CAAA;QACR,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC,GAAG,CAAC,CAAA;YACL,KAAK,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;gBAClB,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;oBAAE,MAAK;gBAE7B,IAAI,IAAI,GAAG,IAAI,CAAA;gBACf,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBACjD,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;gBACrC,CAAC;gBACD,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBAE5B,IAAI,GAAG,GAAW,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;gBAEpD,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;oBACxB,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;oBAC3D,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAA;oBACvB,CAAC,EAAE,CAAA;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;IAClC,CAAC;SAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACxB,GAAG,GAAG,EAAE,CAAA;QACR,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,IAAI,GAAG,GAAW,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;gBACpD,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;oBAChB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;IAClC,CAAC;SAAM,CAAC;QACN,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAA;QAE3B,IACE,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YACrB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAC7C,CAAC;YACD,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,GAAG,CAAA;QAClD,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;AACH,CAAC;AAED,0BAA0B;AAC1B,SAAS,gBAAgB,CAAC,GAAQ,EAAE,QAAa;IAC/C,IAAI,CAAC;QACH,IAAI,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAA;QAC7B,IAAI,IAAI,GAAQ,EAAE,CAAA;QAElB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAA;QACxD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAA;QACpD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAA;QACtD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,IAAI,GAAG,CAAA;QACvD,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACtD,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAA;QAE5C,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;QAC3B,CAAC;QAED,IAAI,GAAG,GAAW,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAC7C,GAAG,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QACxD,OAAO,GAAG,CAAA;IACZ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CACL,2BAA2B,GAAG,CAAC,GAAG,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CACvE,CAAA;IACH,CAAC;AACH,CAAC"} \ No newline at end of file diff --git a/dist/valid.d.ts b/dist/valid.d.ts index cf5b446..865f29c 100644 --- a/dist/valid.d.ts +++ b/dist/valid.d.ts @@ -1,3 +1,3 @@ import { Entity } from './lib/make_entity'; -declare function buildValidation(seneca: any, entity: Entity, options: any): void; +declare function buildValidation(_seneca: any, entity: Entity, options: any): void; export { buildValidation }; diff --git a/dist/valid.js b/dist/valid.js index 87d1668..fca149a 100644 --- a/dist/valid.js +++ b/dist/valid.js @@ -4,7 +4,7 @@ exports.buildValidation = buildValidation; const patrun_1 = require("patrun"); const gubu_1 = require("gubu"); const make_entity_1 = require("./lib/make_entity"); -function buildValidation(seneca, entity, options) { +function buildValidation(_seneca, entity, options) { // console.log('VALID OPTS') // console.dir(options, { depth: null }) const canonRouter = (0, patrun_1.Patrun)(); @@ -16,15 +16,14 @@ function buildValidation(seneca, entity, options) { const canon = make_entity_1.MakeEntity.parsecanon(cstr); const spec = canonMap[cstr]; let shape; - let vopts = { prefix: cstr }; + let vopts = { name: 'Entity: ' + cstr }; if (spec.valid_json) { - shape = gubu_1.Gubu.build(spec.valid_json); // , vopts) // , { prefix: cstr }) + shape = gubu_1.Gubu.build(spec.valid_json, vopts); } else if (spec.valid) { // let valid = ('function' === typeof spec.valid && !Gubu.isShape(spec.valid)) ? let valid = ('function' === typeof spec.valid && !spec.valid.gubu) ? spec.valid() : spec.valid; - // console.log('VALID', valid) shape = (0, gubu_1.Gubu)(valid, vopts); // console.log('SHAPE', shape.spec()) } diff --git a/dist/valid.js.map b/dist/valid.js.map index d03ed06..64d093e 100644 --- a/dist/valid.js.map +++ b/dist/valid.js.map @@ -1 +1 @@ -{"version":3,"file":"valid.js","sourceRoot":"","sources":["../src/valid.ts"],"names":[],"mappings":";;AAuDE,0CAAe;AAtDjB,mCAA+B;AAC/B,+BAA2B;AAE3B,mDAAsD;AAGtD,SAAS,eAAe,CAAC,MAAW,EAAE,MAAc,EAAE,OAAY;IAChE,4BAA4B;IAC5B,wCAAwC;IAExC,MAAM,WAAW,GAAG,IAAA,eAAM,GAAE,CAAA;IAE5B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAA;IAElC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEpC,gCAAgC;IAEhC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAA;QACvB,MAAM,KAAK,GAAG,wBAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE3B,IAAI,KAAK,CAAA;QACT,IAAI,KAAK,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QAC5B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,KAAK,GAAG,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA,CAAC,kCAAkC;QACxE,CAAC;aACI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,gFAAgF;YAChF,IAAI,KAAK,GAAG,CAAC,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;YAE3B,8BAA8B;YAE9B,KAAK,GAAG,IAAA,WAAI,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YAC1B,qCAAqC;QACvC,CAAC;QAED,mCAAmC;QAEnC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE;YACrB,KAAK;SACN,CAAC,CAAA;IAEJ,CAAC;IAED,8CAA8C;IAE9C,CAAC;IAAE,MAAc,CAAC,YAAY,GAAG,WAAW,CAAA;AAC9C,CAAC"} \ No newline at end of file +{"version":3,"file":"valid.js","sourceRoot":"","sources":["../src/valid.ts"],"names":[],"mappings":";;AAqDE,0CAAe;AApDjB,mCAA+B;AAC/B,+BAA2B;AAE3B,mDAAsD;AAGtD,SAAS,eAAe,CAAC,OAAY,EAAE,MAAc,EAAE,OAAY;IACjE,4BAA4B;IAC5B,wCAAwC;IAExC,MAAM,WAAW,GAAG,IAAA,eAAM,GAAE,CAAA;IAE5B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAA;IAElC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEpC,gCAAgC;IAEhC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAA;QACvB,MAAM,KAAK,GAAG,wBAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE3B,IAAI,KAAK,CAAA;QACT,IAAI,KAAK,GAAG,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,CAAA;QACvC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,KAAK,GAAG,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;QAC5C,CAAC;aACI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,gFAAgF;YAChF,IAAI,KAAK,GAAG,CAAC,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;YAE3B,KAAK,GAAG,IAAA,WAAI,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YAC1B,qCAAqC;QACvC,CAAC;QAED,mCAAmC;QAEnC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE;YACrB,KAAK;SACN,CAAC,CAAA;IAEJ,CAAC;IAED,8CAA8C;IAE9C,CAAC;IAAE,MAAc,CAAC,YAAY,GAAG,WAAW,CAAA;AAC9C,CAAC"} \ No newline at end of file diff --git a/package.json b/package.json index fc4338e..ddd6e90 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "seneca-entity", "main": "dist/entity.js", - "version": "27.1.1", + "version": "27.2.0", "type": "commonjs", "types": "dist/entity.d.ts", "description": "Entity plugin for seneca", @@ -50,6 +50,7 @@ "node": ">=16" }, "dependencies": { + "gubu": "^8.2.1", "seneca-mem-store": "^9.2.0" }, "peerDependencies": { @@ -65,8 +66,5 @@ "prettier": "^3.3.2", "seneca-msg-test": "^4.1.0", "typescript": "^5.5.3" - }, - "overrides": { - "gubu":"8.0.2" } } diff --git a/src/lib/make_entity.ts b/src/lib/make_entity.ts index 1ad581c..f8b48d7 100644 --- a/src/lib/make_entity.ts +++ b/src/lib/make_entity.ts @@ -66,7 +66,7 @@ function strictCanon(ent: Entity, entmsg: any) { '-/-/-' !== ent.entity$ // template entity ) { let entDefined = - options.ent[ent.entity$] || options.ent[ent.entity$.replace(/-\//g, '')] + options.ent[ent.entity$] || options.ent[ent.entity$.replace(/[-\/]/g, '')] // console.log('STRICT', Object.keys(options.ent), entDefined, ent.entity$) if (!entDefined) { const si = ent.private$.get_instance() @@ -227,6 +227,65 @@ class Entity implements Record { return entity } + valid$(opts?: { + throws?: boolean + errors?: boolean + entmsg?: any + }): boolean | any[] { + const self = this + const throws = opts?.throws + + const si = self.private$.get_instance() + const entmsg = self.private$.makeEntMsg(self, opts?.entmsg || {}) + + const entityTemplate = (si.private$ as any).entity + const canonRouter = entityTemplate.canonRouter$ + + if (canonRouter) { + const canonOps = canonRouter.find(entmsg) + + if (canonOps) { + if (canonOps.shape) { + let odata = entmsg.ent.data$(false) + + let sctx: any = {} + if (null == odata.id) { + sctx.skip = { keys: ['id'] } + } else { + // TODO: handle merge off case + sctx.skip = { depth: 1 } + } + + let skip$ = entmsg.q?.skip$ + if (skip$) { + skip$ = 'string' === typeof skip$ ? skip$.split(',') : skip$ + skip$ = Array.isArray(skip$) ? skip$.map((f: any) => '' + f) : [] + sctx.skip = sctx.skip || {} + sctx.skip.keys = sctx.skip.keys || [] + sctx.skip.keys = sctx.skip.keys.concat(skip$) + } + + if (opts?.errors || !throws) { + sctx.err = [] + } + + let vdata = canonOps.shape(odata, sctx) + + if (sctx.err && 0 < sctx.err.length) { + return true === opts?.errors ? sctx.err : false + } + entmsg.ent.data$(vdata) + } + } + } + + if (opts?.errors) { + return [] + } + + return true + } + /** Save the entity. * param {object} [data] - Subset of entity field values. * param {callback~save$} done - Callback function providing saved entity. @@ -239,6 +298,9 @@ class Entity implements Record { const done$ = prepareCmd(self, data, entmsg, done) entmsg = self.private$.makeEntMsg(self, entmsg) + self.valid$({ throws: true, entmsg }) + + /* const entityTemplate = (si.private$ as any).entity const canonRouter = entityTemplate.canonRouter$ @@ -270,6 +332,7 @@ class Entity implements Record { } } } + */ const promise = self.private$.promise && !done$ diff --git a/src/valid.ts b/src/valid.ts index 6fcc6bc..bc8915d 100644 --- a/src/valid.ts +++ b/src/valid.ts @@ -5,7 +5,7 @@ import { Gubu } from 'gubu' import { Entity, MakeEntity } from './lib/make_entity' -function buildValidation(seneca: any, entity: Entity, options: any) { +function buildValidation(_seneca: any, entity: Entity, options: any) { // console.log('VALID OPTS') // console.dir(options, { depth: null }) @@ -23,17 +23,15 @@ function buildValidation(seneca: any, entity: Entity, options: any) { const spec = canonMap[cstr] let shape - let vopts = { prefix: cstr } + let vopts = { name: 'Entity: ' + cstr } if (spec.valid_json) { - shape = Gubu.build(spec.valid_json) // , vopts) // , { prefix: cstr }) + shape = Gubu.build(spec.valid_json, vopts) } else if (spec.valid) { // let valid = ('function' === typeof spec.valid && !Gubu.isShape(spec.valid)) ? let valid = ('function' === typeof spec.valid && !spec.valid.gubu) ? spec.valid() : spec.valid - // console.log('VALID', valid) - shape = Gubu(valid, vopts) // console.log('SHAPE', shape.spec()) } diff --git a/test/valid.test.js b/test/valid.test.js index 9cc34b4..b4b32ec 100644 --- a/test/valid.test.js +++ b/test/valid.test.js @@ -39,6 +39,7 @@ describe('valid', function () { await seneca.entity('foo').save$({ a: 'A' }) expect(false).toEqual(true) } catch (e) { + // console.log(e) expect(e.props).toEqual([ { path: 'a', what: 'type', type: 'number', value: 'A' }, ]) @@ -146,4 +147,70 @@ describe('valid', function () { }) } }) + + test('method', async function () { + const seneca = Seneca() + .test() + .use(Entity, { + ent: { + '-/-/foo': {}, + 'qaz/zed/bar': { + valid_json: { + a: 'Number', + x: 2, + }, + }, + 'wax/-/-': { + valid_json: { + b: 'Number', + }, + }, + }, + }) + + const foo0 = seneca.entity('foo') + expect(foo0.valid$()).toEqual(true) + + const nim0 = seneca.entity('nim') + expect(nim0.valid$()).toEqual(true) + + const bar0 = seneca.entity('qaz/zed/bar').data$({ a: 1 }) + expect(bar0.valid$()).toEqual(true) + expect(bar0.data$(false)).toEqual({ a: 1, x: 2 }) + + const wax0 = seneca.entity('wax/wex/wix').data$({ b: 3 }) + expect(wax0.valid$()).toEqual(true) + expect(wax0.data$(false)).toEqual({ b: 3 }) + + const bar1 = seneca.entity('qaz/zed/bar').data$({ a: 'A' }) + expect(bar1.valid$()).toEqual(false) + expect(bar1.data$(false)).toEqual({ a: 'A' }) + + try { + bar1.valid$({ throws: true }) + expect(true).equal(false) + } catch (e) { + // console.log(e) + expect(e.props).toEqual([ + { path: 'a', what: 'type', type: 'number', value: 'A' }, + ]) + } + + const errs0 = bar1.valid$({ errors: true }) + // console.log(errs0) + expect(errs0[0]).toMatchObject({ + key: 'a', + type: 'number', + value: 'A', + path: 'a', + why: 'type', + check: 'none', + args: {}, + mark: 1050, + text: + 'Validation failed for property "a" with string "A" because ' + + 'the string is not of type number.', + use: {}, + }) + }) })