From 285fa9e5d26d15ddc06ede69ccbd54e9342d9f24 Mon Sep 17 00:00:00 2001 From: Tooling Builder Date: Sat, 16 Dec 2023 03:24:21 +0000 Subject: [PATCH] chore: Metadata build (updates to OpenAPI tooling metadata and site rebuild) --- docs/categories/all.html | 840 ++++++------ docs/categories/code-generators.html | 102 +- docs/categories/converters.html | 80 +- docs/categories/data-validators.html | 62 +- docs/categories/description-validators.html | 46 +- docs/categories/documentation.html | 68 +- docs/categories/dsl.html | 8 +- docs/categories/editors.html | 6 +- docs/categories/gateway.html | 12 +- docs/categories/low-level-tooling.html | 26 +- docs/categories/mock-testing.html | 8 +- docs/categories/mock.html | 22 +- docs/categories/parsers.html | 300 ++--- docs/categories/schema-validators.html | 2 +- docs/categories/sdk.html | 102 +- docs/categories/security.html | 20 +- docs/categories/server-implementations.html | 230 ++-- docs/categories/server.html | 50 +- docs/categories/testing-tools.html | 8 +- docs/categories/testing.html | 66 +- docs/categories/text-editors.html | 14 +- docs/categories/unclassified.html | 14 +- docs/categories/user-interfaces.html | 16 +- src/_data/tools.yaml | 1326 +++++++++---------- 24 files changed, 1714 insertions(+), 1714 deletions(-) diff --git a/docs/categories/all.html b/docs/categories/all.html index 1a9c50f4..18e8de87 100644 --- a/docs/categories/all.html +++ b/docs/categories/all.html @@ -86,7 +86,7 @@

No Yes No - 478 + 481 @@ -109,7 +109,7 @@

Yes Yes Yes - 1479 + 1589 @@ -279,7 +279,7 @@

Yes Yes Yes - 143 + 144 @@ -346,7 +346,7 @@

No Yes Yes - 1051 + 1052 @@ -535,7 +535,7 @@

Yes Yes Yes - 21593 + 21603 @@ -581,7 +581,7 @@

No Yes Yes - 1402 + 1404 @@ -713,7 +713,7 @@

No Yes No - 4592 + 4602 @@ -759,7 +759,7 @@

No Yes Yes - 18451 + 18468 @@ -805,7 +805,7 @@

No Yes Yes - 1044 + 1046 @@ -917,7 +917,7 @@

No Yes Yes - 293 + 294 @@ -1001,7 +1001,7 @@

Yes Yes Yes - 8456 + 8460 @@ -1382,7 +1382,7 @@

Yes Yes Yes - 3833 + 3835 @@ -1428,7 +1428,7 @@

Yes Yes Yes - 1056 + 1058 @@ -1581,7 +1581,7 @@

No Yes Yes - 2966 + 2969 @@ -1696,7 +1696,7 @@

No Yes Yes - 8141 + 8147 @@ -1742,7 +1742,7 @@

No Yes No - 1619 + 1622 @@ -1809,7 +1809,7 @@

No Yes No - 1523 + 1524 @@ -1855,7 +1855,7 @@

No Yes Yes - 4088 + 4090 @@ -1920,7 +1920,7 @@

No Yes No - 590 + 591 @@ -1943,7 +1943,7 @@

No Yes No - 1392 + 1393 @@ -1987,7 +1987,7 @@

Yes Yes Yes - 2114 + 2117 @@ -2052,7 +2052,7 @@

Yes Yes Yes - 708 + 711 @@ -2186,7 +2186,7 @@

No Yes Yes - 1017 + 1019 @@ -2297,7 +2297,7 @@

No Yes Yes - 2190 + 2193 @@ -2578,7 +2578,7 @@

No No Yes - 9027 + 9033 @@ -2647,7 +2647,7 @@

No Yes Yes - 6217 + 6226 @@ -2693,7 +2693,7 @@

No Yes Yes - 16187 + 16197 @@ -2760,7 +2760,7 @@

Yes Yes Yes - 220 + 222 @@ -2783,7 +2783,7 @@

Yes Yes Yes - 436 + 437 @@ -3010,7 +3010,7 @@

No Yes Yes - 386 + 387 @@ -3094,7 +3094,7 @@

No Yes No - 486 + 487 @@ -3159,7 +3159,7 @@

No Yes No - 208 + 209 @@ -3205,7 +3205,7 @@

No Yes Yes - 94 + 95 @@ -3405,7 +3405,7 @@

Yes Yes Yes - 812 + 814 @@ -3472,7 +3472,7 @@

No Yes Yes - 5876 + 5877 @@ -3516,7 +3516,7 @@

No Yes Yes - 11524 + 11531 @@ -3688,7 +3688,7 @@

No Yes Yes - 373 + 374 @@ -3711,7 +3711,7 @@

No Yes No - 26793 + 26797 @@ -3794,7 +3794,7 @@

No Yes No - 5 + 6 @@ -3863,7 +3863,7 @@

No Yes No - 908 + 913 @@ -3886,7 +3886,7 @@

Yes Yes Yes - 1309 + 1311 @@ -4108,7 +4108,7 @@

No Yes Yes - 1894 + 1898 @@ -4154,7 +4154,7 @@

Yes Yes No - 21 + 22 @@ -4221,7 +4221,7 @@

Yes Yes Yes - 326 + 329 @@ -4265,7 +4265,7 @@

Yes Yes Yes - 3922 + 3938 @@ -4288,7 +4288,7 @@

Yes Yes Yes - 215 + 217 @@ -4468,7 +4468,7 @@

No Yes No - 164 + 167 @@ -4491,7 +4491,7 @@

Yes Yes Yes - 78 + 79 @@ -4537,7 +4537,7 @@

Yes Yes Yes - 268 + 270 @@ -4703,7 +4703,7 @@

No Yes No - 1805 + 1806 @@ -4726,7 +4726,7 @@

Yes Yes Yes - 1996 + 1999 @@ -4749,7 +4749,7 @@

Yes Yes Yes - 37 + 38 @@ -4795,7 +4795,7 @@

No Yes No - 373 + 374 @@ -4841,7 +4841,7 @@

No Yes No - 65808 + 65897 @@ -4864,7 +4864,7 @@

Yes Yes No - 24879 + 24891 @@ -4887,7 +4887,7 @@

Yes Yes No - 21593 + 21603 @@ -4908,7 +4908,7 @@

No Yes No - 13819 + 13842 @@ -4950,7 +4950,7 @@

No Yes No - 5559 + 5562 @@ -4971,7 +4971,7 @@

No Yes No - 3708 + 3710 @@ -4992,7 +4992,7 @@

Yes Yes No - 3552 + 3556 @@ -5013,7 +5013,7 @@

No Yes No - 3468 + 3469 @@ -5036,7 +5036,7 @@

No Yes No - 2925 + 2927 @@ -5057,7 +5057,7 @@

Yes Yes No - 2550 + 2551 @@ -5078,7 +5078,7 @@

No Yes No - 2419 + 2425 @@ -5122,7 +5122,7 @@

No Yes No - 1920 + 1924 @@ -5143,7 +5143,7 @@

No Yes No - 1895 + 1896 @@ -5164,7 +5164,7 @@

No Yes No - 1541 + 1545 @@ -5185,7 +5185,7 @@

No Yes No - 1482 + 1500 @@ -5206,7 +5206,7 @@

No Yes No - 1462 + 1465 @@ -5229,7 +5229,7 @@

No Yes No - 1317 + 1318 @@ -5271,7 +5271,7 @@

No Yes No - 1063 + 1062 @@ -5292,7 +5292,7 @@

No Yes No - 881 + 884 @@ -5313,7 +5313,7 @@

No Yes No - 861 + 862 @@ -5334,7 +5334,7 @@

No Yes No - 817 + 820 @@ -5376,7 +5376,7 @@

No Yes No - 711 + 713 @@ -5397,7 +5397,7 @@

No Yes No - 698 + 699 @@ -5460,7 +5460,7 @@

No Yes No - 597 + 598 @@ -5502,7 +5502,7 @@

Yes Yes No - 579 + 580 @@ -5523,7 +5523,7 @@

No Yes No - 520 + 522 @@ -5565,7 +5565,7 @@

No Yes No - 441 + 442 @@ -5586,7 +5586,7 @@

No Yes No - 438 + 439 @@ -5628,7 +5628,7 @@

No Yes No - 424 + 426 @@ -5733,7 +5733,7 @@

No Yes No - 384 + 387 @@ -5754,7 +5754,7 @@

No Yes No - 373 + 374 @@ -5775,7 +5775,7 @@

No Yes No - 363 + 364 @@ -5922,7 +5922,7 @@

Yes Yes No - 290 + 291 @@ -5943,7 +5943,7 @@

No Yes No - 284 + 286 @@ -6008,7 +6008,7 @@

Yes Yes No - 287 + 291 @@ -6029,7 +6029,7 @@

Yes Yes No - 254 + 255 @@ -6092,7 +6092,7 @@

No Yes No - 228 + 229 @@ -6134,7 +6134,7 @@

No Yes No - 220 + 221 @@ -6197,7 +6197,7 @@

No Yes No - 214 + 213 @@ -6283,7 +6283,7 @@

No Yes No - 199 + 200 @@ -6556,7 +6556,7 @@

No Yes No - 172 + 173 @@ -6812,7 +6812,7 @@

No Yes No - 127 + 128 @@ -6875,7 +6875,7 @@

Yes Yes No - 120 + 121 @@ -7085,7 +7085,7 @@

No Yes No - 94 + 97 @@ -7232,7 +7232,7 @@

No Yes No - 83 + 84 @@ -7316,7 +7316,7 @@

No Yes No - 79 + 81 @@ -7442,7 +7442,7 @@

No Yes No - 76 + 77 @@ -7715,7 +7715,7 @@

No Yes No - 57 + 58 @@ -7778,7 +7778,7 @@

No Yes No - 54 + 55 @@ -8095,7 +8095,7 @@

No Yes No - 40 + 41 @@ -8179,7 +8179,7 @@

No Yes No - 39 + 38 @@ -8435,7 +8435,7 @@

No Yes No - 33 + 37 @@ -8582,7 +8582,7 @@

No Yes No - 31 + 32 @@ -8899,7 +8899,7 @@

No Yes No - 27 + 28 @@ -9697,7 +9697,7 @@

No Yes No - 18 + 20 @@ -11595,7 +11595,7 @@

No Yes No - 10 + 11 @@ -12414,7 +12414,7 @@

No Yes No - 6 + 8 @@ -13821,7 +13821,7 @@

No Yes No - 4 + 5 @@ -20058,7 +20058,7 @@

No Yes No - 1 + 2 @@ -20751,7 +20751,7 @@

No Yes No - N/A + 1 @@ -26028,7 +26028,7 @@

Yes Yes No - 549 + 548 @@ -28580,7 +28580,7 @@

No No No - 3460 + 3461 @@ -29188,7 +29188,7 @@

No Yes Yes - 514 + 513 @@ -29301,7 +29301,7 @@

No Yes Yes - 2353 + 2354 @@ -29954,7 +29954,7 @@

No No Yes - 371 + 372 @@ -30109,7 +30109,7 @@

oasdiff (link)

Stars - 478 + 481 Watchers @@ -30125,7 +30125,7 @@

oasdiff (link)

Last Updated - 2023-12-13T21:22:25Z + 2023-12-16T00:49:19Z Archived @@ -30161,15 +30161,15 @@

Scalar (link)

Stars - 1479 + 1589 Watchers - 7 + 8 Forks - 20 + 22 Created @@ -30177,7 +30177,7 @@

Scalar (link)

Last Updated - 2023-12-13T17:43:08Z + 2023-12-16T03:00:28Z Archived @@ -30577,7 +30577,7 @@

OpenAPI Filter (link)

Stars - 143 + 144 Watchers @@ -30593,7 +30593,7 @@

OpenAPI Filter (link)

Last Updated - 2023-12-10T11:26:22Z + 2023-12-14T12:16:46Z Archived @@ -30733,7 +30733,7 @@

LucyBot api-spec-converter (link)

Stars - 1051 + 1052 Watchers @@ -30749,7 +30749,7 @@

LucyBot api-spec-converter (link)

Last Updated - 2023-12-13T19:31:59Z + 2023-12-15T06:24:32Z Archived @@ -31201,7 +31201,7 @@

ReDoc (link)

Stars - 21593 + 21603 Watchers @@ -31209,7 +31209,7 @@

ReDoc (link)

Forks - 2261 + 2264 Created @@ -31217,7 +31217,7 @@

ReDoc (link)

Last Updated - 2023-12-13T19:13:35Z + 2023-12-16T02:42:22Z Archived @@ -31305,7 +31305,7 @@

widdershins (link)

Stars - 1402 + 1404 Watchers @@ -31321,7 +31321,7 @@

widdershins (link)

Last Updated - 2023-12-13T12:07:25Z + 2023-12-14T13:09:47Z Archived @@ -31617,7 +31617,7 @@

OpenAPI Server Code Generator (oapi-cod Stars - 4592 + 4602 Watchers @@ -31625,7 +31625,7 @@

OpenAPI Server Code Generator (oapi-cod Forks - 761 + 764 Created @@ -31633,7 +31633,7 @@

OpenAPI Server Code Generator (oapi-cod Last Updated - 2023-12-13T13:50:16Z + 2023-12-15T20:34:59Z Archived @@ -31721,15 +31721,15 @@

OpenAPI Generator (link)

Stars - 18451 + 18468 Watchers - 214 + 215 Forks - 5844 + 5850 Created @@ -31737,7 +31737,7 @@

OpenAPI Generator (link)

Last Updated - 2023-12-14T02:50:23Z + 2023-12-15T21:06:56Z Archived @@ -31781,7 +31781,7 @@

OpenAPI JSON Schema Generator (link) Forks - 8 + 7 Created @@ -31825,7 +31825,7 @@

Kiota Api Client Generator (link)

Stars - 1044 + 1046 Watchers @@ -31841,7 +31841,7 @@

Kiota Api Client Generator (link)

Last Updated - 2023-12-13T16:58:54Z + 2023-12-15T16:31:45Z Archived @@ -32085,7 +32085,7 @@

VSCode OpenAPI (link)

Stars - 293 + 294 Watchers @@ -32101,7 +32101,7 @@

VSCode OpenAPI (link)

Last Updated - 2023-12-13T17:16:09Z + 2023-12-15T00:34:17Z Archived @@ -32293,7 +32293,7 @@

Swagger Editor (link)

Stars - 8456 + 8460 Watchers @@ -32301,7 +32301,7 @@

Swagger Editor (link)

Forks - 2217 + 2218 Created @@ -32309,7 +32309,7 @@

Swagger Editor (link)

Last Updated - 2023-12-14T03:17:40Z + 2023-12-15T19:51:43Z Archived @@ -33229,7 +33229,7 @@

Prism (link)

Stars - 3833 + 3835 Watchers @@ -33245,7 +33245,7 @@

Prism (link)

Last Updated - 2023-12-14T02:35:10Z + 2023-12-15T18:37:47Z Archived @@ -33333,7 +33333,7 @@

Microcks (link)

Stars - 1056 + 1058 Watchers @@ -33341,7 +33341,7 @@

Microcks (link)

Forks - 180 + 179 Created @@ -33349,7 +33349,7 @@

Microcks (link)

Last Updated - 2023-12-13T19:01:56Z + 2023-12-15T08:52:43Z Archived @@ -33697,7 +33697,7 @@

tsoa (link)

Stars - 2966 + 2969 Watchers @@ -33713,7 +33713,7 @@

tsoa (link)

Last Updated - 2023-12-13T20:52:04Z + 2023-12-15T21:02:22Z Archived @@ -33957,7 +33957,7 @@

API Platform (link)

Stars - 8141 + 8147 Watchers @@ -33965,7 +33965,7 @@

API Platform (link)

Forks - 971 + 972 Created @@ -33973,7 +33973,7 @@

API Platform (link)

Last Updated - 2023-12-13T19:47:02Z + 2023-12-15T20:38:46Z Archived @@ -34061,7 +34061,7 @@

Fusio (link)

Stars - 1619 + 1622 Watchers @@ -34077,7 +34077,7 @@

Fusio (link)

Last Updated - 2023-12-12T04:08:22Z + 2023-12-15T12:08:58Z Archived @@ -34217,7 +34217,7 @@

@nestjs/swagger (link)

Stars - 1523 + 1524 Watchers @@ -34225,7 +34225,7 @@

@nestjs/swagger (link)

Forks - 410 + 409 Created @@ -34233,7 +34233,7 @@

@nestjs/swagger (link)

Last Updated - 2023-12-12T13:51:42Z + 2023-12-15T12:15:34Z Archived @@ -34321,7 +34321,7 @@

Dredd (link)

Stars - 4088 + 4090 Watchers @@ -34337,7 +34337,7 @@

Dredd (link)

Last Updated - 2023-12-14T00:33:10Z + 2023-12-15T19:08:17Z Archived @@ -34477,7 +34477,7 @@

portman (link)

Stars - 590 + 591 Watchers @@ -34493,7 +34493,7 @@

portman (link)

Last Updated - 2023-12-13T04:58:06Z + 2023-12-14T08:23:07Z Archived @@ -34529,7 +34529,7 @@

Step CI (link)

Stars - 1392 + 1393 Watchers @@ -34545,7 +34545,7 @@

Step CI (link)

Last Updated - 2023-12-13T04:58:24Z + 2023-12-14T21:13:18Z Archived @@ -34633,7 +34633,7 @@

Spectral (link)

Stars - 2114 + 2117 Watchers @@ -34641,7 +34641,7 @@

Spectral (link)

Forks - 204 + 205 Created @@ -34649,7 +34649,7 @@

Spectral (link)

Last Updated - 2023-12-13T15:38:53Z + 2023-12-15T12:52:33Z Archived @@ -34789,7 +34789,7 @@

Redocly CLI (link)

Stars - 708 + 711 Watchers @@ -34797,7 +34797,7 @@

Redocly CLI (link)

Forks - 108 + 109 Created @@ -34805,7 +34805,7 @@

Redocly CLI (link)

Last Updated - 2023-12-13T20:22:22Z + 2023-12-15T16:51:37Z Archived @@ -35101,7 +35101,7 @@

APIDevTools/swagger-parser (link)

Stars - 1017 + 1019 Watchers @@ -35117,7 +35117,7 @@

APIDevTools/swagger-parser (link)

Last Updated - 2023-12-13T17:54:25Z + 2023-12-15T17:49:23Z Archived @@ -35361,7 +35361,7 @@

kin-openapi (link)

Stars - 2190 + 2193 Watchers @@ -35377,7 +35377,7 @@

kin-openapi (link)

Last Updated - 2023-12-13T11:00:13Z + 2023-12-15T16:35:09Z Archived @@ -35525,7 +35525,7 @@

Object Oriented OpenAPI Specification ( Forks - 19 + 20 Created @@ -35533,7 +35533,7 @@

Object Oriented OpenAPI Specification ( Last Updated - 2023-12-13T12:26:58Z + 2023-12-14T12:37:10Z Archived @@ -36037,7 +36037,7 @@

go-swagger (link)

Stars - 9027 + 9033 Watchers @@ -36053,7 +36053,7 @@

go-swagger (link)

Last Updated - 2023-12-13T20:27:08Z + 2023-12-15T02:49:23Z Archived @@ -36193,7 +36193,7 @@

NSwag (link)

Stars - 6217 + 6226 Watchers @@ -36209,7 +36209,7 @@

NSwag (link)

Last Updated - 2023-12-13T07:05:59Z + 2023-12-15T12:53:43Z Archived @@ -36297,7 +36297,7 @@

Swagger-Codegen (link)

Stars - 16187 + 16197 Watchers @@ -36305,7 +36305,7 @@

Swagger-Codegen (link)

Forks - 6031 + 6032 Created @@ -36313,7 +36313,7 @@

Swagger-Codegen (link)

Last Updated - 2023-12-14T01:59:52Z + 2023-12-16T02:32:53Z Archived @@ -36353,11 +36353,11 @@

Azure AutoRest (link)

Watchers - 818 + 819 Forks - 753 + 754 Created @@ -36453,7 +36453,7 @@

oas (link)

Stars - 220 + 222 Watchers @@ -36469,7 +36469,7 @@

oas (link)

Last Updated - 2023-12-12T23:05:15Z + 2023-12-15T04:11:46Z Archived @@ -36505,7 +36505,7 @@

api (link)

Stars - 436 + 437 Watchers @@ -36521,7 +36521,7 @@

api (link)

Last Updated - 2023-12-13T14:22:56Z + 2023-12-14T08:00:56Z Archived @@ -37077,7 +37077,7 @@

EvoMaster (link)

Stars - 386 + 387 Watchers @@ -37093,7 +37093,7 @@

EvoMaster (link)

Last Updated - 2023-12-13T15:01:52Z + 2023-12-15T15:29:27Z Archived @@ -37285,7 +37285,7 @@

openapi-fuzzer (link)

Stars - 486 + 487 Watchers @@ -37301,7 +37301,7 @@

openapi-fuzzer (link)

Last Updated - 2023-12-13T21:01:31Z + 2023-12-14T11:58:35Z Archived @@ -37441,7 +37441,7 @@

OpenAPI Schema to JSON Schema (link) Stars - 208 + 209 Watchers @@ -37457,7 +37457,7 @@

OpenAPI Schema to JSON Schema (link) Last Updated - 2023-12-10T07:39:12Z + 2023-12-15T03:42:55Z Archived @@ -37545,7 +37545,7 @@

Unchase.OpenAPI.Connectedservice (link) Stars - 94 + 95 Watchers @@ -37561,7 +37561,7 @@

Unchase.OpenAPI.Connectedservice (link) Last Updated - 2023-11-24T12:57:57Z + 2023-12-14T07:42:16Z Archived @@ -38013,7 +38013,7 @@

openapi-to-postman (link)

Stars - 812 + 814 Watchers @@ -38029,7 +38029,7 @@

openapi-to-postman (link)

Last Updated - 2023-12-13T11:14:30Z + 2023-12-15T23:09:23Z Archived @@ -38169,7 +38169,7 @@

SpringFox (link)

Stars - 5876 + 5877 Watchers @@ -38185,7 +38185,7 @@

SpringFox (link)

Last Updated - 2023-12-13T07:14:01Z + 2023-12-14T19:43:56Z Archived @@ -38273,7 +38273,7 @@

OWASP ZAP (link)

Stars - 11524 + 11531 Watchers @@ -38281,7 +38281,7 @@

OWASP ZAP (link)

Forks - 2170 + 2172 Created @@ -38289,7 +38289,7 @@

OWASP ZAP (link)

Last Updated - 2023-12-14T01:54:04Z + 2023-12-15T18:07:52Z Archived @@ -38689,7 +38689,7 @@

APIFuzzer (link)

Stars - 373 + 374 Watchers @@ -38705,7 +38705,7 @@

APIFuzzer (link)

Last Updated - 2023-12-07T05:20:19Z + 2023-12-14T13:26:42Z Archived @@ -38741,11 +38741,11 @@

Django REST Framework (link)

Stars - 26793 + 26797 Watchers - 623 + 622 Forks @@ -38757,7 +38757,7 @@

Django REST Framework (link)

Last Updated - 2023-12-13T23:08:37Z + 2023-12-16T02:41:15Z Archived @@ -38949,7 +38949,7 @@

OAuth2 as OpenAPI Spec 3.0 components ( Stars - 5 + 6 Watchers @@ -38965,7 +38965,7 @@

OAuth2 as OpenAPI Spec 3.0 components ( Last Updated - 2023-11-08T08:09:40Z + 2023-12-15T04:11:40Z Archived @@ -39105,7 +39105,7 @@

openapi-python-client (link)

Stars - 908 + 913 Watchers @@ -39113,7 +39113,7 @@

openapi-python-client (link)

Forks - 186 + 187 Created @@ -39121,7 +39121,7 @@

openapi-python-client (link)

Last Updated - 2023-12-14T01:52:38Z + 2023-12-15T20:30:52Z Archived @@ -39157,7 +39157,7 @@

Elements (link)

Stars - 1309 + 1311 Watchers @@ -39173,7 +39173,7 @@

Elements (link)

Last Updated - 2023-12-13T20:42:22Z + 2023-12-15T17:44:23Z Archived @@ -39677,7 +39677,7 @@

orval (link)

Stars - 1894 + 1898 Watchers @@ -39693,7 +39693,7 @@

orval (link)

Last Updated - 2023-12-14T02:08:40Z + 2023-12-16T01:51:29Z Archived @@ -39781,7 +39781,7 @@

OpenAPI Commander (link)

Stars - 21 + 22 Watchers @@ -39797,7 +39797,7 @@

OpenAPI Commander (link)

Last Updated - 2023-12-13T15:58:51Z + 2023-12-14T07:32:12Z Archived @@ -39937,11 +39937,11 @@

vacuum (link)

Stars - 326 + 329 Watchers - 5 + 6 Forks @@ -39953,7 +39953,7 @@

vacuum (link)

Last Updated - 2023-12-13T18:44:00Z + 2023-12-15T18:38:34Z Archived @@ -40041,7 +40041,7 @@

OpenAPI TypeScript (link)

Stars - 3922 + 3938 Watchers @@ -40057,7 +40057,7 @@

OpenAPI TypeScript (link)

Last Updated - 2023-12-13T22:36:26Z + 2023-12-15T18:17:08Z Archived @@ -40093,7 +40093,7 @@

libopenapi (link)

Stars - 215 + 217 Watchers @@ -40109,7 +40109,7 @@

libopenapi (link)

Last Updated - 2023-12-13T06:24:52Z + 2023-12-14T09:43:42Z Archived @@ -40509,7 +40509,7 @@

Specmatic (link)

Stars - 164 + 167 Watchers @@ -40525,7 +40525,7 @@

Specmatic (link)

Last Updated - 2023-12-13T06:54:10Z + 2023-12-15T19:08:01Z Archived @@ -40561,7 +40561,7 @@

openapi-changes (link)

Stars - 78 + 79 Watchers @@ -40577,7 +40577,7 @@

openapi-changes (link)

Last Updated - 2023-12-10T23:51:32Z + 2023-12-14T16:39:14Z Archived @@ -40665,7 +40665,7 @@

kubb (link)

Stars - 268 + 270 Watchers @@ -40681,7 +40681,7 @@

kubb (link)

Last Updated - 2023-12-13T20:18:13Z + 2023-12-15T11:35:53Z Archived @@ -41081,7 +41081,7 @@

rswag (link)

Stars - 1805 + 1806 Watchers @@ -41089,7 +41089,7 @@

rswag (link)

Forks - 400 + 401 Created @@ -41097,7 +41097,7 @@

rswag (link)

Last Updated - 2023-12-12T05:15:59Z + 2023-12-15T01:47:24Z Archived @@ -41133,7 +41133,7 @@

🌿 Fern (link)

Stars - 1996 + 1999 Watchers @@ -41141,7 +41141,7 @@

🌿 Fern (link)

Forks - 84 + 85 Created @@ -41149,7 +41149,7 @@

🌿 Fern (link)

Last Updated - 2023-12-13T14:53:35Z + 2023-12-16T00:24:21Z Archived @@ -41185,7 +41185,7 @@

wiretap (link)

Stars - 37 + 38 Watchers @@ -41201,7 +41201,7 @@

wiretap (link)

Last Updated - 2023-12-11T05:56:05Z + 2023-12-15T04:09:36Z Archived @@ -41289,7 +41289,7 @@

typeconv (link)

Stars - 373 + 374 Watchers @@ -41305,7 +41305,7 @@

typeconv (link)

Last Updated - 2023-12-08T15:12:04Z + 2023-12-15T18:35:41Z Archived @@ -41393,7 +41393,7 @@

FastAPI (link)

Stars - 65808 + 65897 Watchers @@ -41401,7 +41401,7 @@

FastAPI (link)

Forks - 5559 + 5569 Created @@ -41409,7 +41409,7 @@

FastAPI (link)

Last Updated - 2023-12-14T03:10:02Z + 2023-12-16T03:02:45Z Archived @@ -41445,7 +41445,7 @@

swagger-ui (link)

Stars - 24879 + 24891 Watchers @@ -41453,7 +41453,7 @@

swagger-ui (link)

Forks - 8842 + 8844 Created @@ -41461,7 +41461,7 @@

swagger-ui (link)

Last Updated - 2023-12-14T01:20:27Z + 2023-12-16T02:34:51Z Archived @@ -41497,7 +41497,7 @@

Redoc (link)

Stars - 21593 + 21603 Watchers @@ -41505,7 +41505,7 @@

Redoc (link)

Forks - 2261 + 2264 Created @@ -41513,7 +41513,7 @@

Redoc (link)

Last Updated - 2023-12-13T19:13:35Z + 2023-12-16T02:42:22Z Archived @@ -41549,15 +41549,15 @@

full-stack-fastapi-postgresql (link) Stars - 13819 + 13842 Watchers - 217 + 219 Forks - 2487 + 2488 Created @@ -41565,7 +41565,7 @@

full-stack-fastapi-postgresql (link) Last Updated - 2023-12-14T02:55:27Z + 2023-12-16T02:23:42Z Archived @@ -41653,7 +41653,7 @@

mockoon (link)

Stars - 5559 + 5562 Watchers @@ -41669,7 +41669,7 @@

mockoon (link)

Last Updated - 2023-12-13T23:59:44Z + 2023-12-16T02:36:13Z Archived @@ -41705,7 +41705,7 @@

knife4j (link)

Stars - 3708 + 3710 Watchers @@ -41721,7 +41721,7 @@

knife4j (link)

Last Updated - 2023-12-13T00:59:12Z + 2023-12-15T06:23:09Z Archived @@ -41757,7 +41757,7 @@

openapi-devtools (link)

Stars - 3552 + 3556 Watchers @@ -41773,7 +41773,7 @@

openapi-devtools (link)

Last Updated - 2023-12-13T17:26:48Z + 2023-12-15T20:21:17Z Archived @@ -41809,7 +41809,7 @@

openapi-directory (link)

Stars - 3468 + 3469 Watchers @@ -41825,7 +41825,7 @@

openapi-directory (link)

Last Updated - 2023-12-13T23:35:16Z + 2023-12-15T21:07:06Z Archived @@ -41861,7 +41861,7 @@

springdoc-openapi (link)

Stars - 2925 + 2927 Watchers @@ -41869,7 +41869,7 @@

springdoc-openapi (link)

Forks - 434 + 435 Created @@ -41877,7 +41877,7 @@

springdoc-openapi (link)

Last Updated - 2023-12-13T11:09:46Z + 2023-12-14T12:34:37Z Archived @@ -41913,7 +41913,7 @@

swagger-js (link)

Stars - 2550 + 2551 Watchers @@ -41921,7 +41921,7 @@

swagger-js (link)

Forks - 790 + 791 Created @@ -41929,7 +41929,7 @@

swagger-js (link)

Last Updated - 2023-12-11T10:28:40Z + 2023-12-15T15:22:05Z Archived @@ -41965,7 +41965,7 @@

uvicorn-gunicorn-fastapi-docker (link)< Stars - 2419 + 2425 Watchers @@ -41973,7 +41973,7 @@

uvicorn-gunicorn-fastapi-docker (link)< Forks - 314 + 313 Created @@ -41981,7 +41981,7 @@

uvicorn-gunicorn-fastapi-docker (link)< Last Updated - 2023-12-14T00:08:51Z + 2023-12-15T16:25:47Z Archived @@ -42025,7 +42025,7 @@

Schemathesis (link)

Forks - 144 + 143 Created @@ -42069,7 +42069,7 @@

drf-spectacular (link)

Stars - 1920 + 1924 Watchers @@ -42085,7 +42085,7 @@

drf-spectacular (link)

Last Updated - 2023-12-13T14:53:11Z + 2023-12-14T07:36:41Z Archived @@ -42121,7 +42121,7 @@

gnostic (link)

Stars - 1895 + 1896 Watchers @@ -42137,7 +42137,7 @@

gnostic (link)

Last Updated - 2023-12-13T09:35:14Z + 2023-12-15T03:56:23Z Archived @@ -42173,7 +42173,7 @@

utoipa (link)

Stars - 1541 + 1545 Watchers @@ -42189,7 +42189,7 @@

utoipa (link)

Last Updated - 2023-12-13T20:48:37Z + 2023-12-16T02:34:18Z Archived @@ -42225,7 +42225,7 @@

msgspec (link)

Stars - 1482 + 1500 Watchers @@ -42241,7 +42241,7 @@

msgspec (link)

Last Updated - 2023-12-13T14:22:03Z + 2023-12-16T03:19:32Z Archived @@ -42277,7 +42277,7 @@

rapidoc (link)

Stars - 1462 + 1465 Watchers @@ -42293,7 +42293,7 @@

rapidoc (link)

Last Updated - 2023-12-13T10:22:42Z + 2023-12-15T13:51:39Z Archived @@ -42329,7 +42329,7 @@

OpenAPI-gui (link)

Stars - 1317 + 1318 Watchers @@ -42345,7 +42345,7 @@

OpenAPI-gui (link)

Last Updated - 2023-12-10T09:54:33Z + 2023-12-15T21:09:58Z Archived @@ -42389,7 +42389,7 @@

openapi-generator-cli (link)

Forks - 133 + 134 Created @@ -42433,7 +42433,7 @@

apispec (link)

Stars - 1063 + 1062 Watchers @@ -42449,7 +42449,7 @@

apispec (link)

Last Updated - 2023-12-13T20:39:56Z + 2023-12-15T02:58:17Z Archived @@ -42485,7 +42485,7 @@

apiflask (link)

Stars - 881 + 884 Watchers @@ -42501,7 +42501,7 @@

apiflask (link)

Last Updated - 2023-12-13T06:29:42Z + 2023-12-15T05:42:20Z Archived @@ -42537,7 +42537,7 @@

ogen (link)

Stars - 861 + 862 Watchers @@ -42545,7 +42545,7 @@

ogen (link)

Forks - 60 + 61 Created @@ -42553,7 +42553,7 @@

ogen (link)

Last Updated - 2023-12-14T00:52:43Z + 2023-12-15T13:44:54Z Archived @@ -42589,7 +42589,7 @@

typespec (link)

Stars - 817 + 820 Watchers @@ -42597,7 +42597,7 @@

typespec (link)

Forks - 105 + 104 Created @@ -42605,7 +42605,7 @@

typespec (link)

Last Updated - 2023-12-13T20:07:01Z + 2023-12-15T21:41:31Z Archived @@ -42693,7 +42693,7 @@

json-schema-validator (link)

Stars - 711 + 713 Watchers @@ -42709,7 +42709,7 @@

json-schema-validator (link)

Last Updated - 2023-12-13T12:13:56Z + 2023-12-15T02:25:31Z Archived @@ -42745,7 +42745,7 @@

openapi-diff (link)

Stars - 698 + 699 Watchers @@ -42761,7 +42761,7 @@

openapi-diff (link)

Last Updated - 2023-12-12T19:15:42Z + 2023-12-15T03:55:21Z Archived @@ -42857,7 +42857,7 @@

create-openapi-repo (link)

Forks - 117 + 118 Created @@ -42901,7 +42901,7 @@

awesome-openapi3 (link)

Stars - 597 + 598 Watchers @@ -42917,7 +42917,7 @@

awesome-openapi3 (link)

Last Updated - 2023-12-12T08:10:56Z + 2023-12-15T03:45:13Z Archived @@ -42961,7 +42961,7 @@

generator-express-no-stress (link)

Forks - 94 + 95 Created @@ -43005,7 +43005,7 @@

openapi.tools (link)

Stars - 579 + 580 Watchers @@ -43013,7 +43013,7 @@

openapi.tools (link)

Forks - 284 + 286 Created @@ -43021,7 +43021,7 @@

openapi.tools (link)

Last Updated - 2023-12-10T16:40:36Z + 2023-12-15T04:01:18Z Archived @@ -43057,7 +43057,7 @@

zod-to-openapi (link)

Stars - 520 + 522 Watchers @@ -43065,7 +43065,7 @@

zod-to-openapi (link)

Forks - 42 + 43 Created @@ -43073,7 +43073,7 @@

zod-to-openapi (link)

Last Updated - 2023-12-13T16:05:42Z + 2023-12-15T15:48:15Z Archived @@ -43161,7 +43161,7 @@

ghlocalapi (link)

Stars - 441 + 442 Watchers @@ -43177,7 +43177,7 @@

ghlocalapi (link)

Last Updated - 2023-12-13T08:01:34Z + 2023-12-14T15:45:06Z Archived @@ -43213,7 +43213,7 @@

docusaurus-openapi (link)

Stars - 438 + 439 Watchers @@ -43229,7 +43229,7 @@

docusaurus-openapi (link)

Last Updated - 2023-12-07T06:43:07Z + 2023-12-15T00:51:05Z Archived @@ -43317,7 +43317,7 @@

oazapfts (link)

Stars - 424 + 426 Watchers @@ -43333,7 +43333,7 @@

oazapfts (link)

Last Updated - 2023-12-11T15:55:19Z + 2023-12-16T00:17:09Z Archived @@ -43577,7 +43577,7 @@

swagger-autogen (link)

Stars - 384 + 387 Watchers @@ -43585,7 +43585,7 @@

swagger-autogen (link)

Forks - 58 + 59 Created @@ -43593,7 +43593,7 @@

swagger-autogen (link)

Last Updated - 2023-12-12T10:16:40Z + 2023-12-14T16:32:56Z Archived @@ -43629,7 +43629,7 @@

typeconv (link)

Stars - 373 + 374 Watchers @@ -43645,7 +43645,7 @@

typeconv (link)

Last Updated - 2023-12-08T15:12:04Z + 2023-12-15T18:35:41Z Archived @@ -43681,7 +43681,7 @@

openapi-codegen (link)

Stars - 363 + 364 Watchers @@ -43697,7 +43697,7 @@

openapi-codegen (link)

Last Updated - 2023-12-13T03:06:43Z + 2023-12-14T11:05:52Z Archived @@ -44045,7 +44045,7 @@

openapi-spec-validator (link)

Stars - 290 + 291 Watchers @@ -44061,7 +44061,7 @@

openapi-spec-validator (link)

Last Updated - 2023-12-07T05:37:44Z + 2023-12-15T15:46:12Z Archived @@ -44097,7 +44097,7 @@

beacon-apis (link)

Stars - 284 + 286 Watchers @@ -44113,7 +44113,7 @@

beacon-apis (link)

Last Updated - 2023-12-08T14:44:32Z + 2023-12-16T02:47:48Z Archived @@ -44253,7 +44253,7 @@

huma (link)

Stars - 287 + 291 Watchers @@ -44261,7 +44261,7 @@

huma (link)

Forks - 34 + 35 Created @@ -44269,7 +44269,7 @@

huma (link)

Last Updated - 2023-12-13T19:56:03Z + 2023-12-16T00:39:52Z Archived @@ -44305,11 +44305,11 @@

openapi-core (link)

Stars - 254 + 255 Watchers - 9 + 10 Forks @@ -44321,7 +44321,7 @@

openapi-core (link)

Last Updated - 2023-12-13T09:22:53Z + 2023-12-15T16:05:26Z Archived @@ -44461,7 +44461,7 @@

apicat (link)

Stars - 228 + 229 Watchers @@ -44477,7 +44477,7 @@

apicat (link)

Last Updated - 2023-12-05T21:21:52Z + 2023-12-15T15:36:38Z Archived @@ -44521,7 +44521,7 @@

znai (link)

Forks - 12 + 13 Created @@ -44565,7 +44565,7 @@

thema (link)

Stars - 220 + 221 Watchers @@ -44581,7 +44581,7 @@

thema (link)

Last Updated - 2023-11-29T17:19:02Z + 2023-12-15T04:47:16Z Archived @@ -44633,7 +44633,7 @@

modelina (link)

Last Updated - 2023-12-13T19:10:37Z + 2023-12-14T23:23:53Z Archived @@ -44721,7 +44721,7 @@

prance (link)

Stars - 214 + 213 Watchers @@ -44737,7 +44737,7 @@

prance (link)

Last Updated - 2023-12-04T14:29:38Z + 2023-12-15T02:49:34Z Archived @@ -44929,7 +44929,7 @@

validator-badge (link)

Stars - 199 + 200 Watchers @@ -44945,7 +44945,7 @@

validator-badge (link)

Last Updated - 2023-12-06T09:18:27Z + 2023-12-14T12:29:35Z Archived @@ -45605,7 +45605,7 @@

itty-router-openapi (link)

Stars - 172 + 173 Watchers @@ -45621,7 +45621,7 @@

itty-router-openapi (link)

Last Updated - 2023-12-11T22:07:54Z + 2023-12-15T15:53:16Z Archived @@ -45829,7 +45829,7 @@

openapi-go (link)

Last Updated - 2023-12-13T07:21:40Z + 2023-12-15T12:12:30Z Archived @@ -46229,7 +46229,7 @@

flask-openapi3 (link)

Stars - 127 + 128 Watchers @@ -46245,7 +46245,7 @@

flask-openapi3 (link)

Last Updated - 2023-12-12T07:25:34Z + 2023-12-15T11:35:14Z Archived @@ -46385,7 +46385,7 @@

openapi-starter (link)

Stars - 120 + 121 Watchers @@ -46393,7 +46393,7 @@

openapi-starter (link)

Forks - 88 + 89 Created @@ -46401,7 +46401,7 @@

openapi-starter (link)

Last Updated - 2023-12-06T03:24:56Z + 2023-12-14T23:59:40Z Archived @@ -46809,7 +46809,7 @@

openapi4j (link)

Forks - 36 + 37 Created @@ -46905,7 +46905,7 @@

spring-boot-3-jwt-auth (link)

Stars - 94 + 97 Watchers @@ -46913,7 +46913,7 @@

spring-boot-3-jwt-auth (link)

Forks - 25 + 26 Created @@ -46921,7 +46921,7 @@

spring-boot-3-jwt-auth (link)

Last Updated - 2023-12-12T12:16:04Z + 2023-12-16T02:37:43Z Archived @@ -47269,7 +47269,7 @@

refitter (link)

Stars - 83 + 84 Watchers @@ -47285,7 +47285,7 @@

refitter (link)

Last Updated - 2023-12-09T12:37:31Z + 2023-12-14T09:00:57Z Archived @@ -47477,7 +47477,7 @@

oatpp-swagger (link)

Stars - 79 + 81 Watchers @@ -47485,7 +47485,7 @@

oatpp-swagger (link)

Forks - 51 + 52 Created @@ -47493,7 +47493,7 @@

oatpp-swagger (link)

Last Updated - 2023-12-09T21:23:21Z + 2023-12-16T01:09:18Z Archived @@ -47789,7 +47789,7 @@

paypal-rest-api-specifications (link) Stars - 76 + 77 Watchers @@ -47797,7 +47797,7 @@

paypal-rest-api-specifications (link) Forks - 77 + 80 Created @@ -47805,7 +47805,7 @@

paypal-rest-api-specifications (link) Last Updated - 2023-12-13T16:44:10Z + 2023-12-14T08:34:48Z Archived @@ -48465,7 +48465,7 @@

tooling (link)

Stars - 57 + 58 Watchers @@ -48473,7 +48473,7 @@

tooling (link)

Forks - 15 + 16 Created @@ -48481,7 +48481,7 @@

tooling (link)

Last Updated - 2023-12-11T17:14:01Z + 2023-12-15T03:44:22Z Archived @@ -48621,7 +48621,7 @@

openapi_first (link)

Stars - 54 + 55 Watchers @@ -48629,7 +48629,7 @@

openapi_first (link)

Forks - 7 + 8 Created @@ -48637,7 +48637,7 @@

openapi_first (link)

Last Updated - 2023-12-05T14:05:32Z + 2023-12-15T08:56:59Z Archived @@ -49401,7 +49401,7 @@

swaggerhub-cli (link)

Stars - 40 + 41 Watchers @@ -49417,7 +49417,7 @@

swaggerhub-cli (link)

Last Updated - 2023-11-10T09:47:22Z + 2023-12-16T01:13:03Z Archived @@ -49609,7 +49609,7 @@

api-doc-gpt (link)

Stars - 39 + 38 Watchers @@ -49625,7 +49625,7 @@

api-doc-gpt (link)

Last Updated - 2023-11-30T10:53:16Z + 2023-12-15T14:33:58Z Archived @@ -50233,7 +50233,7 @@

apity (link)

Stars - 33 + 37 Watchers @@ -50249,7 +50249,7 @@

apity (link)

Last Updated - 2023-11-02T13:57:53Z + 2023-12-14T20:31:44Z Archived @@ -50597,7 +50597,7 @@

openapi (link)

Stars - 31 + 32 Watchers @@ -50605,7 +50605,7 @@

openapi (link)

Forks - 60 + 59 Created @@ -50613,7 +50613,7 @@

openapi (link)

Last Updated - 2023-12-09T13:44:33Z + 2023-12-14T12:26:55Z Archived @@ -51377,7 +51377,7 @@

openapi-python-generator (link)

Stars - 27 + 28 Watchers @@ -51393,7 +51393,7 @@

openapi-python-generator (link)

Last Updated - 2023-12-01T23:51:03Z + 2023-12-14T16:03:51Z Archived @@ -53049,7 +53049,7 @@

go-oas3 (link)

Forks - 9 + 8 Created @@ -53353,7 +53353,7 @@

spring-boot-swagger-3-example (link) Stars - 18 + 20 Watchers @@ -53369,7 +53369,7 @@

spring-boot-swagger-3-example (link) Last Updated - 2023-11-17T08:41:41Z + 2023-12-14T13:45:55Z Archived @@ -53881,7 +53881,7 @@

go-types (link)

Forks - 9 + 8 Created @@ -55073,7 +55073,7 @@

nr-arch-exploration (link)

Watchers - 10 + 9 Forks @@ -58033,7 +58033,7 @@

httpgenerator (link)

Stars - 10 + 11 Watchers @@ -58041,7 +58041,7 @@

httpgenerator (link)

Forks - 0 + 1 Created @@ -58049,7 +58049,7 @@

httpgenerator (link)

Last Updated - 2023-12-12T08:30:57Z + 2023-12-14T07:27:47Z Archived @@ -60061,7 +60061,7 @@

spring-boot-3-security-6-jwt (link)

Stars - 6 + 8 Watchers @@ -60077,7 +60077,7 @@

spring-boot-3-security-6-jwt (link)

Last Updated - 2023-11-28T08:00:25Z + 2023-12-15T22:25:36Z Archived @@ -63545,11 +63545,11 @@

apibake-js (link)

Stars - 4 + 5 Watchers - 1 + 2 Forks @@ -63561,7 +63561,7 @@

apibake-js (link)

Last Updated - 2023-11-27T11:27:29Z + 2023-12-14T12:10:15Z Archived @@ -63865,7 +63865,7 @@

dropwizard-swagger (link)

Forks - 3 + 4 Created @@ -67305,7 +67305,7 @@

deploy.cachorro.api (link)

Last Updated - 2023-11-15T15:12:59Z + 2023-12-15T01:36:18Z Archived @@ -71925,7 +71925,7 @@

jrest (link)

Forks - 3 + 2 Created @@ -78989,7 +78989,7 @@

beff (link)

Stars - 1 + 2 Watchers @@ -79005,7 +79005,7 @@

beff (link)

Last Updated - 2023-09-28T03:40:31Z + 2023-12-15T15:36:06Z Archived @@ -80705,7 +80705,7 @@

generate-code (link)

Stars - N/A + 1 Watchers @@ -80721,7 +80721,7 @@

generate-code (link)

Last Updated - 2023-07-28T11:58:10Z + 2023-12-15T04:34:25Z Archived @@ -93757,7 +93757,7 @@

openapi-backend (link)

Stars - 549 + 548 Watchers @@ -93773,7 +93773,7 @@

openapi-backend (link)

Last Updated - 2023-12-12T23:42:47Z + 2023-12-15T21:06:38Z Archived @@ -100101,7 +100101,7 @@

PHP-CRUD-API (link)

Stars - 3460 + 3461 Watchers @@ -100109,7 +100109,7 @@

PHP-CRUD-API (link)

Forks - 1031 + 1030 Created @@ -100117,7 +100117,7 @@

PHP-CRUD-API (link)

Last Updated - 2023-12-13T22:56:24Z + 2023-12-14T16:19:55Z Archived @@ -101305,7 +101305,7 @@

Connexion (link)

Forks - 738 + 739 Created @@ -101313,7 +101313,7 @@

Connexion (link)

Last Updated - 2023-12-12T17:38:52Z + 2023-12-15T17:48:18Z Archived @@ -101557,7 +101557,7 @@

BigstickCarpet/swagger-cli (link)

Stars - 514 + 513 Watchers @@ -101573,7 +101573,7 @@

BigstickCarpet/swagger-cli (link)

Last Updated - 2023-12-07T06:10:41Z + 2023-12-15T02:59:02Z Archived @@ -101729,7 +101729,7 @@

LoopBack 4 (link)

Last Updated - 2023-12-13T04:59:37Z + 2023-12-15T15:13:08Z Archived @@ -101817,7 +101817,7 @@

RESTler (link)

Stars - 2353 + 2354 Watchers @@ -101833,7 +101833,7 @@

RESTler (link)

Last Updated - 2023-12-13T13:04:49Z + 2023-12-14T07:47:12Z Archived @@ -103429,7 +103429,7 @@

pyswagger (link)

Stars - 371 + 372 Watchers @@ -103445,7 +103445,7 @@

pyswagger (link)

Last Updated - 2023-11-29T18:52:16Z + 2023-12-14T19:20:24Z Archived diff --git a/docs/categories/code-generators.html b/docs/categories/code-generators.html index 5cb98aa4..b1e0aa9a 100644 --- a/docs/categories/code-generators.html +++ b/docs/categories/code-generators.html @@ -86,7 +86,7 @@

No Yes No - 4592 + 4602 @@ -132,7 +132,7 @@

No Yes Yes - 18451 + 18468 @@ -178,7 +178,7 @@

No Yes Yes - 1044 + 1046 @@ -266,7 +266,7 @@

No Yes Yes - 16187 + 16197 @@ -289,7 +289,7 @@

No Yes Yes - 94 + 95 @@ -335,7 +335,7 @@

No Yes Yes - 1894 + 1898 @@ -358,7 +358,7 @@

Yes Yes No - 21 + 22 @@ -381,7 +381,7 @@

Yes Yes Yes - 268 + 270 @@ -404,7 +404,7 @@

Yes Yes Yes - 1996 + 1999 @@ -427,7 +427,7 @@

Yes Yes No - 24879 + 24891 @@ -469,7 +469,7 @@

Yes Yes No - 2550 + 2551 @@ -597,7 +597,7 @@

No Yes No - 76 + 77 @@ -662,7 +662,7 @@

No Yes No - 40 + 41 @@ -2028,7 +2028,7 @@

OpenAPI Server Code Generator (oapi-cod Stars - 4592 + 4602 Watchers @@ -2036,7 +2036,7 @@

OpenAPI Server Code Generator (oapi-cod Forks - 761 + 764 Created @@ -2044,7 +2044,7 @@

OpenAPI Server Code Generator (oapi-cod Last Updated - 2023-12-13T13:50:16Z + 2023-12-15T20:34:59Z Archived @@ -2132,15 +2132,15 @@

OpenAPI Generator (link)

Stars - 18451 + 18468 Watchers - 214 + 215 Forks - 5844 + 5850 Created @@ -2148,7 +2148,7 @@

OpenAPI Generator (link)

Last Updated - 2023-12-14T02:50:23Z + 2023-12-15T21:06:56Z Archived @@ -2192,7 +2192,7 @@

OpenAPI JSON Schema Generator (link) Forks - 8 + 7 Created @@ -2236,7 +2236,7 @@

Kiota Api Client Generator (link)

Stars - 1044 + 1046 Watchers @@ -2252,7 +2252,7 @@

Kiota Api Client Generator (link)

Last Updated - 2023-12-13T16:58:54Z + 2023-12-15T16:31:45Z Archived @@ -2444,7 +2444,7 @@

Swagger-Codegen (link)

Stars - 16187 + 16197 Watchers @@ -2452,7 +2452,7 @@

Swagger-Codegen (link)

Forks - 6031 + 6032 Created @@ -2460,7 +2460,7 @@

Swagger-Codegen (link)

Last Updated - 2023-12-14T01:59:52Z + 2023-12-16T02:32:53Z Archived @@ -2496,7 +2496,7 @@

Unchase.OpenAPI.Connectedservice (link) Stars - 94 + 95 Watchers @@ -2512,7 +2512,7 @@

Unchase.OpenAPI.Connectedservice (link) Last Updated - 2023-11-24T12:57:57Z + 2023-12-14T07:42:16Z Archived @@ -2600,7 +2600,7 @@

orval (link)

Stars - 1894 + 1898 Watchers @@ -2616,7 +2616,7 @@

orval (link)

Last Updated - 2023-12-14T02:08:40Z + 2023-12-16T01:51:29Z Archived @@ -2652,7 +2652,7 @@

OpenAPI Commander (link)

Stars - 21 + 22 Watchers @@ -2668,7 +2668,7 @@

OpenAPI Commander (link)

Last Updated - 2023-12-13T15:58:51Z + 2023-12-14T07:32:12Z Archived @@ -2704,7 +2704,7 @@

kubb (link)

Stars - 268 + 270 Watchers @@ -2720,7 +2720,7 @@

kubb (link)

Last Updated - 2023-12-13T20:18:13Z + 2023-12-15T11:35:53Z Archived @@ -2756,7 +2756,7 @@

🌿 Fern (link)

Stars - 1996 + 1999 Watchers @@ -2764,7 +2764,7 @@

🌿 Fern (link)

Forks - 84 + 85 Created @@ -2772,7 +2772,7 @@

🌿 Fern (link)

Last Updated - 2023-12-13T14:53:35Z + 2023-12-16T00:24:21Z Archived @@ -2808,7 +2808,7 @@

swagger-ui (link)

Stars - 24879 + 24891 Watchers @@ -2816,7 +2816,7 @@

swagger-ui (link)

Forks - 8842 + 8844 Created @@ -2824,7 +2824,7 @@

swagger-ui (link)

Last Updated - 2023-12-14T01:20:27Z + 2023-12-16T02:34:51Z Archived @@ -2912,7 +2912,7 @@

swagger-js (link)

Stars - 2550 + 2551 Watchers @@ -2920,7 +2920,7 @@

swagger-js (link)

Forks - 790 + 791 Created @@ -2928,7 +2928,7 @@

swagger-js (link)

Last Updated - 2023-12-11T10:28:40Z + 2023-12-15T15:22:05Z Archived @@ -2972,7 +2972,7 @@

openapi-generator-cli (link)

Forks - 133 + 134 Created @@ -3024,7 +3024,7 @@

create-openapi-repo (link)

Forks - 117 + 118 Created @@ -3224,7 +3224,7 @@

paypal-rest-api-specifications (link) Stars - 76 + 77 Watchers @@ -3232,7 +3232,7 @@

paypal-rest-api-specifications (link) Forks - 77 + 80 Created @@ -3240,7 +3240,7 @@

paypal-rest-api-specifications (link) Last Updated - 2023-12-13T16:44:10Z + 2023-12-14T08:34:48Z Archived @@ -3380,7 +3380,7 @@

swaggerhub-cli (link)

Stars - 40 + 41 Watchers @@ -3396,7 +3396,7 @@

swaggerhub-cli (link)

Last Updated - 2023-11-10T09:47:22Z + 2023-12-16T01:13:03Z Archived @@ -4124,7 +4124,7 @@

deploy.cachorro.api (link)

Last Updated - 2023-11-15T15:12:59Z + 2023-12-15T01:36:18Z Archived diff --git a/docs/categories/converters.html b/docs/categories/converters.html index 3e2dd87c..2b92116f 100644 --- a/docs/categories/converters.html +++ b/docs/categories/converters.html @@ -149,7 +149,7 @@

Yes Yes Yes - 143 + 144 @@ -216,7 +216,7 @@

No Yes Yes - 1051 + 1052 @@ -239,7 +239,7 @@

No Yes No - 590 + 591 @@ -262,7 +262,7 @@

No Yes No - 1392 + 1393 @@ -285,7 +285,7 @@

No No Yes - 9027 + 9033 @@ -331,7 +331,7 @@

Yes Yes Yes - 436 + 437 @@ -396,7 +396,7 @@

No Yes No - 208 + 209 @@ -440,7 +440,7 @@

Yes Yes Yes - 812 + 814 @@ -486,7 +486,7 @@

No Yes No - 908 + 913 @@ -532,7 +532,7 @@

Yes Yes Yes - 3922 + 3938 @@ -597,7 +597,7 @@

No Yes No - 373 + 374 @@ -618,7 +618,7 @@

No Yes No - 1895 + 1896 @@ -1059,7 +1059,7 @@

No No Yes - 371 + 372 @@ -1290,7 +1290,7 @@

OpenAPI Filter (link)

Stars - 143 + 144 Watchers @@ -1306,7 +1306,7 @@

OpenAPI Filter (link)

Last Updated - 2023-12-10T11:26:22Z + 2023-12-14T12:16:46Z Archived @@ -1446,7 +1446,7 @@

LucyBot api-spec-converter (link)

Stars - 1051 + 1052 Watchers @@ -1462,7 +1462,7 @@

LucyBot api-spec-converter (link)

Last Updated - 2023-12-13T19:31:59Z + 2023-12-15T06:24:32Z Archived @@ -1498,7 +1498,7 @@

portman (link)

Stars - 590 + 591 Watchers @@ -1514,7 +1514,7 @@

portman (link)

Last Updated - 2023-12-13T04:58:06Z + 2023-12-14T08:23:07Z Archived @@ -1550,7 +1550,7 @@

Step CI (link)

Stars - 1392 + 1393 Watchers @@ -1566,7 +1566,7 @@

Step CI (link)

Last Updated - 2023-12-13T04:58:24Z + 2023-12-14T21:13:18Z Archived @@ -1602,7 +1602,7 @@

go-swagger (link)

Stars - 9027 + 9033 Watchers @@ -1618,7 +1618,7 @@

go-swagger (link)

Last Updated - 2023-12-13T20:27:08Z + 2023-12-15T02:49:23Z Archived @@ -1706,7 +1706,7 @@

api (link)

Stars - 436 + 437 Watchers @@ -1722,7 +1722,7 @@

api (link)

Last Updated - 2023-12-13T14:22:56Z + 2023-12-14T08:00:56Z Archived @@ -1862,7 +1862,7 @@

OpenAPI Schema to JSON Schema (link) Stars - 208 + 209 Watchers @@ -1878,7 +1878,7 @@

OpenAPI Schema to JSON Schema (link) Last Updated - 2023-12-10T07:39:12Z + 2023-12-15T03:42:55Z Archived @@ -1966,7 +1966,7 @@

openapi-to-postman (link)

Stars - 812 + 814 Watchers @@ -1982,7 +1982,7 @@

openapi-to-postman (link)

Last Updated - 2023-12-13T11:14:30Z + 2023-12-15T23:09:23Z Archived @@ -2070,7 +2070,7 @@

openapi-python-client (link)

Stars - 908 + 913 Watchers @@ -2078,7 +2078,7 @@

openapi-python-client (link)

Forks - 186 + 187 Created @@ -2086,7 +2086,7 @@

openapi-python-client (link)

Last Updated - 2023-12-14T01:52:38Z + 2023-12-15T20:30:52Z Archived @@ -2174,7 +2174,7 @@

OpenAPI TypeScript (link)

Stars - 3922 + 3938 Watchers @@ -2190,7 +2190,7 @@

OpenAPI TypeScript (link)

Last Updated - 2023-12-13T22:36:26Z + 2023-12-15T18:17:08Z Archived @@ -2330,7 +2330,7 @@

typeconv (link)

Stars - 373 + 374 Watchers @@ -2346,7 +2346,7 @@

typeconv (link)

Last Updated - 2023-12-08T15:12:04Z + 2023-12-15T18:35:41Z Archived @@ -2382,7 +2382,7 @@

gnostic (link)

Stars - 1895 + 1896 Watchers @@ -2398,7 +2398,7 @@

gnostic (link)

Last Updated - 2023-12-13T09:35:14Z + 2023-12-15T03:56:23Z Archived @@ -3474,7 +3474,7 @@

pyswagger (link)

Stars - 371 + 372 Watchers @@ -3490,7 +3490,7 @@

pyswagger (link)

Last Updated - 2023-11-29T18:52:16Z + 2023-12-14T19:20:24Z Archived diff --git a/docs/categories/data-validators.html b/docs/categories/data-validators.html index 1096bce1..a28ef69c 100644 --- a/docs/categories/data-validators.html +++ b/docs/categories/data-validators.html @@ -86,7 +86,7 @@

No Yes Yes - 2966 + 2969 @@ -130,7 +130,7 @@

No Yes No - 1392 + 1393 @@ -241,7 +241,7 @@

No Yes Yes - 2190 + 2193 @@ -371,7 +371,7 @@

No Yes Yes - 373 + 374 @@ -440,7 +440,7 @@

Yes Yes Yes - 326 + 329 @@ -486,7 +486,7 @@

Yes Yes Yes - 78 + 79 @@ -553,7 +553,7 @@

Yes Yes Yes - 37 + 38 @@ -574,7 +574,7 @@

Yes Yes No - 254 + 255 @@ -700,7 +700,7 @@

No Yes No - 54 + 55 @@ -1810,7 +1810,7 @@

tsoa (link)

Stars - 2966 + 2969 Watchers @@ -1826,7 +1826,7 @@

tsoa (link)

Last Updated - 2023-12-13T20:52:04Z + 2023-12-15T21:02:22Z Archived @@ -1914,7 +1914,7 @@

Step CI (link)

Stars - 1392 + 1393 Watchers @@ -1930,7 +1930,7 @@

Step CI (link)

Last Updated - 2023-12-13T04:58:24Z + 2023-12-14T21:13:18Z Archived @@ -2174,7 +2174,7 @@

kin-openapi (link)

Stars - 2190 + 2193 Watchers @@ -2190,7 +2190,7 @@

kin-openapi (link)

Last Updated - 2023-12-13T11:00:13Z + 2023-12-15T16:35:09Z Archived @@ -2486,7 +2486,7 @@

APIFuzzer (link)

Stars - 373 + 374 Watchers @@ -2502,7 +2502,7 @@

APIFuzzer (link)

Last Updated - 2023-12-07T05:20:19Z + 2023-12-14T13:26:42Z Archived @@ -2642,11 +2642,11 @@

vacuum (link)

Stars - 326 + 329 Watchers - 5 + 6 Forks @@ -2658,7 +2658,7 @@

vacuum (link)

Last Updated - 2023-12-13T18:44:00Z + 2023-12-15T18:38:34Z Archived @@ -2746,7 +2746,7 @@

openapi-changes (link)

Stars - 78 + 79 Watchers @@ -2762,7 +2762,7 @@

openapi-changes (link)

Last Updated - 2023-12-10T23:51:32Z + 2023-12-14T16:39:14Z Archived @@ -2902,7 +2902,7 @@

wiretap (link)

Stars - 37 + 38 Watchers @@ -2918,7 +2918,7 @@

wiretap (link)

Last Updated - 2023-12-11T05:56:05Z + 2023-12-15T04:09:36Z Archived @@ -2954,11 +2954,11 @@

openapi-core (link)

Stars - 254 + 255 Watchers - 9 + 10 Forks @@ -2970,7 +2970,7 @@

openapi-core (link)

Last Updated - 2023-12-13T09:22:53Z + 2023-12-15T16:05:26Z Archived @@ -3222,7 +3222,7 @@

openapi4j (link)

Forks - 36 + 37 Created @@ -3266,7 +3266,7 @@

openapi_first (link)

Stars - 54 + 55 Watchers @@ -3274,7 +3274,7 @@

openapi_first (link)

Forks - 7 + 8 Created @@ -3282,7 +3282,7 @@

openapi_first (link)

Last Updated - 2023-12-05T14:05:32Z + 2023-12-15T08:56:59Z Archived diff --git a/docs/categories/description-validators.html b/docs/categories/description-validators.html index c806d97c..5a8feadd 100644 --- a/docs/categories/description-validators.html +++ b/docs/categories/description-validators.html @@ -128,7 +128,7 @@

Yes Yes Yes - 2114 + 2117 @@ -193,7 +193,7 @@

Yes Yes Yes - 708 + 711 @@ -260,7 +260,7 @@

Yes Yes Yes - 436 + 437 @@ -369,7 +369,7 @@

Yes Yes Yes - 326 + 329 @@ -478,7 +478,7 @@

Yes Yes No - 579 + 580 @@ -1381,7 +1381,7 @@

No Yes Yes - 514 + 513 @@ -1604,7 +1604,7 @@

Spectral (link)

Stars - 2114 + 2117 Watchers @@ -1612,7 +1612,7 @@

Spectral (link)

Forks - 204 + 205 Created @@ -1620,7 +1620,7 @@

Spectral (link)

Last Updated - 2023-12-13T15:38:53Z + 2023-12-15T12:52:33Z Archived @@ -1760,7 +1760,7 @@

Redocly CLI (link)

Stars - 708 + 711 Watchers @@ -1768,7 +1768,7 @@

Redocly CLI (link)

Forks - 108 + 109 Created @@ -1776,7 +1776,7 @@

Redocly CLI (link)

Last Updated - 2023-12-13T20:22:22Z + 2023-12-15T16:51:37Z Archived @@ -1916,7 +1916,7 @@

api (link)

Stars - 436 + 437 Watchers @@ -1932,7 +1932,7 @@

api (link)

Last Updated - 2023-12-13T14:22:56Z + 2023-12-14T08:00:56Z Archived @@ -2176,11 +2176,11 @@

vacuum (link)

Stars - 326 + 329 Watchers - 5 + 6 Forks @@ -2192,7 +2192,7 @@

vacuum (link)

Last Updated - 2023-12-13T18:44:00Z + 2023-12-15T18:38:34Z Archived @@ -2392,7 +2392,7 @@

generator-express-no-stress (link)

Forks - 94 + 95 Created @@ -2436,7 +2436,7 @@

openapi.tools (link)

Stars - 579 + 580 Watchers @@ -2444,7 +2444,7 @@

openapi.tools (link)

Forks - 284 + 286 Created @@ -2452,7 +2452,7 @@

openapi.tools (link)

Last Updated - 2023-12-10T16:40:36Z + 2023-12-15T04:01:18Z Archived @@ -4672,7 +4672,7 @@

BigstickCarpet/swagger-cli (link)

Stars - 514 + 513 Watchers @@ -4688,7 +4688,7 @@

BigstickCarpet/swagger-cli (link)

Last Updated - 2023-12-07T06:10:41Z + 2023-12-15T02:59:02Z Archived diff --git a/docs/categories/documentation.html b/docs/categories/documentation.html index a1810a9a..03b62a1e 100644 --- a/docs/categories/documentation.html +++ b/docs/categories/documentation.html @@ -86,7 +86,7 @@

Yes Yes Yes - 1479 + 1589 @@ -275,7 +275,7 @@

Yes Yes Yes - 21593 + 21603 @@ -321,7 +321,7 @@

No Yes Yes - 1402 + 1404 @@ -496,7 +496,7 @@

Yes Yes Yes - 708 + 711 @@ -582,7 +582,7 @@

Yes Yes Yes - 1309 + 1311 @@ -714,7 +714,7 @@

Yes Yes Yes - 78 + 79 @@ -796,7 +796,7 @@

Yes Yes Yes - 1996 + 1999 @@ -840,7 +840,7 @@

No Yes No - 1462 + 1465 @@ -861,7 +861,7 @@

No Yes No - 284 + 286 @@ -2022,15 +2022,15 @@

Scalar (link)

Stars - 1479 + 1589 Watchers - 7 + 8 Forks - 20 + 22 Created @@ -2038,7 +2038,7 @@

Scalar (link)

Last Updated - 2023-12-13T17:43:08Z + 2023-12-16T03:00:28Z Archived @@ -2490,7 +2490,7 @@

ReDoc (link)

Stars - 21593 + 21603 Watchers @@ -2498,7 +2498,7 @@

ReDoc (link)

Forks - 2261 + 2264 Created @@ -2506,7 +2506,7 @@

ReDoc (link)

Last Updated - 2023-12-13T19:13:35Z + 2023-12-16T02:42:22Z Archived @@ -2594,7 +2594,7 @@

widdershins (link)

Stars - 1402 + 1404 Watchers @@ -2610,7 +2610,7 @@

widdershins (link)

Last Updated - 2023-12-13T12:07:25Z + 2023-12-14T13:09:47Z Archived @@ -3010,7 +3010,7 @@

Redocly CLI (link)

Stars - 708 + 711 Watchers @@ -3018,7 +3018,7 @@

Redocly CLI (link)

Forks - 108 + 109 Created @@ -3026,7 +3026,7 @@

Redocly CLI (link)

Last Updated - 2023-12-13T20:22:22Z + 2023-12-15T16:51:37Z Archived @@ -3218,7 +3218,7 @@

Elements (link)

Stars - 1309 + 1311 Watchers @@ -3234,7 +3234,7 @@

Elements (link)

Last Updated - 2023-12-13T20:42:22Z + 2023-12-15T17:44:23Z Archived @@ -3530,7 +3530,7 @@

openapi-changes (link)

Stars - 78 + 79 Watchers @@ -3546,7 +3546,7 @@

openapi-changes (link)

Last Updated - 2023-12-10T23:51:32Z + 2023-12-14T16:39:14Z Archived @@ -3738,7 +3738,7 @@

🌿 Fern (link)

Stars - 1996 + 1999 Watchers @@ -3746,7 +3746,7 @@

🌿 Fern (link)

Forks - 84 + 85 Created @@ -3754,7 +3754,7 @@

🌿 Fern (link)

Last Updated - 2023-12-13T14:53:35Z + 2023-12-16T00:24:21Z Archived @@ -3842,7 +3842,7 @@

rapidoc (link)

Stars - 1462 + 1465 Watchers @@ -3858,7 +3858,7 @@

rapidoc (link)

Last Updated - 2023-12-13T10:22:42Z + 2023-12-15T13:51:39Z Archived @@ -3894,7 +3894,7 @@

beacon-apis (link)

Stars - 284 + 286 Watchers @@ -3910,7 +3910,7 @@

beacon-apis (link)

Last Updated - 2023-12-08T14:44:32Z + 2023-12-16T02:47:48Z Archived @@ -3954,7 +3954,7 @@

znai (link)

Forks - 12 + 13 Created @@ -4678,7 +4678,7 @@

nr-arch-exploration (link)

Watchers - 10 + 9 Forks diff --git a/docs/categories/dsl.html b/docs/categories/dsl.html index de071f77..7be3d64d 100644 --- a/docs/categories/dsl.html +++ b/docs/categories/dsl.html @@ -187,7 +187,7 @@

No Yes No - 1805 + 1806 @@ -545,7 +545,7 @@

rswag (link)

Stars - 1805 + 1806 Watchers @@ -553,7 +553,7 @@

rswag (link)

Forks - 400 + 401 Created @@ -561,7 +561,7 @@

rswag (link)

Last Updated - 2023-12-12T05:15:59Z + 2023-12-15T01:47:24Z Archived diff --git a/docs/categories/editors.html b/docs/categories/editors.html index 75adfbab..19bf57b9 100644 --- a/docs/categories/editors.html +++ b/docs/categories/editors.html @@ -86,7 +86,7 @@

No Yes No - 1317 + 1318 @@ -256,7 +256,7 @@

OpenAPI-gui (link)

Stars - 1317 + 1318 Watchers @@ -272,7 +272,7 @@

OpenAPI-gui (link)

Last Updated - 2023-12-10T09:54:33Z + 2023-12-15T21:09:58Z Archived diff --git a/docs/categories/gateway.html b/docs/categories/gateway.html index 5add5410..08467ee2 100644 --- a/docs/categories/gateway.html +++ b/docs/categories/gateway.html @@ -105,7 +105,7 @@

No Yes No - 1619 + 1622 @@ -189,7 +189,7 @@

Yes Yes Yes - 37 + 38 @@ -318,7 +318,7 @@

Fusio (link)

Stars - 1619 + 1622 Watchers @@ -334,7 +334,7 @@

Fusio (link)

Last Updated - 2023-12-12T04:08:22Z + 2023-12-15T12:08:58Z Archived @@ -526,7 +526,7 @@

wiretap (link)

Stars - 37 + 38 Watchers @@ -542,7 +542,7 @@

wiretap (link)

Last Updated - 2023-12-11T05:56:05Z + 2023-12-15T04:09:36Z Archived diff --git a/docs/categories/low-level-tooling.html b/docs/categories/low-level-tooling.html index b608d742..650a4342 100644 --- a/docs/categories/low-level-tooling.html +++ b/docs/categories/low-level-tooling.html @@ -86,7 +86,7 @@

No Yes No - 2925 + 2927 @@ -107,7 +107,7 @@

No Yes No - 199 + 200 @@ -235,7 +235,7 @@

No Yes No - 79 + 81 @@ -1498,7 +1498,7 @@

springdoc-openapi (link)

Stars - 2925 + 2927 Watchers @@ -1506,7 +1506,7 @@

springdoc-openapi (link)

Forks - 434 + 435 Created @@ -1514,7 +1514,7 @@

springdoc-openapi (link)

Last Updated - 2023-12-13T11:09:46Z + 2023-12-14T12:34:37Z Archived @@ -1550,7 +1550,7 @@

validator-badge (link)

Stars - 199 + 200 Watchers @@ -1566,7 +1566,7 @@

validator-badge (link)

Last Updated - 2023-12-06T09:18:27Z + 2023-12-14T12:29:35Z Archived @@ -1670,7 +1670,7 @@

openapi-go (link)

Last Updated - 2023-12-13T07:21:40Z + 2023-12-15T12:12:30Z Archived @@ -1862,7 +1862,7 @@

oatpp-swagger (link)

Stars - 79 + 81 Watchers @@ -1870,7 +1870,7 @@

oatpp-swagger (link)

Forks - 51 + 52 Created @@ -1878,7 +1878,7 @@

oatpp-swagger (link)

Last Updated - 2023-12-09T21:23:21Z + 2023-12-16T01:09:18Z Archived @@ -2234,7 +2234,7 @@

go-types (link)

Forks - 9 + 8 Created diff --git a/docs/categories/mock-testing.html b/docs/categories/mock-testing.html index 49251b61..73ff01ac 100644 --- a/docs/categories/mock-testing.html +++ b/docs/categories/mock-testing.html @@ -86,7 +86,7 @@

Yes Yes Yes - 1056 + 1058 @@ -140,7 +140,7 @@

Microcks (link)

Stars - 1056 + 1058 Watchers @@ -148,7 +148,7 @@

Microcks (link)

Forks - 180 + 179 Created @@ -156,7 +156,7 @@

Microcks (link)

Last Updated - 2023-12-13T19:01:56Z + 2023-12-15T08:52:43Z Archived diff --git a/docs/categories/mock.html b/docs/categories/mock.html index 63264508..87e610b2 100644 --- a/docs/categories/mock.html +++ b/docs/categories/mock.html @@ -125,7 +125,7 @@

Yes Yes Yes - 3833 + 3835 @@ -345,7 +345,7 @@

No Yes Yes - 1894 + 1898 @@ -412,7 +412,7 @@

No Yes No - 164 + 167 @@ -828,7 +828,7 @@

Prism (link)

Stars - 3833 + 3835 Watchers @@ -844,7 +844,7 @@

Prism (link)

Last Updated - 2023-12-14T02:35:10Z + 2023-12-15T18:37:47Z Archived @@ -1348,7 +1348,7 @@

orval (link)

Stars - 1894 + 1898 Watchers @@ -1364,7 +1364,7 @@

orval (link)

Last Updated - 2023-12-14T02:08:40Z + 2023-12-16T01:51:29Z Archived @@ -1504,7 +1504,7 @@

Specmatic (link)

Stars - 164 + 167 Watchers @@ -1520,7 +1520,7 @@

Specmatic (link)

Last Updated - 2023-12-13T06:54:10Z + 2023-12-15T19:08:01Z Archived @@ -1928,7 +1928,7 @@

Connexion (link)

Forks - 738 + 739 Created @@ -1936,7 +1936,7 @@

Connexion (link)

Last Updated - 2023-12-12T17:38:52Z + 2023-12-15T17:48:18Z Archived diff --git a/docs/categories/parsers.html b/docs/categories/parsers.html index 5eaacbee..faaf2837 100644 --- a/docs/categories/parsers.html +++ b/docs/categories/parsers.html @@ -86,7 +86,7 @@

No Yes No - 478 + 481 @@ -107,7 +107,7 @@

Yes Yes Yes - 143 + 144 @@ -174,7 +174,7 @@

Yes Yes Yes - 21593 + 21603 @@ -220,7 +220,7 @@

No Yes Yes - 1402 + 1404 @@ -287,7 +287,7 @@

No Yes No - 4592 + 4602 @@ -538,7 +538,7 @@

No Yes Yes - 2966 + 2969 @@ -628,7 +628,7 @@

Yes Yes Yes - 708 + 711 @@ -695,7 +695,7 @@

No Yes Yes - 1017 + 1019 @@ -806,7 +806,7 @@

No Yes Yes - 2190 + 2193 @@ -1005,7 +1005,7 @@

No No Yes - 9027 + 9033 @@ -1074,7 +1074,7 @@

Yes Yes Yes - 436 + 437 @@ -1141,7 +1141,7 @@

No Yes No - 208 + 209 @@ -1298,7 +1298,7 @@

Yes Yes Yes - 812 + 814 @@ -1407,7 +1407,7 @@

No Yes No - 5 + 6 @@ -1430,7 +1430,7 @@

No Yes No - 908 + 913 @@ -1545,7 +1545,7 @@

Yes Yes No - 21 + 22 @@ -1591,7 +1591,7 @@

Yes Yes Yes - 215 + 217 @@ -1683,7 +1683,7 @@

Yes Yes Yes - 78 + 79 @@ -1748,7 +1748,7 @@

No Yes No - 1805 + 1806 @@ -1771,7 +1771,7 @@

No Yes No - 373 + 374 @@ -1794,7 +1794,7 @@

Yes Yes No - 21593 + 21603 @@ -1815,7 +1815,7 @@

No Yes No - 1541 + 1545 @@ -1836,7 +1836,7 @@

No Yes No - 1063 + 1062 @@ -1857,7 +1857,7 @@

No Yes No - 861 + 862 @@ -1878,7 +1878,7 @@

No Yes No - 711 + 713 @@ -1899,7 +1899,7 @@

No Yes No - 698 + 699 @@ -1962,7 +1962,7 @@

No Yes No - 597 + 598 @@ -1983,7 +1983,7 @@

No Yes No - 520 + 522 @@ -2025,7 +2025,7 @@

No Yes No - 424 + 426 @@ -2067,7 +2067,7 @@

No Yes No - 384 + 387 @@ -2088,7 +2088,7 @@

No Yes No - 373 + 374 @@ -2151,7 +2151,7 @@

Yes Yes No - 290 + 291 @@ -2172,7 +2172,7 @@

Yes Yes No - 254 + 255 @@ -2237,7 +2237,7 @@

No Yes No - 199 + 200 @@ -2472,7 +2472,7 @@

Yes Yes No - 120 + 121 @@ -2745,7 +2745,7 @@

No Yes No - 83 + 84 @@ -2976,7 +2976,7 @@

No Yes No - 54 + 55 @@ -3274,7 +3274,7 @@

No Yes No - 33 + 37 @@ -3337,7 +3337,7 @@

No Yes No - 31 + 32 @@ -4519,7 +4519,7 @@

No Yes No - 10 + 11 @@ -5359,7 +5359,7 @@

No Yes No - 4 + 5 @@ -7522,7 +7522,7 @@

No Yes No - N/A + 1 @@ -9848,7 +9848,7 @@

No Yes Yes - 514 + 513 @@ -10156,7 +10156,7 @@

oasdiff (link)

Stars - 478 + 481 Watchers @@ -10172,7 +10172,7 @@

oasdiff (link)

Last Updated - 2023-12-13T21:22:25Z + 2023-12-16T00:49:19Z Archived @@ -10208,7 +10208,7 @@

OpenAPI Filter (link)

Stars - 143 + 144 Watchers @@ -10224,7 +10224,7 @@

OpenAPI Filter (link)

Last Updated - 2023-12-10T11:26:22Z + 2023-12-14T12:16:46Z Archived @@ -10364,7 +10364,7 @@

ReDoc (link)

Stars - 21593 + 21603 Watchers @@ -10372,7 +10372,7 @@

ReDoc (link)

Forks - 2261 + 2264 Created @@ -10380,7 +10380,7 @@

ReDoc (link)

Last Updated - 2023-12-13T19:13:35Z + 2023-12-16T02:42:22Z Archived @@ -10468,7 +10468,7 @@

widdershins (link)

Stars - 1402 + 1404 Watchers @@ -10484,7 +10484,7 @@

widdershins (link)

Last Updated - 2023-12-13T12:07:25Z + 2023-12-14T13:09:47Z Archived @@ -10624,7 +10624,7 @@

OpenAPI Server Code Generator (oapi-cod Stars - 4592 + 4602 Watchers @@ -10632,7 +10632,7 @@

OpenAPI Server Code Generator (oapi-cod Forks - 761 + 764 Created @@ -10640,7 +10640,7 @@

OpenAPI Server Code Generator (oapi-cod Last Updated - 2023-12-13T13:50:16Z + 2023-12-15T20:34:59Z Archived @@ -11196,7 +11196,7 @@

tsoa (link)

Stars - 2966 + 2969 Watchers @@ -11212,7 +11212,7 @@

tsoa (link)

Last Updated - 2023-12-13T20:52:04Z + 2023-12-15T21:02:22Z Archived @@ -11404,7 +11404,7 @@

Redocly CLI (link)

Stars - 708 + 711 Watchers @@ -11412,7 +11412,7 @@

Redocly CLI (link)

Forks - 108 + 109 Created @@ -11420,7 +11420,7 @@

Redocly CLI (link)

Last Updated - 2023-12-13T20:22:22Z + 2023-12-15T16:51:37Z Archived @@ -11560,7 +11560,7 @@

APIDevTools/swagger-parser (link)

Stars - 1017 + 1019 Watchers @@ -11576,7 +11576,7 @@

APIDevTools/swagger-parser (link)

Last Updated - 2023-12-13T17:54:25Z + 2023-12-15T17:49:23Z Archived @@ -11820,7 +11820,7 @@

kin-openapi (link)

Stars - 2190 + 2193 Watchers @@ -11836,7 +11836,7 @@

kin-openapi (link)

Last Updated - 2023-12-13T11:00:13Z + 2023-12-15T16:35:09Z Archived @@ -11932,7 +11932,7 @@

Object Oriented OpenAPI Specification ( Forks - 19 + 20 Created @@ -11940,7 +11940,7 @@

Object Oriented OpenAPI Specification ( Last Updated - 2023-12-13T12:26:58Z + 2023-12-14T12:37:10Z Archived @@ -12288,7 +12288,7 @@

go-swagger (link)

Stars - 9027 + 9033 Watchers @@ -12304,7 +12304,7 @@

go-swagger (link)

Last Updated - 2023-12-13T20:27:08Z + 2023-12-15T02:49:23Z Archived @@ -12444,7 +12444,7 @@

api (link)

Stars - 436 + 437 Watchers @@ -12460,7 +12460,7 @@

api (link)

Last Updated - 2023-12-13T14:22:56Z + 2023-12-14T08:00:56Z Archived @@ -12600,7 +12600,7 @@

OpenAPI Schema to JSON Schema (link) Stars - 208 + 209 Watchers @@ -12616,7 +12616,7 @@

OpenAPI Schema to JSON Schema (link) Last Updated - 2023-12-10T07:39:12Z + 2023-12-15T03:42:55Z Archived @@ -12964,7 +12964,7 @@

openapi-to-postman (link)

Stars - 812 + 814 Watchers @@ -12980,7 +12980,7 @@

openapi-to-postman (link)

Last Updated - 2023-12-13T11:14:30Z + 2023-12-15T23:09:23Z Archived @@ -13224,7 +13224,7 @@

OAuth2 as OpenAPI Spec 3.0 components ( Stars - 5 + 6 Watchers @@ -13240,7 +13240,7 @@

OAuth2 as OpenAPI Spec 3.0 components ( Last Updated - 2023-11-08T08:09:40Z + 2023-12-15T04:11:40Z Archived @@ -13276,7 +13276,7 @@

openapi-python-client (link)

Stars - 908 + 913 Watchers @@ -13284,7 +13284,7 @@

openapi-python-client (link)

Forks - 186 + 187 Created @@ -13292,7 +13292,7 @@

openapi-python-client (link)

Last Updated - 2023-12-14T01:52:38Z + 2023-12-15T20:30:52Z Archived @@ -13536,7 +13536,7 @@

OpenAPI Commander (link)

Stars - 21 + 22 Watchers @@ -13552,7 +13552,7 @@

OpenAPI Commander (link)

Last Updated - 2023-12-13T15:58:51Z + 2023-12-14T07:32:12Z Archived @@ -13640,7 +13640,7 @@

libopenapi (link)

Stars - 215 + 217 Watchers @@ -13656,7 +13656,7 @@

libopenapi (link)

Last Updated - 2023-12-13T06:24:52Z + 2023-12-14T09:43:42Z Archived @@ -13848,7 +13848,7 @@

openapi-changes (link)

Stars - 78 + 79 Watchers @@ -13864,7 +13864,7 @@

openapi-changes (link)

Last Updated - 2023-12-10T23:51:32Z + 2023-12-14T16:39:14Z Archived @@ -14004,7 +14004,7 @@

rswag (link)

Stars - 1805 + 1806 Watchers @@ -14012,7 +14012,7 @@

rswag (link)

Forks - 400 + 401 Created @@ -14020,7 +14020,7 @@

rswag (link)

Last Updated - 2023-12-12T05:15:59Z + 2023-12-15T01:47:24Z Archived @@ -14056,7 +14056,7 @@

typeconv (link)

Stars - 373 + 374 Watchers @@ -14072,7 +14072,7 @@

typeconv (link)

Last Updated - 2023-12-08T15:12:04Z + 2023-12-15T18:35:41Z Archived @@ -14108,7 +14108,7 @@

Redoc (link)

Stars - 21593 + 21603 Watchers @@ -14116,7 +14116,7 @@

Redoc (link)

Forks - 2261 + 2264 Created @@ -14124,7 +14124,7 @@

Redoc (link)

Last Updated - 2023-12-13T19:13:35Z + 2023-12-16T02:42:22Z Archived @@ -14160,7 +14160,7 @@

utoipa (link)

Stars - 1541 + 1545 Watchers @@ -14176,7 +14176,7 @@

utoipa (link)

Last Updated - 2023-12-13T20:48:37Z + 2023-12-16T02:34:18Z Archived @@ -14212,7 +14212,7 @@

apispec (link)

Stars - 1063 + 1062 Watchers @@ -14228,7 +14228,7 @@

apispec (link)

Last Updated - 2023-12-13T20:39:56Z + 2023-12-15T02:58:17Z Archived @@ -14264,7 +14264,7 @@

ogen (link)

Stars - 861 + 862 Watchers @@ -14272,7 +14272,7 @@

ogen (link)

Forks - 60 + 61 Created @@ -14280,7 +14280,7 @@

ogen (link)

Last Updated - 2023-12-14T00:52:43Z + 2023-12-15T13:44:54Z Archived @@ -14316,7 +14316,7 @@

json-schema-validator (link)

Stars - 711 + 713 Watchers @@ -14332,7 +14332,7 @@

json-schema-validator (link)

Last Updated - 2023-12-13T12:13:56Z + 2023-12-15T02:25:31Z Archived @@ -14368,7 +14368,7 @@

openapi-diff (link)

Stars - 698 + 699 Watchers @@ -14384,7 +14384,7 @@

openapi-diff (link)

Last Updated - 2023-12-12T19:15:42Z + 2023-12-15T03:55:21Z Archived @@ -14480,7 +14480,7 @@

create-openapi-repo (link)

Forks - 117 + 118 Created @@ -14524,7 +14524,7 @@

awesome-openapi3 (link)

Stars - 597 + 598 Watchers @@ -14540,7 +14540,7 @@

awesome-openapi3 (link)

Last Updated - 2023-12-12T08:10:56Z + 2023-12-15T03:45:13Z Archived @@ -14576,7 +14576,7 @@

zod-to-openapi (link)

Stars - 520 + 522 Watchers @@ -14584,7 +14584,7 @@

zod-to-openapi (link)

Forks - 42 + 43 Created @@ -14592,7 +14592,7 @@

zod-to-openapi (link)

Last Updated - 2023-12-13T16:05:42Z + 2023-12-15T15:48:15Z Archived @@ -14680,7 +14680,7 @@

oazapfts (link)

Stars - 424 + 426 Watchers @@ -14696,7 +14696,7 @@

oazapfts (link)

Last Updated - 2023-12-11T15:55:19Z + 2023-12-16T00:17:09Z Archived @@ -14784,7 +14784,7 @@

swagger-autogen (link)

Stars - 384 + 387 Watchers @@ -14792,7 +14792,7 @@

swagger-autogen (link)

Forks - 58 + 59 Created @@ -14800,7 +14800,7 @@

swagger-autogen (link)

Last Updated - 2023-12-12T10:16:40Z + 2023-12-14T16:32:56Z Archived @@ -14836,7 +14836,7 @@

typeconv (link)

Stars - 373 + 374 Watchers @@ -14852,7 +14852,7 @@

typeconv (link)

Last Updated - 2023-12-08T15:12:04Z + 2023-12-15T18:35:41Z Archived @@ -14992,7 +14992,7 @@

openapi-spec-validator (link)

Stars - 290 + 291 Watchers @@ -15008,7 +15008,7 @@

openapi-spec-validator (link)

Last Updated - 2023-12-07T05:37:44Z + 2023-12-15T15:46:12Z Archived @@ -15044,11 +15044,11 @@

openapi-core (link)

Stars - 254 + 255 Watchers - 9 + 10 Forks @@ -15060,7 +15060,7 @@

openapi-core (link)

Last Updated - 2023-12-13T09:22:53Z + 2023-12-15T16:05:26Z Archived @@ -15200,7 +15200,7 @@

validator-badge (link)

Stars - 199 + 200 Watchers @@ -15216,7 +15216,7 @@

validator-badge (link)

Last Updated - 2023-12-06T09:18:27Z + 2023-12-14T12:29:35Z Archived @@ -15528,7 +15528,7 @@

openapi-go (link)

Last Updated - 2023-12-13T07:21:40Z + 2023-12-15T12:12:30Z Archived @@ -15772,7 +15772,7 @@

openapi-starter (link)

Stars - 120 + 121 Watchers @@ -15780,7 +15780,7 @@

openapi-starter (link)

Forks - 88 + 89 Created @@ -15788,7 +15788,7 @@

openapi-starter (link)

Last Updated - 2023-12-06T03:24:56Z + 2023-12-14T23:59:40Z Archived @@ -16092,7 +16092,7 @@

openapi4j (link)

Forks - 36 + 37 Created @@ -16448,7 +16448,7 @@

refitter (link)

Stars - 83 + 84 Watchers @@ -16464,7 +16464,7 @@

refitter (link)

Last Updated - 2023-12-09T12:37:31Z + 2023-12-14T09:00:57Z Archived @@ -17020,7 +17020,7 @@

openapi_first (link)

Stars - 54 + 55 Watchers @@ -17028,7 +17028,7 @@

openapi_first (link)

Forks - 7 + 8 Created @@ -17036,7 +17036,7 @@

openapi_first (link)

Last Updated - 2023-12-05T14:05:32Z + 2023-12-15T08:56:59Z Archived @@ -17748,7 +17748,7 @@

apity (link)

Stars - 33 + 37 Watchers @@ -17764,7 +17764,7 @@

apity (link)

Last Updated - 2023-11-02T13:57:53Z + 2023-12-14T20:31:44Z Archived @@ -17904,7 +17904,7 @@

openapi (link)

Stars - 31 + 32 Watchers @@ -17912,7 +17912,7 @@

openapi (link)

Forks - 60 + 59 Created @@ -17920,7 +17920,7 @@

openapi (link)

Last Updated - 2023-12-09T13:44:33Z + 2023-12-14T12:26:55Z Archived @@ -19004,7 +19004,7 @@

go-oas3 (link)

Forks - 9 + 8 Created @@ -20816,7 +20816,7 @@

httpgenerator (link)

Stars - 10 + 11 Watchers @@ -20824,7 +20824,7 @@

httpgenerator (link)

Forks - 0 + 1 Created @@ -20832,7 +20832,7 @@

httpgenerator (link)

Last Updated - 2023-12-12T08:30:57Z + 2023-12-14T07:27:47Z Archived @@ -22896,11 +22896,11 @@

apibake-js (link)

Stars - 4 + 5 Watchers - 1 + 2 Forks @@ -22912,7 +22912,7 @@

apibake-js (link)

Last Updated - 2023-11-27T11:27:29Z + 2023-12-14T12:10:15Z Archived @@ -28252,7 +28252,7 @@

generate-code (link)

Stars - N/A + 1 Watchers @@ -28268,7 +28268,7 @@

generate-code (link)

Last Updated - 2023-07-28T11:58:10Z + 2023-12-15T04:34:25Z Archived @@ -33972,7 +33972,7 @@

BigstickCarpet/swagger-cli (link)

Stars - 514 + 513 Watchers @@ -33988,7 +33988,7 @@

BigstickCarpet/swagger-cli (link)

Last Updated - 2023-12-07T06:10:41Z + 2023-12-15T02:59:02Z Archived diff --git a/docs/categories/schema-validators.html b/docs/categories/schema-validators.html index 5428ef2e..bf1acf0f 100644 --- a/docs/categories/schema-validators.html +++ b/docs/categories/schema-validators.html @@ -221,7 +221,7 @@

openapi4j (link)

Forks - 36 + 37 Created diff --git a/docs/categories/sdk.html b/docs/categories/sdk.html index bbde9fb7..a1501fd4 100644 --- a/docs/categories/sdk.html +++ b/docs/categories/sdk.html @@ -109,7 +109,7 @@

No Yes Yes - 18451 + 18468 @@ -155,7 +155,7 @@

No Yes Yes - 1044 + 1046 @@ -224,7 +224,7 @@

Yes Yes Yes - 1056 + 1058 @@ -308,7 +308,7 @@

No No Yes - 9027 + 9033 @@ -377,7 +377,7 @@

No Yes Yes - 6217 + 6226 @@ -486,7 +486,7 @@

No Yes Yes - 94 + 95 @@ -532,7 +532,7 @@

No Yes Yes - 11524 + 11531 @@ -624,7 +624,7 @@

Yes Yes No - 21 + 22 @@ -670,7 +670,7 @@

Yes Yes Yes - 3922 + 3938 @@ -758,7 +758,7 @@

Yes Yes Yes - 1996 + 1999 @@ -779,7 +779,7 @@

No Yes No - 3708 + 3710 @@ -800,7 +800,7 @@

No Yes No - 3468 + 3469 @@ -821,7 +821,7 @@

No Yes No - 441 + 442 @@ -842,7 +842,7 @@

No Yes No - 438 + 439 @@ -2926,15 +2926,15 @@

OpenAPI Generator (link)

Stars - 18451 + 18468 Watchers - 214 + 215 Forks - 5844 + 5850 Created @@ -2942,7 +2942,7 @@

OpenAPI Generator (link)

Last Updated - 2023-12-14T02:50:23Z + 2023-12-15T21:06:56Z Archived @@ -2986,7 +2986,7 @@

OpenAPI JSON Schema Generator (link) Forks - 8 + 7 Created @@ -3030,7 +3030,7 @@

Kiota Api Client Generator (link)

Stars - 1044 + 1046 Watchers @@ -3046,7 +3046,7 @@

Kiota Api Client Generator (link)

Last Updated - 2023-12-13T16:58:54Z + 2023-12-15T16:31:45Z Archived @@ -3186,7 +3186,7 @@

Microcks (link)

Stars - 1056 + 1058 Watchers @@ -3194,7 +3194,7 @@

Microcks (link)

Forks - 180 + 179 Created @@ -3202,7 +3202,7 @@

Microcks (link)

Last Updated - 2023-12-13T19:01:56Z + 2023-12-15T08:52:43Z Archived @@ -3394,7 +3394,7 @@

go-swagger (link)

Stars - 9027 + 9033 Watchers @@ -3410,7 +3410,7 @@

go-swagger (link)

Last Updated - 2023-12-13T20:27:08Z + 2023-12-15T02:49:23Z Archived @@ -3550,7 +3550,7 @@

NSwag (link)

Stars - 6217 + 6226 Watchers @@ -3566,7 +3566,7 @@

NSwag (link)

Last Updated - 2023-12-13T07:05:59Z + 2023-12-15T12:53:43Z Archived @@ -3658,11 +3658,11 @@

Azure AutoRest (link)

Watchers - 818 + 819 Forks - 753 + 754 Created @@ -3810,7 +3810,7 @@

Unchase.OpenAPI.Connectedservice (link) Stars - 94 + 95 Watchers @@ -3826,7 +3826,7 @@

Unchase.OpenAPI.Connectedservice (link) Last Updated - 2023-11-24T12:57:57Z + 2023-12-14T07:42:16Z Archived @@ -3914,7 +3914,7 @@

OWASP ZAP (link)

Stars - 11524 + 11531 Watchers @@ -3922,7 +3922,7 @@

OWASP ZAP (link)

Forks - 2170 + 2172 Created @@ -3930,7 +3930,7 @@

OWASP ZAP (link)

Last Updated - 2023-12-14T01:54:04Z + 2023-12-15T18:07:52Z Archived @@ -4122,7 +4122,7 @@

OpenAPI Commander (link)

Stars - 21 + 22 Watchers @@ -4138,7 +4138,7 @@

OpenAPI Commander (link)

Last Updated - 2023-12-13T15:58:51Z + 2023-12-14T07:32:12Z Archived @@ -4226,7 +4226,7 @@

OpenAPI TypeScript (link)

Stars - 3922 + 3938 Watchers @@ -4242,7 +4242,7 @@

OpenAPI TypeScript (link)

Last Updated - 2023-12-13T22:36:26Z + 2023-12-15T18:17:08Z Archived @@ -4434,7 +4434,7 @@

🌿 Fern (link)

Stars - 1996 + 1999 Watchers @@ -4442,7 +4442,7 @@

🌿 Fern (link)

Forks - 84 + 85 Created @@ -4450,7 +4450,7 @@

🌿 Fern (link)

Last Updated - 2023-12-13T14:53:35Z + 2023-12-16T00:24:21Z Archived @@ -4486,7 +4486,7 @@

knife4j (link)

Stars - 3708 + 3710 Watchers @@ -4502,7 +4502,7 @@

knife4j (link)

Last Updated - 2023-12-13T00:59:12Z + 2023-12-15T06:23:09Z Archived @@ -4538,7 +4538,7 @@

openapi-directory (link)

Stars - 3468 + 3469 Watchers @@ -4554,7 +4554,7 @@

openapi-directory (link)

Last Updated - 2023-12-13T23:35:16Z + 2023-12-15T21:07:06Z Archived @@ -4590,7 +4590,7 @@

ghlocalapi (link)

Stars - 441 + 442 Watchers @@ -4606,7 +4606,7 @@

ghlocalapi (link)

Last Updated - 2023-12-13T08:01:34Z + 2023-12-14T15:45:06Z Archived @@ -4642,7 +4642,7 @@

docusaurus-openapi (link)

Stars - 438 + 439 Watchers @@ -4658,7 +4658,7 @@

docusaurus-openapi (link)

Last Updated - 2023-12-07T06:43:07Z + 2023-12-15T00:51:05Z Archived @@ -6314,7 +6314,7 @@

dropwizard-swagger (link)

Forks - 3 + 4 Created diff --git a/docs/categories/security.html b/docs/categories/security.html index 714f092f..dd4ef704 100644 --- a/docs/categories/security.html +++ b/docs/categories/security.html @@ -147,7 +147,7 @@

No Yes No - 486 + 487 @@ -212,7 +212,7 @@

No Yes Yes - 11524 + 11531 @@ -298,7 +298,7 @@

No Yes Yes - 2353 + 2354 @@ -508,7 +508,7 @@

openapi-fuzzer (link)

Stars - 486 + 487 Watchers @@ -524,7 +524,7 @@

openapi-fuzzer (link)

Last Updated - 2023-12-13T21:01:31Z + 2023-12-14T11:58:35Z Archived @@ -664,7 +664,7 @@

OWASP ZAP (link)

Stars - 11524 + 11531 Watchers @@ -672,7 +672,7 @@

OWASP ZAP (link)

Forks - 2170 + 2172 Created @@ -680,7 +680,7 @@

OWASP ZAP (link)

Last Updated - 2023-12-14T01:54:04Z + 2023-12-15T18:07:52Z Archived @@ -872,7 +872,7 @@

RESTler (link)

Stars - 2353 + 2354 Watchers @@ -888,7 +888,7 @@

RESTler (link)

Last Updated - 2023-12-13T13:04:49Z + 2023-12-14T07:47:12Z Archived diff --git a/docs/categories/server-implementations.html b/docs/categories/server-implementations.html index 4878db38..deab2bc0 100644 --- a/docs/categories/server-implementations.html +++ b/docs/categories/server-implementations.html @@ -224,7 +224,7 @@

No Yes Yes - 293 + 294 @@ -247,7 +247,7 @@

Yes Yes Yes - 8456 + 8460 @@ -293,7 +293,7 @@

Yes Yes Yes - 3833 + 3835 @@ -339,7 +339,7 @@

No Yes Yes - 8141 + 8147 @@ -362,7 +362,7 @@

No Yes No - 1619 + 1622 @@ -429,7 +429,7 @@

No Yes No - 486 + 487 @@ -519,7 +519,7 @@

No Yes No - 26793 + 26797 @@ -611,7 +611,7 @@

No Yes No - 65808 + 65897 @@ -632,7 +632,7 @@

No Yes No - 13819 + 13842 @@ -653,7 +653,7 @@

Yes Yes No - 3552 + 3556 @@ -676,7 +676,7 @@

No Yes No - 2925 + 2927 @@ -697,7 +697,7 @@

No Yes No - 2419 + 2425 @@ -741,7 +741,7 @@

No Yes No - 1920 + 1924 @@ -762,7 +762,7 @@

No Yes No - 1482 + 1500 @@ -783,7 +783,7 @@

No Yes No - 1462 + 1465 @@ -806,7 +806,7 @@

No Yes No - 1317 + 1318 @@ -827,7 +827,7 @@

No Yes No - 881 + 884 @@ -848,7 +848,7 @@

No Yes No - 817 + 820 @@ -995,7 +995,7 @@

No Yes No - 284 + 286 @@ -1060,7 +1060,7 @@

Yes Yes No - 287 + 291 @@ -1081,7 +1081,7 @@

No Yes No - 228 + 229 @@ -1102,7 +1102,7 @@

No Yes No - 220 + 221 @@ -1207,7 +1207,7 @@

No Yes No - 172 + 173 @@ -1270,7 +1270,7 @@

No Yes No - 127 + 128 @@ -1312,7 +1312,7 @@

No Yes No - 94 + 97 @@ -1438,7 +1438,7 @@

No Yes No - 57 + 58 @@ -1564,7 +1564,7 @@

No Yes No - 39 + 38 @@ -1795,7 +1795,7 @@

No Yes No - 27 + 28 @@ -2026,7 +2026,7 @@

No Yes No - 18 + 20 @@ -3015,7 +3015,7 @@

No Yes No - 6 + 8 @@ -5745,7 +5745,7 @@

No Yes No - 1 + 2 @@ -9508,7 +9508,7 @@

No No No - 3460 + 3461 @@ -9959,7 +9959,7 @@

No No Yes - 371 + 372 @@ -10325,7 +10325,7 @@

VSCode OpenAPI (link)

Stars - 293 + 294 Watchers @@ -10341,7 +10341,7 @@

VSCode OpenAPI (link)

Last Updated - 2023-12-13T17:16:09Z + 2023-12-15T00:34:17Z Archived @@ -10377,7 +10377,7 @@

Swagger Editor (link)

Stars - 8456 + 8460 Watchers @@ -10385,7 +10385,7 @@

Swagger Editor (link)

Forks - 2217 + 2218 Created @@ -10393,7 +10393,7 @@

Swagger Editor (link)

Last Updated - 2023-12-14T03:17:40Z + 2023-12-15T19:51:43Z Archived @@ -10481,7 +10481,7 @@

Prism (link)

Stars - 3833 + 3835 Watchers @@ -10497,7 +10497,7 @@

Prism (link)

Last Updated - 2023-12-14T02:35:10Z + 2023-12-15T18:37:47Z Archived @@ -10585,7 +10585,7 @@

API Platform (link)

Stars - 8141 + 8147 Watchers @@ -10593,7 +10593,7 @@

API Platform (link)

Forks - 971 + 972 Created @@ -10601,7 +10601,7 @@

API Platform (link)

Last Updated - 2023-12-13T19:47:02Z + 2023-12-15T20:38:46Z Archived @@ -10637,7 +10637,7 @@

Fusio (link)

Stars - 1619 + 1622 Watchers @@ -10653,7 +10653,7 @@

Fusio (link)

Last Updated - 2023-12-12T04:08:22Z + 2023-12-15T12:08:58Z Archived @@ -10793,7 +10793,7 @@

openapi-fuzzer (link)

Stars - 486 + 487 Watchers @@ -10809,7 +10809,7 @@

openapi-fuzzer (link)

Last Updated - 2023-12-13T21:01:31Z + 2023-12-14T11:58:35Z Archived @@ -11001,11 +11001,11 @@

Django REST Framework (link)

Stars - 26793 + 26797 Watchers - 623 + 622 Forks @@ -11017,7 +11017,7 @@

Django REST Framework (link)

Last Updated - 2023-12-13T23:08:37Z + 2023-12-16T02:41:15Z Archived @@ -11209,7 +11209,7 @@

FastAPI (link)

Stars - 65808 + 65897 Watchers @@ -11217,7 +11217,7 @@

FastAPI (link)

Forks - 5559 + 5569 Created @@ -11225,7 +11225,7 @@

FastAPI (link)

Last Updated - 2023-12-14T03:10:02Z + 2023-12-16T03:02:45Z Archived @@ -11261,15 +11261,15 @@

full-stack-fastapi-postgresql (link) Stars - 13819 + 13842 Watchers - 217 + 219 Forks - 2487 + 2488 Created @@ -11277,7 +11277,7 @@

full-stack-fastapi-postgresql (link) Last Updated - 2023-12-14T02:55:27Z + 2023-12-16T02:23:42Z Archived @@ -11313,7 +11313,7 @@

openapi-devtools (link)

Stars - 3552 + 3556 Watchers @@ -11329,7 +11329,7 @@

openapi-devtools (link)

Last Updated - 2023-12-13T17:26:48Z + 2023-12-15T20:21:17Z Archived @@ -11365,7 +11365,7 @@

springdoc-openapi (link)

Stars - 2925 + 2927 Watchers @@ -11373,7 +11373,7 @@

springdoc-openapi (link)

Forks - 434 + 435 Created @@ -11381,7 +11381,7 @@

springdoc-openapi (link)

Last Updated - 2023-12-13T11:09:46Z + 2023-12-14T12:34:37Z Archived @@ -11417,7 +11417,7 @@

uvicorn-gunicorn-fastapi-docker (link)< Stars - 2419 + 2425 Watchers @@ -11425,7 +11425,7 @@

uvicorn-gunicorn-fastapi-docker (link)< Forks - 314 + 313 Created @@ -11433,7 +11433,7 @@

uvicorn-gunicorn-fastapi-docker (link)< Last Updated - 2023-12-14T00:08:51Z + 2023-12-15T16:25:47Z Archived @@ -11477,7 +11477,7 @@

Schemathesis (link)

Forks - 144 + 143 Created @@ -11521,7 +11521,7 @@

drf-spectacular (link)

Stars - 1920 + 1924 Watchers @@ -11537,7 +11537,7 @@

drf-spectacular (link)

Last Updated - 2023-12-13T14:53:11Z + 2023-12-14T07:36:41Z Archived @@ -11573,7 +11573,7 @@

msgspec (link)

Stars - 1482 + 1500 Watchers @@ -11589,7 +11589,7 @@

msgspec (link)

Last Updated - 2023-12-13T14:22:03Z + 2023-12-16T03:19:32Z Archived @@ -11625,7 +11625,7 @@

rapidoc (link)

Stars - 1462 + 1465 Watchers @@ -11641,7 +11641,7 @@

rapidoc (link)

Last Updated - 2023-12-13T10:22:42Z + 2023-12-15T13:51:39Z Archived @@ -11677,7 +11677,7 @@

OpenAPI-gui (link)

Stars - 1317 + 1318 Watchers @@ -11693,7 +11693,7 @@

OpenAPI-gui (link)

Last Updated - 2023-12-10T09:54:33Z + 2023-12-15T21:09:58Z Archived @@ -11729,7 +11729,7 @@

apiflask (link)

Stars - 881 + 884 Watchers @@ -11745,7 +11745,7 @@

apiflask (link)

Last Updated - 2023-12-13T06:29:42Z + 2023-12-15T05:42:20Z Archived @@ -11781,7 +11781,7 @@

typespec (link)

Stars - 817 + 820 Watchers @@ -11789,7 +11789,7 @@

typespec (link)

Forks - 105 + 104 Created @@ -11797,7 +11797,7 @@

typespec (link)

Last Updated - 2023-12-13T20:07:01Z + 2023-12-15T21:41:31Z Archived @@ -12145,7 +12145,7 @@

beacon-apis (link)

Stars - 284 + 286 Watchers @@ -12161,7 +12161,7 @@

beacon-apis (link)

Last Updated - 2023-12-08T14:44:32Z + 2023-12-16T02:47:48Z Archived @@ -12301,7 +12301,7 @@

huma (link)

Stars - 287 + 291 Watchers @@ -12309,7 +12309,7 @@

huma (link)

Forks - 34 + 35 Created @@ -12317,7 +12317,7 @@

huma (link)

Last Updated - 2023-12-13T19:56:03Z + 2023-12-16T00:39:52Z Archived @@ -12353,7 +12353,7 @@

apicat (link)

Stars - 228 + 229 Watchers @@ -12369,7 +12369,7 @@

apicat (link)

Last Updated - 2023-12-05T21:21:52Z + 2023-12-15T15:36:38Z Archived @@ -12405,7 +12405,7 @@

thema (link)

Stars - 220 + 221 Watchers @@ -12421,7 +12421,7 @@

thema (link)

Last Updated - 2023-11-29T17:19:02Z + 2023-12-15T04:47:16Z Archived @@ -12665,7 +12665,7 @@

itty-router-openapi (link)

Stars - 172 + 173 Watchers @@ -12681,7 +12681,7 @@

itty-router-openapi (link)

Last Updated - 2023-12-11T22:07:54Z + 2023-12-15T15:53:16Z Archived @@ -12821,7 +12821,7 @@

flask-openapi3 (link)

Stars - 127 + 128 Watchers @@ -12837,7 +12837,7 @@

flask-openapi3 (link)

Last Updated - 2023-12-12T07:25:34Z + 2023-12-15T11:35:14Z Archived @@ -12925,7 +12925,7 @@

spring-boot-3-jwt-auth (link)

Stars - 94 + 97 Watchers @@ -12933,7 +12933,7 @@

spring-boot-3-jwt-auth (link)

Forks - 25 + 26 Created @@ -12941,7 +12941,7 @@

spring-boot-3-jwt-auth (link)

Last Updated - 2023-12-12T12:16:04Z + 2023-12-16T02:37:43Z Archived @@ -13237,7 +13237,7 @@

tooling (link)

Stars - 57 + 58 Watchers @@ -13245,7 +13245,7 @@

tooling (link)

Forks - 15 + 16 Created @@ -13253,7 +13253,7 @@

tooling (link)

Last Updated - 2023-12-11T17:14:01Z + 2023-12-15T03:44:22Z Archived @@ -13549,7 +13549,7 @@

api-doc-gpt (link)

Stars - 39 + 38 Watchers @@ -13565,7 +13565,7 @@

api-doc-gpt (link)

Last Updated - 2023-11-30T10:53:16Z + 2023-12-15T14:33:58Z Archived @@ -14121,7 +14121,7 @@

openapi-python-generator (link)

Stars - 27 + 28 Watchers @@ -14137,7 +14137,7 @@

openapi-python-generator (link)

Last Updated - 2023-12-01T23:51:03Z + 2023-12-14T16:03:51Z Archived @@ -14693,7 +14693,7 @@

spring-boot-swagger-3-example (link) Stars - 18 + 20 Watchers @@ -14709,7 +14709,7 @@

spring-boot-swagger-3-example (link) Last Updated - 2023-11-17T08:41:41Z + 2023-12-14T13:45:55Z Archived @@ -17137,7 +17137,7 @@

spring-boot-3-security-6-jwt (link)

Stars - 6 + 8 Watchers @@ -17153,7 +17153,7 @@

spring-boot-3-security-6-jwt (link)

Last Updated - 2023-11-28T08:00:25Z + 2023-12-15T22:25:36Z Archived @@ -23897,7 +23897,7 @@

beff (link)

Stars - 1 + 2 Watchers @@ -23913,7 +23913,7 @@

beff (link)

Last Updated - 2023-09-28T03:40:31Z + 2023-12-15T15:36:06Z Archived @@ -33205,7 +33205,7 @@

PHP-CRUD-API (link)

Stars - 3460 + 3461 Watchers @@ -33213,7 +33213,7 @@

PHP-CRUD-API (link)

Forks - 1031 + 1030 Created @@ -33221,7 +33221,7 @@

PHP-CRUD-API (link)

Last Updated - 2023-12-13T22:56:24Z + 2023-12-14T16:19:55Z Archived @@ -33681,7 +33681,7 @@

Connexion (link)

Forks - 738 + 739 Created @@ -33689,7 +33689,7 @@

Connexion (link)

Last Updated - 2023-12-12T17:38:52Z + 2023-12-15T17:48:18Z Archived @@ -34297,7 +34297,7 @@

pyswagger (link)

Stars - 371 + 372 Watchers @@ -34313,7 +34313,7 @@

pyswagger (link)

Last Updated - 2023-11-29T18:52:16Z + 2023-12-14T19:20:24Z Archived diff --git a/docs/categories/server.html b/docs/categories/server.html index 563babdb..9e21e291 100644 --- a/docs/categories/server.html +++ b/docs/categories/server.html @@ -86,7 +86,7 @@

No Yes Yes - 2966 + 2969 @@ -201,7 +201,7 @@

No Yes Yes - 8141 + 8147 @@ -247,7 +247,7 @@

No Yes No - 1619 + 1622 @@ -314,7 +314,7 @@

No Yes No - 1523 + 1524 @@ -405,7 +405,7 @@

No Yes Yes - 5876 + 5877 @@ -516,7 +516,7 @@

No Yes No - 220 + 221 @@ -2200,7 +2200,7 @@

Yes Yes No - 549 + 548 @@ -2705,7 +2705,7 @@

tsoa (link)

Stars - 2966 + 2969 Watchers @@ -2721,7 +2721,7 @@

tsoa (link)

Last Updated - 2023-12-13T20:52:04Z + 2023-12-15T21:02:22Z Archived @@ -2965,7 +2965,7 @@

API Platform (link)

Stars - 8141 + 8147 Watchers @@ -2973,7 +2973,7 @@

API Platform (link)

Forks - 971 + 972 Created @@ -2981,7 +2981,7 @@

API Platform (link)

Last Updated - 2023-12-13T19:47:02Z + 2023-12-15T20:38:46Z Archived @@ -3069,7 +3069,7 @@

Fusio (link)

Stars - 1619 + 1622 Watchers @@ -3085,7 +3085,7 @@

Fusio (link)

Last Updated - 2023-12-12T04:08:22Z + 2023-12-15T12:08:58Z Archived @@ -3225,7 +3225,7 @@

@nestjs/swagger (link)

Stars - 1523 + 1524 Watchers @@ -3233,7 +3233,7 @@

@nestjs/swagger (link)

Forks - 410 + 409 Created @@ -3241,7 +3241,7 @@

@nestjs/swagger (link)

Last Updated - 2023-12-12T13:51:42Z + 2023-12-15T12:15:34Z Archived @@ -3433,7 +3433,7 @@

SpringFox (link)

Stars - 5876 + 5877 Watchers @@ -3449,7 +3449,7 @@

SpringFox (link)

Last Updated - 2023-12-13T07:14:01Z + 2023-12-14T19:43:56Z Archived @@ -3693,7 +3693,7 @@

thema (link)

Stars - 220 + 221 Watchers @@ -3709,7 +3709,7 @@

thema (link)

Last Updated - 2023-11-29T17:19:02Z + 2023-12-15T04:47:16Z Archived @@ -5625,7 +5625,7 @@

jrest (link)

Forks - 3 + 2 Created @@ -7853,7 +7853,7 @@

openapi-backend (link)

Stars - 549 + 548 Watchers @@ -7869,7 +7869,7 @@

openapi-backend (link)

Last Updated - 2023-12-12T23:42:47Z + 2023-12-15T21:06:38Z Archived @@ -8805,7 +8805,7 @@

LoopBack 4 (link)

Last Updated - 2023-12-13T04:59:37Z + 2023-12-15T15:13:08Z Archived diff --git a/docs/categories/testing-tools.html b/docs/categories/testing-tools.html index 13fb00e3..c4925717 100644 --- a/docs/categories/testing-tools.html +++ b/docs/categories/testing-tools.html @@ -86,7 +86,7 @@

Yes Yes Yes - 37 + 38 @@ -186,7 +186,7 @@

wiretap (link)

Stars - 37 + 38 Watchers @@ -202,7 +202,7 @@

wiretap (link)

Last Updated - 2023-12-11T05:56:05Z + 2023-12-15T04:09:36Z Archived @@ -246,7 +246,7 @@

Schemathesis (link)

Forks - 144 + 143 Created diff --git a/docs/categories/testing.html b/docs/categories/testing.html index 5e4ccd68..1e07ef42 100644 --- a/docs/categories/testing.html +++ b/docs/categories/testing.html @@ -105,7 +105,7 @@

No Yes Yes - 4088 + 4090 @@ -149,7 +149,7 @@

No Yes No - 590 + 591 @@ -172,7 +172,7 @@

No Yes No - 1392 + 1393 @@ -336,7 +336,7 @@

No Yes Yes - 386 + 387 @@ -622,7 +622,7 @@

No Yes No - 164 + 167 @@ -645,7 +645,7 @@

Yes Yes Yes - 78 + 79 @@ -691,7 +691,7 @@

Yes Yes Yes - 268 + 270 @@ -714,7 +714,7 @@

Yes Yes Yes - 37 + 38 @@ -735,7 +735,7 @@

No Yes No - 5559 + 5562 @@ -777,7 +777,7 @@

No Yes No - 363 + 364 @@ -2532,7 +2532,7 @@

No Yes Yes - 2353 + 2354 @@ -2678,7 +2678,7 @@

Dredd (link)

Stars - 4088 + 4090 Watchers @@ -2694,7 +2694,7 @@

Dredd (link)

Last Updated - 2023-12-14T00:33:10Z + 2023-12-15T19:08:17Z Archived @@ -2782,7 +2782,7 @@

portman (link)

Stars - 590 + 591 Watchers @@ -2798,7 +2798,7 @@

portman (link)

Last Updated - 2023-12-13T04:58:06Z + 2023-12-14T08:23:07Z Archived @@ -2834,7 +2834,7 @@

Step CI (link)

Stars - 1392 + 1393 Watchers @@ -2850,7 +2850,7 @@

Step CI (link)

Last Updated - 2023-12-13T04:58:24Z + 2023-12-14T21:13:18Z Archived @@ -3250,7 +3250,7 @@

EvoMaster (link)

Stars - 386 + 387 Watchers @@ -3266,7 +3266,7 @@

EvoMaster (link)

Last Updated - 2023-12-13T15:01:52Z + 2023-12-15T15:29:27Z Archived @@ -3926,7 +3926,7 @@

Specmatic (link)

Stars - 164 + 167 Watchers @@ -3942,7 +3942,7 @@

Specmatic (link)

Last Updated - 2023-12-13T06:54:10Z + 2023-12-15T19:08:01Z Archived @@ -3978,7 +3978,7 @@

openapi-changes (link)

Stars - 78 + 79 Watchers @@ -3994,7 +3994,7 @@

openapi-changes (link)

Last Updated - 2023-12-10T23:51:32Z + 2023-12-14T16:39:14Z Archived @@ -4082,7 +4082,7 @@

kubb (link)

Stars - 268 + 270 Watchers @@ -4098,7 +4098,7 @@

kubb (link)

Last Updated - 2023-12-13T20:18:13Z + 2023-12-15T11:35:53Z Archived @@ -4134,7 +4134,7 @@

wiretap (link)

Stars - 37 + 38 Watchers @@ -4150,7 +4150,7 @@

wiretap (link)

Last Updated - 2023-12-11T05:56:05Z + 2023-12-15T04:09:36Z Archived @@ -4186,7 +4186,7 @@

mockoon (link)

Stars - 5559 + 5562 Watchers @@ -4202,7 +4202,7 @@

mockoon (link)

Last Updated - 2023-12-13T23:59:44Z + 2023-12-16T02:36:13Z Archived @@ -4290,7 +4290,7 @@

openapi-codegen (link)

Stars - 363 + 364 Watchers @@ -4306,7 +4306,7 @@

openapi-codegen (link)

Last Updated - 2023-12-13T03:06:43Z + 2023-12-14T11:05:52Z Archived @@ -8606,7 +8606,7 @@

RESTler (link)

Stars - 2353 + 2354 Watchers @@ -8622,7 +8622,7 @@

RESTler (link)

Last Updated - 2023-12-13T13:04:49Z + 2023-12-14T07:47:12Z Archived diff --git a/docs/categories/text-editors.html b/docs/categories/text-editors.html index 1dd38382..4763d474 100644 --- a/docs/categories/text-editors.html +++ b/docs/categories/text-editors.html @@ -86,7 +86,7 @@

No Yes Yes - 293 + 294 @@ -170,7 +170,7 @@

Yes Yes Yes - 8456 + 8460 @@ -372,7 +372,7 @@

VSCode OpenAPI (link)

Stars - 293 + 294 Watchers @@ -388,7 +388,7 @@

VSCode OpenAPI (link)

Last Updated - 2023-12-13T17:16:09Z + 2023-12-15T00:34:17Z Archived @@ -580,7 +580,7 @@

Swagger Editor (link)

Stars - 8456 + 8460 Watchers @@ -588,7 +588,7 @@

Swagger Editor (link)

Forks - 2217 + 2218 Created @@ -596,7 +596,7 @@

Swagger Editor (link)

Last Updated - 2023-12-14T03:17:40Z + 2023-12-15T19:51:43Z Archived diff --git a/docs/categories/unclassified.html b/docs/categories/unclassified.html index 34053f0e..f25b045f 100644 --- a/docs/categories/unclassified.html +++ b/docs/categories/unclassified.html @@ -86,7 +86,7 @@

Yes Yes Yes - 220 + 222 @@ -147,7 +147,7 @@

No Yes No - 214 + 213 @@ -1203,7 +1203,7 @@

oas (link)

Stars - 220 + 222 Watchers @@ -1219,7 +1219,7 @@

oas (link)

Last Updated - 2023-12-12T23:05:15Z + 2023-12-15T04:11:46Z Archived @@ -1323,7 +1323,7 @@

modelina (link)

Last Updated - 2023-12-13T19:10:37Z + 2023-12-14T23:23:53Z Archived @@ -1359,7 +1359,7 @@

prance (link)

Stars - 214 + 213 Watchers @@ -1375,7 +1375,7 @@

prance (link)

Last Updated - 2023-12-04T14:29:38Z + 2023-12-15T02:49:34Z Archived diff --git a/docs/categories/user-interfaces.html b/docs/categories/user-interfaces.html index b6bf5a23..f5b99686 100644 --- a/docs/categories/user-interfaces.html +++ b/docs/categories/user-interfaces.html @@ -86,7 +86,7 @@

Yes Yes No - 24879 + 24891 @@ -109,7 +109,7 @@

Yes Yes No - 21593 + 21603 @@ -291,7 +291,7 @@

swagger-ui (link)

Stars - 24879 + 24891 Watchers @@ -299,7 +299,7 @@

swagger-ui (link)

Forks - 8842 + 8844 Created @@ -307,7 +307,7 @@

swagger-ui (link)

Last Updated - 2023-12-14T01:20:27Z + 2023-12-16T02:34:51Z Archived @@ -343,7 +343,7 @@

Redoc (link)

Stars - 21593 + 21603 Watchers @@ -351,7 +351,7 @@

Redoc (link)

Forks - 2261 + 2264 Created @@ -359,7 +359,7 @@

Redoc (link)

Last Updated - 2023-12-13T19:13:35Z + 2023-12-16T02:42:22Z Archived diff --git a/src/_data/tools.yaml b/src/_data/tools.yaml index f813b399..b8975e30 100644 --- a/src/_data/tools.yaml +++ b/src/_data/tools.yaml @@ -11,17 +11,17 @@ repositoryId: 337689065 description: OpenAPI Diff and Breaking Changes created: '2021-02-10T10:28:36Z' - updated: '2023-12-13T21:22:25Z' + updated: '2023-12-16T00:49:19Z' language: Go archived: false - stars: 478 + stars: 481 watchers: 10 forks: 44 owner: Tufin logo: https://avatars.githubusercontent.com/u/5352131?v=4 license: Apache-2.0 - repoEtag: '"9a3160f2e6745140371455becd67e52e8ef79baa9863dfb67d4f9aaabf099fc5"' - repoLastModified: Wed, 13 Dec 2023 21:22:25 GMT + repoEtag: '"dcf8d9a363e65c3099953b5e326c4bb5f58aeea500a5f1a458c5de77312b3c6e"' + repoLastModified: Sat, 16 Dec 2023 00:49:19 GMT foundInMaster: true name: oasdiff language: Go @@ -52,17 +52,17 @@ repositoryId: 679280065 description: Beautiful API references from Swagger/OpenAPI files ✨ created: '2023-08-16T13:42:32Z' - updated: '2023-12-13T17:43:08Z' + updated: '2023-12-16T03:00:28Z' language: Vue archived: false - stars: 1479 - watchers: 7 - forks: 20 + stars: 1589 + watchers: 8 + forks: 22 owner: scalar logo: https://avatars.githubusercontent.com/u/301879?v=4 license: MIT - repoEtag: '"7195114aa497a0606ed948e7bedb0473cf520b161fba3872133d19657adc0f4f"' - repoLastModified: Wed, 13 Dec 2023 17:43:08 GMT + repoEtag: '"5cb63af356b09734af0243c584e13106b83f37a5f6e9358419f23cecda9acfd8"' + repoLastModified: Sat, 16 Dec 2023 03:00:28 GMT foundInMaster: true - source: - https://openapi.tools/ @@ -109,7 +109,7 @@ owner: opticdev logo: https://avatars.githubusercontent.com/u/34556970?v=4 license: MIT - repoEtag: '"bd351e1d1ed731ef1f749af4de29475f67cdeb579b758293c18e4b0e42375578"' + repoEtag: '"7880d5d35a957971bf8ada0ae85300b5aa8ff72dbbf5fff51333a1fb8e2914c1"' repoLastModified: Wed, 13 Dec 2023 14:08:20 GMT foundInMaster: true id: 8c3d08406ca659662808d51ddc10b4e4 @@ -245,7 +245,7 @@ owner: oasis-tcs logo: https://avatars.githubusercontent.com/u/20116735?v=4 license: NOASSERTION - repoEtag: '"2a4a693130ab71c43e32fafc06b05084a8f6225a8d3be150e55b94351a29111f"' + repoEtag: '"26ea5f9d7ee1c4a653403b387bbebf5002f4ed6d46adf47545f7f5293234e0a3"' repoLastModified: Mon, 11 Dec 2023 09:12:57 GMT foundInMaster: true v3_1: true @@ -282,17 +282,17 @@ Filter internal paths, operations, parameters, schemas etc from OpenAPI/Swagger/AsyncAPI definitions created: '2017-08-02T13:42:57Z' - updated: '2023-12-10T11:26:22Z' + updated: '2023-12-14T12:16:46Z' language: JavaScript archived: false - stars: 143 + stars: 144 watchers: 5 forks: 30 owner: Mermade logo: https://avatars.githubusercontent.com/u/15950345?v=4 license: BSD-3-Clause - repoEtag: '"059b055f9f647d516cf8644f972bca5f9233a666028b1669742184e116ce6858"' - repoLastModified: Sun, 10 Dec 2023 11:26:22 GMT + repoEtag: '"e90fda04ddbdc1d6686b3fe2b678313169118cddb207dca0876d9ac69fe05cec"' + repoLastModified: Thu, 14 Dec 2023 12:16:46 GMT foundInMaster: true id: c00a8a003ace3ce47f5740bb641667fb v3_1: true @@ -374,17 +374,17 @@ Convert API descriptions between popular formats such as OpenAPI(fka Swagger), RAML, API Blueprint, WADL, etc. created: '2015-05-05T18:30:05Z' - updated: '2023-12-13T19:31:59Z' + updated: '2023-12-15T06:24:32Z' language: JavaScript archived: false - stars: 1051 + stars: 1052 watchers: 21 forks: 172 owner: LucyBot-Inc logo: https://avatars.githubusercontent.com/u/26313641?v=4 license: MIT - repoEtag: '"1ee7df812bfa0eb0ef35edfc3d6f27feef72b1defe8edd7cd7c388734b1ebefe"' - repoLastModified: Wed, 13 Dec 2023 19:31:59 GMT + repoEtag: '"1949a75730c89ce89d430eb14f4f747529baf239bc181063dd415e12e00a7448"' + repoLastModified: Fri, 15 Dec 2023 06:24:32 GMT foundInMaster: true id: dccbe92257187d6d136bb4b5f304d6fe - source: https://openapi.tools/ @@ -577,17 +577,17 @@ repositoryId: 45250726 description: 📘 OpenAPI/Swagger-generated API Reference Documentation created: '2015-10-30T12:53:02Z' - updated: '2023-12-13T19:13:35Z' + updated: '2023-12-16T02:42:22Z' language: TypeScript archived: false - stars: 21593 + stars: 21603 watchers: 288 - forks: 2261 + forks: 2264 owner: Redocly logo: https://avatars.githubusercontent.com/u/32099856?v=4 license: MIT - repoEtag: '"beb2115e85425fcdd6101918ae2da374992c0b6717a3d46ab53dc5faaa7dfd03"' - repoLastModified: Wed, 13 Dec 2023 19:13:35 GMT + repoEtag: '"53b8e7281d6efd2692fd460d4ba461744cf3f854a4359ad9c35c065a084212e4"' + repoLastModified: Sat, 16 Dec 2023 02:42:22 GMT foundInMaster: true - source: https://openapi.tools/ name: oas3-api-snippet-enricher @@ -643,17 +643,17 @@ OpenAPI / Swagger, AsyncAPI & Semoasa definitions to (re)Slate compatible markdown created: '2016-10-05T23:09:13Z' - updated: '2023-12-13T12:07:25Z' + updated: '2023-12-14T13:09:47Z' language: JavaScript archived: false - stars: 1402 + stars: 1404 watchers: 16 forks: 317 owner: Mermade logo: https://avatars.githubusercontent.com/u/15950345?v=4 license: MIT - repoEtag: '"62268baa55425051bda734e7530b8fde9143789d9ec5e788bd98b69a0ae38801"' - repoLastModified: Wed, 13 Dec 2023 12:07:25 GMT + repoEtag: '"170f747cfd7e822645e30c01a522dbb90e6e4c5677ab7fc483a3110411c09578"' + repoLastModified: Thu, 14 Dec 2023 13:09:47 GMT foundInMaster: true homepage: https://github.com/Mermade/widdershins id: ab4fb414065011325683c7b582a9e582 @@ -825,17 +825,17 @@ repositoryId: 173009358 description: Generate Go client and server boilerplate from OpenAPI 3 specifications created: '2019-02-27T23:59:59Z' - updated: '2023-12-13T13:50:16Z' + updated: '2023-12-15T20:34:59Z' language: Go archived: false - stars: 4592 + stars: 4602 watchers: 32 - forks: 761 + forks: 764 owner: deepmap logo: https://avatars.githubusercontent.com/u/47459865?v=4 license: Apache-2.0 - repoEtag: '"3fc1a0b9582d2ae52b609d52dea0d2ae1447403cfb3cf1b98d6517d408ca3e1a"' - repoLastModified: Wed, 13 Dec 2023 13:50:16 GMT + repoEtag: '"7a424ce72b51e4c5bd1ea6e25bfe4107c8173c29a1ddfa5acdb812608eb092e2"' + repoLastModified: Fri, 15 Dec 2023 20:34:59 GMT foundInMaster: true id: bc996e9362e78defa2eca82e5765d2f3 - source: https://openapi.tools/ @@ -902,17 +902,17 @@ generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3) created: '2018-05-12T09:57:56Z' - updated: '2023-12-14T02:50:23Z' + updated: '2023-12-15T21:06:56Z' language: Java archived: false - stars: 18451 - watchers: 214 - forks: 5844 + stars: 18468 + watchers: 215 + forks: 5850 owner: OpenAPITools logo: https://avatars.githubusercontent.com/u/37325267?v=4 license: Apache-2.0 - repoEtag: '"b7f26b9208fec36b111a91e40b2a07d45dd549d56ef5dbfa479539c7222a93e3"' - repoLastModified: Thu, 14 Dec 2023 02:50:23 GMT + repoEtag: '"0b5b73b831c3a5f68426b8f5008670e1d7a69296eb2a34dabcb80ff2dd7bfee7"' + repoLastModified: Fri, 15 Dec 2023 21:06:56 GMT foundInMaster: true id: 0418f8afcd0196c648d1a46c0c5c20d1 v3_1_link: https://github.com/OpenAPITools/openapi-generator/issues/9083 @@ -936,11 +936,11 @@ archived: false stars: 83 watchers: 3 - forks: 8 + forks: 7 owner: openapi-json-schema-tools logo: https://avatars.githubusercontent.com/u/114849992?v=4 license: Apache-2.0 - repoEtag: '"bdd832fe8dd8b7ad78cea3febeee444ecaea34911b6d52cb987f7f346c440e8b"' + repoEtag: '"c0688a6ba21acf997d1d5125b398386381e9ee63d6e2645557166dfd16768edb"' repoLastModified: Sat, 09 Dec 2023 07:29:57 GMT category: - Code Generators @@ -983,17 +983,17 @@ repositoryId: 323665366 description: OpenAPI based HTTP Client code generator created: '2020-12-22T15:35:49Z' - updated: '2023-12-13T16:58:54Z' + updated: '2023-12-15T16:31:45Z' language: C# archived: false - stars: 1044 + stars: 1046 watchers: 33 forks: 111 owner: microsoft logo: https://avatars.githubusercontent.com/u/6154722?v=4 license: MIT - repoEtag: '"c49141b7d60e4a04a547378412344df8dfd5032964060079323cce7220d5e73f"' - repoLastModified: Wed, 13 Dec 2023 16:58:54 GMT + repoEtag: '"2fd6923e2b8012e9d62e9d130656e6e9f7130e7b1b8a8ab0f4b5f436c497e728"' + repoLastModified: Fri, 15 Dec 2023 16:31:45 GMT foundInMaster: true - source: https://openapi.tools/ name: FabriKt @@ -1145,17 +1145,17 @@ repositoryId: 190430086 description: VisualStudio Code OpenAPI tools created: '2019-06-05T16:27:53Z' - updated: '2023-12-13T17:16:09Z' + updated: '2023-12-15T00:34:17Z' language: TypeScript archived: false - stars: 293 + stars: 294 watchers: 9 forks: 42 owner: 42Crunch logo: https://avatars.githubusercontent.com/u/25365245?v=4 license: AGPL-3.0 - repoEtag: '"6d58b7f91579f9ed6f5aa32d09aa9b5060f2585f297314c66aae9bc633eae847"' - repoLastModified: Wed, 13 Dec 2023 17:16:09 GMT + repoEtag: '"8ffc688e4268ab1410a4db35acf237e690eca3fc63a03b625178b9d693b01a9c"' + repoLastModified: Fri, 15 Dec 2023 00:34:17 GMT foundInMaster: true id: 782ecbb10f1ff8ac9685e0ed24e52e58 - source: @@ -1245,17 +1245,17 @@ repositoryId: 19390712 description: Swagger Editor created: '2014-05-02T22:47:10Z' - updated: '2023-12-14T03:17:40Z' + updated: '2023-12-15T19:51:43Z' language: JavaScript archived: false - stars: 8456 + stars: 8460 watchers: 258 - forks: 2217 + forks: 2218 owner: swagger-api logo: https://avatars.githubusercontent.com/u/7658037?v=4 license: Apache-2.0 - repoEtag: '"ca4b3291d830476b60232d15eff4fd37efa26424aa2fd9da68129ce6220eb5da"' - repoLastModified: Thu, 14 Dec 2023 03:17:40 GMT + repoEtag: '"7fe982602651d7c88ce91be7a7b356550a90510a28754b89d102c21b6cfb6b3c"' + repoLastModified: Fri, 15 Dec 2023 19:51:43 GMT foundInMaster: true id: 951cf61d12c812ef9b201ad76b5d278d v3_1: true @@ -1466,7 +1466,7 @@ owner: Apicurio logo: https://avatars.githubusercontent.com/u/28107283?v=4 license: Apache-2.0 - repoEtag: '"6d87b371f553a461f81fa9a89a6e72be2177fdd6f7ab5bbac020f1477370d223"' + repoEtag: '"82c1aeb46e39ad2618393e00eaf7390596a00b18cb0612a60fdfcdcb209fac39"' repoLastModified: Tue, 12 Dec 2023 21:41:37 GMT foundInMaster: true homepage: https://github.com/Apicurio/apicurio-studio @@ -1685,17 +1685,17 @@ Turn any OpenAPI2/3 and Postman Collection file into an API server with mocking, transformations and validations. created: '2016-03-18T03:52:09Z' - updated: '2023-12-14T02:35:10Z' + updated: '2023-12-15T18:37:47Z' language: TypeScript archived: false - stars: 3833 + stars: 3835 watchers: 55 forks: 318 owner: stoplightio logo: https://avatars.githubusercontent.com/u/10767217?v=4 license: Apache-2.0 - repoEtag: '"679df083b5f317495d4f3972271cddb7c2a11cc8daf2ee2201974f19f6ec5877"' - repoLastModified: Thu, 14 Dec 2023 02:35:10 GMT + repoEtag: '"17b42074cfbe17cfbee0ebfb242d0afebab60e6f31419f726ed523942f26959f"' + repoLastModified: Fri, 15 Dec 2023 18:37:47 GMT foundInMaster: true id: 15aad8cd322242e03733b07f2a37890a - source: https://openapi.tools/ @@ -1763,17 +1763,17 @@ Kubernetes native tool for mocking and testing API and micro-services. Microcks is a Cloud Native Computing Foundation sandbox project 🚀 created: '2015-02-23T15:46:09Z' - updated: '2023-12-13T19:01:56Z' + updated: '2023-12-15T08:52:43Z' language: Java archived: false - stars: 1056 + stars: 1058 watchers: 24 - forks: 180 + forks: 179 owner: microcks logo: https://avatars.githubusercontent.com/u/11051048?v=4 license: Apache-2.0 - repoEtag: '"6996c24504079b004a1a8538cfbe1e099b5b30c7d83d8e3316769dab384d1ed7"' - repoLastModified: Wed, 13 Dec 2023 19:01:56 GMT + repoEtag: '"d4371bba607cd60f647a94934e61d8e6231361a248c502b08658c783a7cc6816"' + repoLastModified: Fri, 15 Dec 2023 08:52:43 GMT foundInMaster: true id: 1c0e918b5a733b0f1726199e3ea101d6 - source: @@ -1970,17 +1970,17 @@ repositoryId: 61366800 description: Build OpenAPI-compliant REST APIs using TypeScript and Node created: '2016-06-17T10:42:50Z' - updated: '2023-12-13T20:52:04Z' + updated: '2023-12-15T21:02:22Z' language: TypeScript archived: false - stars: 2966 + stars: 2969 watchers: 24 forks: 456 owner: lukeautry logo: https://avatars.githubusercontent.com/u/8770560?v=4 license: MIT - repoEtag: '"9dda1345db5b312499c531e17cbb5d868b1f0127fe1cc896a57acd8c3eda9702"' - repoLastModified: Wed, 13 Dec 2023 20:52:04 GMT + repoEtag: '"38606412a9f2b8b53b1d9ffa6d0639b4166c1e5ab3a82a2b578d43918ca8d5a4"' + repoLastModified: Fri, 15 Dec 2023 21:02:22 GMT foundInMaster: true id: 2529db76d3d9f042b0c624f65b13fc41 - source: https://openapi.tools/ @@ -2055,7 +2055,7 @@ owner: kogosoftwarellc logo: https://avatars.githubusercontent.com/u/15419153?v=4 license: MIT - repoEtag: '"2f69efabe38590cf6067bf4a230ca37cc42085dc05543e8f07c16d8a1563c490"' + repoEtag: '"27be3929d29dd6d5d3d251d094eeb32ef0bd96edbd398007548c83340f0b8474"' repoLastModified: Mon, 11 Dec 2023 09:53:34 GMT foundInMaster: true - source: https://openapi.tools/ @@ -2151,17 +2151,17 @@ Create REST and GraphQL APIs, scaffold Jamstack webapps, stream changes in real-time. created: '2015-03-06T21:46:05Z' - updated: '2023-12-13T19:47:02Z' + updated: '2023-12-15T20:38:46Z' language: TypeScript archived: false - stars: 8141 + stars: 8147 watchers: 220 - forks: 971 + forks: 972 owner: api-platform logo: https://avatars.githubusercontent.com/u/13420081?v=4 license: MIT - repoEtag: '"2a84bb021fda33197a27e035c6f0e6810b7586d1fa419b940d1ef7846b2fc87d"' - repoLastModified: Wed, 13 Dec 2023 19:47:02 GMT + repoEtag: '"054d9890b142553667715d9344de76d4b948b4a63e2f4e71a130ce64d4f1f33b"' + repoLastModified: Fri, 15 Dec 2023 20:38:46 GMT foundInMaster: true id: d14f5904300aabf1ceef4660a6b3d57e - source: https://openapi.tools/ @@ -2217,17 +2217,17 @@ repositoryId: 39904377 description: Open source API management platform created: '2015-07-29T16:34:52Z' - updated: '2023-12-12T04:08:22Z' + updated: '2023-12-15T12:08:58Z' language: PHP archived: false - stars: 1619 + stars: 1622 watchers: 59 forks: 206 owner: apioo logo: https://avatars.githubusercontent.com/u/18172950?v=4 license: Apache-2.0 - repoEtag: '"eecc633c7f3e5dc0ec3266726c3a3a8c910e1e6828053eb42931655ac7446169"' - repoLastModified: Tue, 12 Dec 2023 04:08:22 GMT + repoEtag: '"ffb32d4f6f94efa8cc88f3dc330171386fdd0f8cc93be2f137cc7908cac956c1"' + repoLastModified: Fri, 15 Dec 2023 12:08:58 GMT foundInMaster: true id: 5458da680012a142d20e79ac150bc4ab - source: @@ -2262,7 +2262,7 @@ owner: cebe logo: https://avatars.githubusercontent.com/u/189796?v=4 license: MIT - repoEtag: '"6cdf811f59ebe78398a5aaf8dd236ae9969df5a1c6c46816c56a1de3184a5066"' + repoEtag: '"a7530f39b34a95471e094521ade4f1da619e8c6dfa85e14963d7759eefe50b6b"' repoLastModified: Fri, 24 Nov 2023 07:27:34 GMT foundInMaster: true id: 5322c24f76d68d0a28e6ca718223572e @@ -2319,17 +2319,17 @@ repositoryId: 105440153 description: 'OpenAPI (Swagger) module for Nest framework (node.js) :earth_americas:' created: '2017-10-01T12:20:24Z' - updated: '2023-12-12T13:51:42Z' + updated: '2023-12-15T12:15:34Z' language: TypeScript archived: false - stars: 1523 + stars: 1524 watchers: 30 - forks: 410 + forks: 409 owner: nestjs logo: https://avatars.githubusercontent.com/u/28507035?v=4 license: MIT - repoEtag: '"b52f4c2ee63a93ad26ea1f73baeb30fcfd4d329047f980d4afd149f1748791c5"' - repoLastModified: Tue, 12 Dec 2023 13:51:42 GMT + repoEtag: '"c36bd4e40af4e417176840738225540273c3033de183e19899f1f81e28dd9e15"' + repoLastModified: Fri, 15 Dec 2023 12:15:34 GMT foundInMaster: true id: 7071babd9853fc901c5decfa9b465b67 - source: @@ -2392,17 +2392,17 @@ repositoryId: 12590052 description: Language-agnostic HTTP API Testing Tool created: '2013-09-04T12:21:35Z' - updated: '2023-12-14T00:33:10Z' + updated: '2023-12-15T19:08:17Z' language: JavaScript archived: false - stars: 4088 + stars: 4090 watchers: 75 forks: 306 owner: apiaryio logo: https://avatars.githubusercontent.com/u/765943?v=4 license: MIT - repoEtag: '"c1d583ef8f68c33039280d931dcb81327597c930e1ed8576335bcba2e2848ce4"' - repoLastModified: Thu, 14 Dec 2023 00:33:10 GMT + repoEtag: '"05df508076161f87d404ac4b802e32f397b3f0ee8543dae96ee43fd475649186"' + repoLastModified: Fri, 15 Dec 2023 19:08:17 GMT foundInMaster: true id: bb2e4b0879fce0d8706dcebfd2c10a4c - source: @@ -2472,7 +2472,7 @@ owner: lyra logo: https://avatars.githubusercontent.com/u/572508?v=4 license: Apache-2.0 - repoEtag: '"acd045d11e05ebf0cda50ef6f43b8ee44fa72c05736cbab601dd9ba911704cba"' + repoEtag: '"30d648ba5ce219b9d067ce090e6f9adcabd3554efc1d02559b8f6027b9abd947"' repoLastModified: Fri, 08 Dec 2023 22:14:41 GMT foundInMaster: true id: 921cd13437e80edc1d65f659e39df975 @@ -2499,17 +2499,17 @@ Port OpenAPI Specs to Postman Collections, inject test suite and run via Newman 👨🏽‍🚀 created: '2021-05-05T10:42:29Z' - updated: '2023-12-13T04:58:06Z' + updated: '2023-12-14T08:23:07Z' language: TypeScript archived: false - stars: 590 + stars: 591 watchers: 11 forks: 56 owner: apideck-libraries logo: https://avatars.githubusercontent.com/u/73573473?v=4 license: Apache-2.0 - repoEtag: '"af477af9368e76a0d9f2fab5679f5d48b3369890870ef8db922ae449328ff36c"' - repoLastModified: Wed, 13 Dec 2023 04:58:06 GMT + repoEtag: '"6c2e68d4fdd3d1a7358c93a02a368cd8ee810eb04a93ec2abff967d70c7c6d39"' + repoLastModified: Thu, 14 Dec 2023 08:23:07 GMT foundInMaster: true id: a03cdb329f630a946a946dfe26802c43 - source: https://openapi.tools/ @@ -2537,17 +2537,17 @@ repositoryId: 537500924 description: Automated API Testing and Quality Assurance created: '2022-09-16T14:48:21Z' - updated: '2023-12-13T04:58:24Z' + updated: '2023-12-14T21:13:18Z' language: TypeScript archived: false - stars: 1392 + stars: 1393 watchers: 13 forks: 54 owner: stepci logo: https://avatars.githubusercontent.com/u/61350067?v=4 license: MPL-2.0 - repoEtag: '"d74ef9801af3cc0e010598254b30d4c9849e8c0f0fd0b2eb44ee0d9ea05c17cc"' - repoLastModified: Wed, 13 Dec 2023 04:58:24 GMT + repoEtag: '"fc1dfb073dc7efdc5692512aeeb8b0cf536b091dc7580b0a476f4f4e92f18ff4"' + repoLastModified: Thu, 14 Dec 2023 21:13:18 GMT foundInMaster: true - source: - https://openapi.tools/ @@ -2617,17 +2617,17 @@ baked in support for OpenAPI v3.1, v3.0, and v2.0 as well as AsyncAPI v2.x. created: '2018-08-15T18:43:18Z' - updated: '2023-12-13T15:38:53Z' + updated: '2023-12-15T12:52:33Z' language: TypeScript archived: false - stars: 2114 + stars: 2117 watchers: 32 - forks: 204 + forks: 205 owner: stoplightio logo: https://avatars.githubusercontent.com/u/10767217?v=4 license: Apache-2.0 - repoEtag: '"e9e3d6ae343c9ca5eb757f0e602d5f7ea2e565e2ce77708a1e0d969f43c57170"' - repoLastModified: Wed, 13 Dec 2023 15:38:53 GMT + repoEtag: '"04d666529fbb9c8cfcc8682d8c8e50fe73c5028faba90535b65e0d36e30d7027"' + repoLastModified: Fri, 15 Dec 2023 12:52:33 GMT foundInMaster: true id: fab3cc58898cd8953a30e43cc622e0fe - source: https://openapi.tools/ @@ -2712,17 +2712,17 @@ ⚒️ Redocly CLI makes OpenAPI easy. Lint/validate to any standard, generate beautiful docs, and more. created: '2019-09-10T14:56:25Z' - updated: '2023-12-13T20:22:22Z' + updated: '2023-12-15T16:51:37Z' language: TypeScript archived: false - stars: 708 + stars: 711 watchers: 26 - forks: 108 + forks: 109 owner: Redocly logo: https://avatars.githubusercontent.com/u/32099856?v=4 license: MIT - repoEtag: '"494d27b66f83840faadacff93b841b87e10084b32e997d0d878b6815fe1595c6"' - repoLastModified: Wed, 13 Dec 2023 20:22:22 GMT + repoEtag: '"528b18b74f700f97daa8f1a615f708e39f549f258c42487807e8ee70f221f508"' + repoLastModified: Fri, 15 Dec 2023 16:51:37 GMT category: - Description Validators - Documentation @@ -2934,17 +2934,17 @@ repositoryId: 25453221 description: Swagger 2.0 and OpenAPI 3.0 parser/validator created: '2014-10-20T06:14:51Z' - updated: '2023-12-13T17:54:25Z' + updated: '2023-12-15T17:49:23Z' language: JavaScript archived: false - stars: 1017 + stars: 1019 watchers: 20 forks: 154 owner: APIDevTools logo: https://avatars.githubusercontent.com/u/43750074?v=4 license: MIT - repoEtag: '"6828cde66dd57f5f627e5cbc564e985ca07a010ca0498b5b31e2e69cf751bc0a"' - repoLastModified: Wed, 13 Dec 2023 17:54:25 GMT + repoEtag: '"2c660286fabdca8cfe539c70053a91ca885e78ddfbb2f5f1f07583b45efe1816"' + repoLastModified: Fri, 15 Dec 2023 17:49:23 GMT category: Parsers foundInMaster: true name: APIDevTools/swagger-parser @@ -3102,17 +3102,17 @@ OpenAPI 3.0 (and Swagger v2) implementation for Go (parsing, converting, validation, and more) created: '2017-06-11T20:12:06Z' - updated: '2023-12-13T11:00:13Z' + updated: '2023-12-15T16:35:09Z' language: Go archived: false - stars: 2190 + stars: 2193 watchers: 23 forks: 378 owner: getkin logo: https://avatars.githubusercontent.com/u/40365715?v=4 license: MIT - repoEtag: '"ab066e5066de32ff6423a530bb28a69ebfe168bda119c17c4eb0f900bc85b68a"' - repoLastModified: Wed, 13 Dec 2023 11:00:13 GMT + repoEtag: '"714e22a2e43d077185e3731cfa5117c8ff541cac2752890a5151ddeffacb5bf9"' + repoLastModified: Fri, 15 Dec 2023 16:35:09 GMT foundInMaster: true v2: true id: f6838ce08e87fa4c3dc813c97193ece3 @@ -3208,17 +3208,17 @@ An object oriented approach to generating OpenAPI specs, implemented in PHP. created: '2018-09-26T20:11:56Z' - updated: '2023-12-13T12:26:58Z' + updated: '2023-12-14T12:37:10Z' language: PHP archived: false stars: 215 watchers: 6 - forks: 19 + forks: 20 owner: goldspecdigital logo: https://avatars.githubusercontent.com/u/31162012?v=4 license: MIT - repoEtag: '"599b74a37e8fdc85249547e33745e6e75fc5915c71acf055f422040fe05c5202"' - repoLastModified: Wed, 13 Dec 2023 12:26:58 GMT + repoEtag: '"c467dfc96a25cdc5b184bb7d83f4b7c349b3d866a25a25fe85c8edfdb8344254"' + repoLastModified: Thu, 14 Dec 2023 12:37:10 GMT foundInMaster: true id: b572581c8e045165d5121ee9c5bc361e - source: https://openapi.tools/ @@ -3507,17 +3507,17 @@ repositoryId: 26726495 description: Swagger 2.0 implementation for go created: '2014-11-16T20:13:15Z' - updated: '2023-12-13T20:27:08Z' + updated: '2023-12-15T02:49:23Z' language: Go archived: false - stars: 9027 + stars: 9033 watchers: 120 forks: 1270 owner: go-swagger logo: https://avatars.githubusercontent.com/u/10362650?v=4 license: Apache-2.0 - repoEtag: '"de8d24dd7b1b58d2a8d621eeafebf2c0766bb2327a6b35364a553863daf7c289"' - repoLastModified: Wed, 13 Dec 2023 20:27:08 GMT + repoEtag: '"c8a47a6246a7103f4e697e92c06b8d2d8803a7074b680a16e769e48cb4c391ce"' + repoLastModified: Fri, 15 Dec 2023 02:49:23 GMT foundInMaster: true id: ef136df9ffb40bb33ccbd76665d8f5b4 - source: https://openapi.tools/ @@ -3610,17 +3610,17 @@ repositoryId: 41822320 description: 'The Swagger/OpenAPI toolchain for .NET, ASP.NET Core and TypeScript. ' created: '2015-09-02T19:11:57Z' - updated: '2023-12-13T07:05:59Z' + updated: '2023-12-15T12:53:43Z' language: C# archived: false - stars: 6217 + stars: 6226 watchers: 161 forks: 1177 owner: RicoSuter logo: https://avatars.githubusercontent.com/u/2603405?v=4 license: MIT - repoEtag: '"22513e6c1c91cf8c19902d88d1b67b7876361cd2a9141d2392e9d40bc801580c"' - repoLastModified: Wed, 13 Dec 2023 07:05:59 GMT + repoEtag: '"65459fc371d97a1d3de1597becedcee3162ff8fd9dbbd06c024138e6bb6e142d"' + repoLastModified: Fri, 15 Dec 2023 12:53:43 GMT foundInMaster: true id: 93636e95435e95198d7d15c9d507f0d3 - source: https://openapi.tools/ @@ -3683,17 +3683,17 @@ documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition. created: '2011-07-06T14:26:48Z' - updated: '2023-12-14T01:59:52Z' + updated: '2023-12-16T02:32:53Z' language: Mustache archived: false - stars: 16187 + stars: 16197 watchers: 418 - forks: 6031 + forks: 6032 owner: swagger-api logo: https://avatars.githubusercontent.com/u/7658037?v=4 license: Apache-2.0 - repoEtag: '"31c60ccd19cb1740fdeaad1b16826c7ffcb918cc7281a743e28abf2ce2aeb539"' - repoLastModified: Thu, 14 Dec 2023 01:59:52 GMT + repoEtag: '"f0fd3d7cfc01d45def3fab699423de77c0b55677e1b5ceb918b6dbc443460a4a"' + repoLastModified: Sat, 16 Dec 2023 02:32:53 GMT foundInMaster: true id: eda1e66e1b7805496e42f57851791a32 - source: https://openapi.tools/ @@ -3721,12 +3721,12 @@ language: TypeScript archived: false stars: 4389 - watchers: 818 - forks: 753 + watchers: 819 + forks: 754 owner: Azure logo: https://avatars.githubusercontent.com/u/6844498?v=4 license: MIT - repoEtag: '"8568a1bd9fb9da0bc9e98dbbdc6a5e49fa1224377826dcec31793400f62226a2"' + repoEtag: '"732d5ce9d8fa8e60f92b814d576d3f62e4930e0db94950b1bcf74dd5e297c341"' repoLastModified: Sat, 09 Dec 2023 20:10:46 GMT foundInMaster: true id: 648d92bca90bf58cd74407e0bcad2936 @@ -3780,17 +3780,17 @@ repositoryId: 84146520 description: Comprehensive tooling for working with OpenAPI definitions. created: '2017-03-07T02:46:31Z' - updated: '2023-12-12T23:05:15Z' + updated: '2023-12-15T04:11:46Z' language: TypeScript archived: false - stars: 220 + stars: 222 watchers: 19 forks: 27 owner: readmeio logo: https://avatars.githubusercontent.com/u/6878153?v=4 license: MIT - repoEtag: '"80746e9705f795a5a37a4ca7691d9dfacfef0cc562bdb6e71312fe118a1883bd"' - repoLastModified: Tue, 12 Dec 2023 23:05:15 GMT + repoEtag: '"1bffaef50d27a8331bfa52aad85da2db850f2b2e5bd959303c2a89ebf87de15f"' + repoLastModified: Fri, 15 Dec 2023 04:11:46 GMT foundInMaster: true id: 362a4b56c90877840a8032f920389bf6 v3_1: true @@ -3818,17 +3818,17 @@ repositoryId: 81140437 description: 🚀 Automatic SDK generation from an OpenAPI definition created: '2017-02-06T22:31:07Z' - updated: '2023-12-13T14:22:56Z' + updated: '2023-12-14T08:00:56Z' language: TypeScript archived: false - stars: 436 + stars: 437 watchers: 20 forks: 22 owner: readmeio logo: https://avatars.githubusercontent.com/u/6878153?v=4 license: MIT - repoEtag: '"3420578e0afd846e3d068a81f91df9ac9423da7995e1dc5d6902337e3657820c"' - repoLastModified: Wed, 13 Dec 2023 14:22:56 GMT + repoEtag: '"a1a497045a948a0c803e3707fe28dce4d723d02ffc0f91bc7a46e4732e4da9b0"' + repoLastModified: Thu, 14 Dec 2023 08:00:56 GMT foundInMaster: true - source: https://openapi.tools/ name: oas-normalize @@ -4129,17 +4129,17 @@ applications. Currently targeting whitebox and blackbox testing of Web APIs, like REST, GraphQL and RPC (e.g., gRPC and Thrift). created: '2017-05-25T09:11:23Z' - updated: '2023-12-13T15:01:52Z' + updated: '2023-12-15T15:29:27Z' language: Kotlin archived: false - stars: 386 + stars: 387 watchers: 24 forks: 70 owner: EMResearch logo: https://avatars.githubusercontent.com/u/29148026?v=4 license: LGPL-3.0 - repoEtag: '"dc81add3be8024866453ddae5b2f64e39e7dcbb533a971f52eec5115d332a07c"' - repoLastModified: Wed, 13 Dec 2023 15:01:52 GMT + repoEtag: '"5f9a445516e7789913070ef084b918192ae9f8fdefb9f079c8a1563e0715994d"' + repoLastModified: Fri, 15 Dec 2023 15:29:27 GMT foundInMaster: true id: eba0fd1e4a49eb507e337ad2266e9a16 - source: https://openapi.tools/ @@ -4207,17 +4207,17 @@ Black-box fuzzer that fuzzes APIs based on OpenAPI specification. Find bugs for free! created: '2020-12-23T22:33:38Z' - updated: '2023-12-13T21:01:31Z' + updated: '2023-12-14T11:58:35Z' language: Rust archived: false - stars: 486 + stars: 487 watchers: 7 forks: 21 owner: matusf logo: https://avatars.githubusercontent.com/u/18228995?v=4 license: AGPL-3.0 - repoEtag: '"3d1f4432b86782c59c1811be1162dc82d1e8c23905fd3fc543d25247f2eaf293"' - repoLastModified: Wed, 13 Dec 2023 21:01:31 GMT + repoEtag: '"9f66880fd82fe2d48234d4a569071488d83d6063f95e1aac6af881d7992fb66e"' + repoLastModified: Thu, 14 Dec 2023 11:58:35 GMT id: 9e0191ba47403298459b30242dbfe9ad - source: https://openapi.tools/ name: cats @@ -4296,17 +4296,17 @@ Due to the OpenAPI v3.0 and JSON Schema discrepancy, you can use this JS library to convert OpenAPI Schema objects to proper JSON Schema. created: '2020-01-17T21:37:32Z' - updated: '2023-12-10T07:39:12Z' + updated: '2023-12-15T03:42:55Z' language: TypeScript archived: false - stars: 208 + stars: 209 watchers: 5 forks: 19 owner: openapi-contrib logo: https://avatars.githubusercontent.com/u/49447320?v=4 license: MIT - repoEtag: '"8bbc5cd4283e7c407ce6598b54e67e8babcaca4b42b537cbd824d1e04e23fff5"' - repoLastModified: Sun, 10 Dec 2023 07:39:12 GMT + repoEtag: '"ade28b10b0979399e8a6c4be3acd7523d592dc77e41c776f375096ff0dae5de1"' + repoLastModified: Fri, 15 Dec 2023 03:42:55 GMT foundInMaster: true id: f6608d418f20d73a1e15b74206edd45a - source: https://openapi.tools/ @@ -4340,7 +4340,7 @@ owner: openapi-contrib logo: https://avatars.githubusercontent.com/u/49447320?v=4 license: MIT - repoEtag: '"bbbb4cc7f165b9e3e0c26f4edb636fa6bb604527f35b652f252a91498b6f491a"' + repoEtag: '"4f4f1a577fd0f3b619164f3aa9032deeeb6a560d684bc979fb765e748b580677"' repoLastModified: Thu, 07 Dec 2023 00:23:45 GMT foundInMaster: true id: c443b19d564b9a8e21fe8b6192f75f8f @@ -4369,17 +4369,17 @@ :scroll: Visual Studio extension to generate OpenAPI (Swagger) web service reference. created: '2019-03-30T18:26:16Z' - updated: '2023-11-24T12:57:57Z' + updated: '2023-12-14T07:42:16Z' language: C# archived: false - stars: 94 + stars: 95 watchers: 2 forks: 15 owner: unchase logo: https://avatars.githubusercontent.com/u/29679226?v=4 license: Apache-2.0 - repoEtag: '"e6caa65ad6668ca4554e05e9486e6d9272e8b0351baebf274a94fe0f203690ea"' - repoLastModified: Fri, 24 Nov 2023 12:57:57 GMT + repoEtag: '"072d518b85c460790da89bab2bbef2a16decaff4307e10ba7448b9640634ad91"' + repoLastModified: Thu, 14 Dec 2023 07:42:16 GMT foundInMaster: true id: b552c4cab06ab1125ad610aaea022ee3 - source: https://openapi.tools/ @@ -4431,7 +4431,7 @@ owner: openapi-processor logo: https://avatars.githubusercontent.com/u/66728774?v=4 license: Apache-2.0 - repoEtag: '"f6e9424d70def324fe3b7ee4ebc3c5c9be51b9a48f1471e79f64c74ae16fd57c"' + repoEtag: '"8a41006cb6d7212ad5c94305c5dc36d27052e259744e2efcdab2d92654c0d4fd"' repoLastModified: Thu, 26 Oct 2023 15:55:46 GMT foundInMaster: true - source: https://openapi.tools/ @@ -4588,7 +4588,7 @@ owner: danielgtaylor logo: https://avatars.githubusercontent.com/u/106826?v=4 license: MIT - repoEtag: '"3200c04f3451731671417d429885425562108781cae935f79b889db03804487b"' + repoEtag: '"368ee91ebdeee29f50114c9c7a2fdba624c7002abc3dfdd1bd25112d8da2cebe"' repoLastModified: Wed, 13 Dec 2023 15:03:16 GMT foundInMaster: true id: 22a8c610015b1b9d89af39221beabe66 @@ -4623,7 +4623,7 @@ owner: codekie logo: https://avatars.githubusercontent.com/u/1512840?v=4 license: MIT - repoEtag: '"50c939ac1a94370fe8f31554addc20fd062977ed866758ed6d4d501017922050"' + repoEtag: '"371597b2e6024909e7d7153281a7eb0f19faf3c25abb34e32bdda6429a9d7118"' repoLastModified: Fri, 24 Nov 2023 16:36:50 GMT foundInMaster: true id: 301e3f380f248daf345a88c8971d2a71 @@ -4649,17 +4649,17 @@ Plugin for converting OpenAPI 3.0 specs to the Postman Collection (v2) format created: '2018-12-12T10:13:46Z' - updated: '2023-12-13T11:14:30Z' + updated: '2023-12-15T23:09:23Z' language: JavaScript archived: false - stars: 812 + stars: 814 watchers: 23 forks: 201 owner: postmanlabs logo: https://avatars.githubusercontent.com/u/10251060?v=4 license: Apache-2.0 - repoEtag: '"826148f7371d3239098a15251e86d86a9fef55b440fe4ed4924073b8b9bda266"' - repoLastModified: Wed, 13 Dec 2023 11:14:30 GMT + repoEtag: '"770c23528b4d09a297ec5cda4e52c8b3afe70e3566c967c4397f36c04ab9348d"' + repoLastModified: Fri, 15 Dec 2023 23:09:23 GMT foundInMaster: true id: 31b717a2084e3d92f6cda2c33484c789 v3_link: true @@ -4732,7 +4732,7 @@ owner: github logo: https://avatars.githubusercontent.com/u/9919?v=4 license: MIT - repoEtag: '"bbb98967fd08356ec7bf13702818aa6b65fe1ca1df9c1086272cdde069299bcd"' + repoEtag: '"994024fc6e1a2df6b3904937a401abbc4dd10c528101452c9ec40413c4249c23"' repoLastModified: Sat, 09 Dec 2023 21:52:38 GMT foundInMaster: true id: ec6a7a1e4a69a9beeb95bdebb88cb36d @@ -4758,17 +4758,17 @@ repositoryId: 4238977 description: Automated JSON API documentation for API's built with Spring created: '2012-05-06T06:38:57Z' - updated: '2023-12-13T07:14:01Z' + updated: '2023-12-14T19:43:56Z' language: Java archived: false - stars: 5876 + stars: 5877 watchers: 269 forks: 1546 owner: springfox logo: https://avatars.githubusercontent.com/u/11529357?v=4 license: Apache-2.0 - repoEtag: '"922300441088283321e0905d064cd30d77aa3180f033894d95da44e71c99e8c1"' - repoLastModified: Wed, 13 Dec 2023 07:14:01 GMT + repoEtag: '"de4b473cdeed7a51da7d405b7095c35d7a8a61877fc277e7f29a55d1e6addaa3"' + repoLastModified: Thu, 14 Dec 2023 19:43:56 GMT foundInMaster: true id: 2addde4c497bf582f20025ccac2cda86 - source: @@ -4826,17 +4826,17 @@ repositoryId: 36817565 description: The ZAP core project created: '2015-06-03T16:55:01Z' - updated: '2023-12-14T01:54:04Z' + updated: '2023-12-15T18:07:52Z' language: Java archived: false - stars: 11524 + stars: 11531 watchers: 400 - forks: 2170 + forks: 2172 owner: zaproxy logo: https://avatars.githubusercontent.com/u/6716868?v=4 license: Apache-2.0 - repoEtag: '"00c594da388645d2cd8dc67fb66cc7f7be8ca0a8bf5a3453ab3c53b6c2124f92"' - repoLastModified: Thu, 14 Dec 2023 01:54:04 GMT + repoEtag: '"4b8795dc55f7a2a6d8300402d09f6943a462ccefbe6913bc4a28a9315801b452"' + repoLastModified: Fri, 15 Dec 2023 18:07:52 GMT foundInMaster: true id: 9eedc1be44837a65f912bcf562844f39 - source: https://openapi.tools/ @@ -5057,17 +5057,17 @@ Fuzz test your application using your OpenAPI or Swagger API definition without coding created: '2018-01-02T11:49:13Z' - updated: '2023-12-07T05:20:19Z' + updated: '2023-12-14T13:26:42Z' language: Python archived: false - stars: 373 + stars: 374 watchers: 10 forks: 62 owner: KissPeter logo: https://avatars.githubusercontent.com/u/19633417?v=4 license: GPL-3.0 - repoEtag: '"1b482d18118abc9a66d2145f43a3fa040f1cda354ee86530608c53ca935805d4"' - repoLastModified: Thu, 07 Dec 2023 05:20:19 GMT + repoEtag: '"a1f0dd10983c196e1354b844a08d8df6e04ebe7f46be0eb3c5129ced077f5e5e"' + repoLastModified: Thu, 14 Dec 2023 13:26:42 GMT foundInMaster: true id: bd38b4a53d7dcb21f05b494be14573e6 - source: https://openapi.tools/ @@ -5089,17 +5089,17 @@ repositoryId: 1431547 description: Web APIs for Django. 🎸 created: '2011-03-02T17:13:56Z' - updated: '2023-12-13T23:08:37Z' + updated: '2023-12-16T02:41:15Z' language: Python archived: false - stars: 26793 - watchers: 623 + stars: 26797 + watchers: 622 forks: 6827 owner: encode logo: https://avatars.githubusercontent.com/u/19159390?v=4 license: NOASSERTION - repoEtag: '"e9dea9a1a4e119e7a6a241e27899127bc6d4bbcdc3a13ecba76fa2af90822584"' - repoLastModified: Wed, 13 Dec 2023 23:08:37 GMT + repoEtag: '"1838787b1d6cfa3d2b5b3573defa8bc9acaab893109b1255fdc50b277e601028"' + repoLastModified: Sat, 16 Dec 2023 02:41:15 GMT foundInMaster: true id: fb8994c078a380cc3510b024f6ed1202 category: Server Implementations @@ -5180,17 +5180,17 @@ repositoryId: 358547893 description: OAuth2 definitions as OpenAPI Spec 3.0 components created: '2021-04-16T09:35:37Z' - updated: '2023-11-08T08:09:40Z' + updated: '2023-12-15T04:11:40Z' language: null archived: false - stars: 5 + stars: 6 watchers: 2 forks: 1 owner: ybelenko logo: https://avatars.githubusercontent.com/u/5541023?v=4 license: MIT - repoEtag: '"6e8b11231238208454fcac14b07ddf893361cd98a55680cbddd31bbc64470ee7"' - repoLastModified: Wed, 08 Nov 2023 08:09:40 GMT + repoEtag: '"6f2168b3f9df384573fb5f9f5d27f620dbeb70d8cb27abdc9db627ddb5dbb32d"' + repoLastModified: Fri, 15 Dec 2023 04:11:40 GMT foundInMaster: true id: 943b84998524f65e45768ca73ecb3841 category: Parsers @@ -5280,17 +5280,17 @@ repositoryId: 240776275 description: Generate modern Python clients from OpenAPI created: '2020-02-15T19:33:46Z' - updated: '2023-12-14T01:52:38Z' + updated: '2023-12-15T20:30:52Z' language: Python archived: false - stars: 908 + stars: 913 watchers: 14 - forks: 186 + forks: 187 owner: openapi-generators logo: https://avatars.githubusercontent.com/u/84925606?v=4 license: MIT - repoEtag: '"33fc9b58c557f3e039a0bba308f82050002dbadc1727d30327f48929b3f85c72"' - repoLastModified: Thu, 14 Dec 2023 01:52:38 GMT + repoEtag: '"5bf04deb8eb6751bd77377c55d8dcf4469fe91cbe779646c93e478e9c20f024a"' + repoLastModified: Fri, 15 Dec 2023 20:30:52 GMT foundInMaster: true id: 784ec4adac4e47e4211ea74ef36dd5a5 - source: @@ -5319,17 +5319,17 @@ Build beautiful, interactive API Docs with embeddable React or Web Components, powered by OpenAPI and Markdown. created: '2019-05-03T01:05:01Z' - updated: '2023-12-13T20:42:22Z' + updated: '2023-12-15T17:44:23Z' language: TypeScript archived: false - stars: 1309 + stars: 1311 watchers: 21 forks: 157 owner: stoplightio logo: https://avatars.githubusercontent.com/u/10767217?v=4 license: Apache-2.0 - repoEtag: '"c7d549d291d05062a4cec8d89d0fb90ccb756a929a475efbc206f955eedf40dc"' - repoLastModified: Wed, 13 Dec 2023 20:42:22 GMT + repoEtag: '"a5dc20eef2ef768a424b2ac5b23c7cae65340f742aa4bed8b427a9de4ec786d3"' + repoLastModified: Fri, 15 Dec 2023 17:44:23 GMT foundInMaster: true id: 2f94cc1fc980953b17a9979d4ff2e7ec - source: @@ -5514,7 +5514,7 @@ owner: ignatandrei logo: https://avatars.githubusercontent.com/u/153982?v=4 license: MIT - repoEtag: '"1ae9e647f8a019e2d85c6afd91b905df0b23b7c8da4d0cff4bc79f8af3cabcba"' + repoEtag: '"0fb6d3a68dbccdf69bc377fd8d376dae8080ac0133413e186c1c9ffa124abfb1"' repoLastModified: Wed, 22 Nov 2023 18:23:38 GMT foundInMaster: true category: @@ -5656,17 +5656,17 @@ (TypeScript) from any valid OpenAPI v3 or Swagger v2 specification, either in yaml or json formats. 🍺 created: '2020-02-05T08:31:50Z' - updated: '2023-12-14T02:08:40Z' + updated: '2023-12-16T01:51:29Z' language: TypeScript archived: false - stars: 1894 + stars: 1898 watchers: 9 forks: 232 owner: anymaniax logo: https://avatars.githubusercontent.com/u/10516382?v=4 license: MIT - repoEtag: '"a6b78e9e8038d8b712e291befe1bc9555a64af48c500478dc9879a73cc507a12"' - repoLastModified: Thu, 14 Dec 2023 02:08:40 GMT + repoEtag: '"62ad30a755a3e4fffc111283a7c22aee86892d7dff24d3b6f3b6cca72bd44058"' + repoLastModified: Sat, 16 Dec 2023 01:51:29 GMT foundInMaster: true - source: - https://openapi.tools/ @@ -5717,17 +5717,17 @@ repositoryId: 497158492 description: Generate a Node.js command line tool from an OpenAPI definition created: '2022-05-27T22:55:07Z' - updated: '2023-12-13T15:58:51Z' + updated: '2023-12-14T07:32:12Z' language: TypeScript archived: false - stars: 21 + stars: 22 watchers: 2 forks: 2 owner: bcoughlan logo: https://avatars.githubusercontent.com/u/421683?v=4 license: MIT - repoEtag: '"59c0102004415c025e3143c803dfe811b9a83acb35c89624953885637ddfaec1"' - repoLastModified: Wed, 13 Dec 2023 15:58:51 GMT + repoEtag: '"8961cf26ab04456621f6e8d628444728737eff1607ebac29a61b46dfc6b4e23b"' + repoLastModified: Thu, 14 Dec 2023 07:32:12 GMT category: - Code Generators - SDK @@ -5764,7 +5764,7 @@ owner: pmcelhaney logo: https://avatars.githubusercontent.com/u/51504?v=4 license: MIT - repoEtag: '"1b8cb58e7076b8bdad5a784eb0de614b49a54fa76317a515c33a1efa83c08c53"' + repoEtag: '"0413947c90d3ae70d411882d249988dd47b74ab3ac0d0a7579869d3f66268078"' repoLastModified: Tue, 12 Dec 2023 15:40:39 GMT category: - Parsers @@ -5818,17 +5818,17 @@ you can think. vacuum is compatible with Spectral rulesets and generates compatible reports. created: '2021-10-10T18:24:19Z' - updated: '2023-12-13T18:44:00Z' + updated: '2023-12-15T18:38:34Z' language: Go archived: false - stars: 326 - watchers: 5 + stars: 329 + watchers: 6 forks: 25 owner: daveshanley logo: https://avatars.githubusercontent.com/u/187345?v=4 license: MIT - repoEtag: '"a3c43d862c873e0636800d46e9618b2397a933f261caa3249f8dae2d752c94fa"' - repoLastModified: Wed, 13 Dec 2023 18:44:00 GMT + repoEtag: '"5a0dfaa6387794e1f2187e8061cc33611c5abd24f8288a75ae4d1f8723d49e78"' + repoLastModified: Fri, 15 Dec 2023 18:38:34 GMT foundInMaster: true category: - Description Validators @@ -5886,17 +5886,17 @@ repositoryId: 161691324 description: Generate TypeScript types from OpenAPI 3 specs created: '2018-12-13T20:28:01Z' - updated: '2023-12-13T22:36:26Z' + updated: '2023-12-15T18:17:08Z' language: TypeScript archived: false - stars: 3922 + stars: 3938 watchers: 26 forks: 337 owner: drwpow logo: https://avatars.githubusercontent.com/u/1369770?v=4 license: MIT - repoEtag: '"a5eabb6c1bc4269ad88c67d43ba4d6e7f94e5c2fd3b644108c96fa51579effe9"' - repoLastModified: Wed, 13 Dec 2023 22:36:26 GMT + repoEtag: '"7d3dd0b0e34f76d4787351c8893fcda28aa56ad269b4cb9589992f62e3b5f4c5"' + repoLastModified: Fri, 15 Dec 2023 18:17:08 GMT foundInMaster: true - source: - https://openapi.tools/ @@ -5915,17 +5915,17 @@ libopenapi is a fully featured, high performance OpenAPI 3.1, 3.0 and Swagger parser, library, validator and toolkit for golang applications. created: '2022-07-17T19:41:10Z' - updated: '2023-12-13T06:24:52Z' + updated: '2023-12-14T09:43:42Z' language: Go archived: false - stars: 215 + stars: 217 watchers: 4 forks: 33 owner: pb33f logo: https://avatars.githubusercontent.com/u/104016643?v=4 license: NOASSERTION - repoEtag: '"1b5fdc0ff6e50b79c3b0cc82d87f4bbc843af452fe5c0458d3abeed6fadd7826"' - repoLastModified: Wed, 13 Dec 2023 06:24:52 GMT + repoEtag: '"d80f1db7536fd44428ee6d9a072f4f8e18879e9a1c39001ace767a635208a7c9"' + repoLastModified: Thu, 14 Dec 2023 09:43:42 GMT category: Parsers foundInMaster: true name: libopenapi @@ -6185,17 +6185,17 @@ Development - Collaboratively Design & Independently Deploy MicroServices & MicroFrontends. created: '2020-03-16T13:33:07Z' - updated: '2023-12-13T06:54:10Z' + updated: '2023-12-15T19:08:01Z' language: Kotlin archived: false - stars: 164 + stars: 167 watchers: 7 forks: 40 owner: znsio logo: https://avatars.githubusercontent.com/u/75619722?v=4 license: MIT - repoEtag: '"c1300aeaef1180cbea9e30e01e01f8174b956a1c9c2a10b88c27f5a075b71a6c"' - repoLastModified: Wed, 13 Dec 2023 06:54:10 GMT + repoEtag: '"a27b561163fe10cd7a62db92c3095defb6ce33291e7aaa647b9644919f6b014c"' + repoLastModified: Fri, 15 Dec 2023 19:08:01 GMT foundInMaster: true - source: - https://openapi.tools/ @@ -6214,17 +6214,17 @@ changed between two OpenAPI specs, or a single spec over time. Supports OpenAPI 3.1, 3.0 and Swagger created: '2022-11-28T16:53:14Z' - updated: '2023-12-10T23:51:32Z' + updated: '2023-12-14T16:39:14Z' language: Go archived: false - stars: 78 + stars: 79 watchers: 2 forks: 6 owner: pb33f logo: https://avatars.githubusercontent.com/u/104016643?v=4 license: NOASSERTION - repoEtag: '"20bdf8e83ec2a90aa5d238561d368e8feb93dbcb6996e2380e738297e94f8224"' - repoLastModified: Sun, 10 Dec 2023 23:51:32 GMT + repoEtag: '"ee4ec944a574d83892354052323b6011c2cfd4c7cb8820810abc581c86546a1a"' + repoLastModified: Thu, 14 Dec 2023 16:39:14 GMT category: - Data Validators - Testing @@ -6307,17 +6307,17 @@ repositoryId: 586543156 description: OpenAPI to TypeScript, React-Query, Zod, Zodios, Faker.js, MSW and Axios. created: '2023-01-08T14:15:23Z' - updated: '2023-12-13T20:18:13Z' + updated: '2023-12-15T11:35:53Z' language: TypeScript archived: false - stars: 268 + stars: 270 watchers: 5 forks: 19 owner: kubb-project logo: https://avatars.githubusercontent.com/u/122118236?v=4 license: MIT - repoEtag: '"452280b7d06e9c4cb3227c7abc74441c0ecf89928233163bb376317cbba98208"' - repoLastModified: Wed, 13 Dec 2023 20:18:13 GMT + repoEtag: '"688463a13553bf86daeb8e24a93963e6ca3bd60691d1cff18b83e978dfbb7074"' + repoLastModified: Fri, 15 Dec 2023 11:35:53 GMT foundInMaster: true - source: https://openapi.tools/ name: KrakenD API Gateway @@ -6415,7 +6415,7 @@ owner: udamir logo: https://avatars.githubusercontent.com/u/29271460?v=4 license: MIT - repoEtag: '"eee5322ab739419529a11e7c4b7e4766c0622b671e65432e13a17328e6c96934"' + repoEtag: '"e44078f904a0730a4efbcb825bcc4dbe6b8ddf7bb78fb9194c5597550ea69153"' repoLastModified: Wed, 11 Oct 2023 17:19:46 GMT foundInMaster: true category: Parsers @@ -6511,7 +6511,7 @@ owner: udamir logo: https://avatars.githubusercontent.com/u/29271460?v=4 license: MIT - repoEtag: '"2bbb64eb928eb92549299501bff5e422ee17ac605ae622b4158e3de8ab733d5d"' + repoEtag: '"124b4541728da29e40f6e87849418918064f8dc56896463c9edc6e77e1b5299d"' repoLastModified: Mon, 04 Dec 2023 20:40:02 GMT foundInMaster: true - source: https://openapi.tools/ @@ -6537,17 +6537,17 @@ repositoryId: 29151578 description: Seamlessly adds a Swagger to Rails-based API's created: '2015-01-12T19:08:10Z' - updated: '2023-12-12T05:15:59Z' + updated: '2023-12-15T01:47:24Z' language: Ruby archived: false - stars: 1805 + stars: 1806 watchers: 27 - forks: 400 + forks: 401 owner: rswag logo: https://avatars.githubusercontent.com/u/55741034?v=4 license: MIT - repoEtag: '"4744f829600544a774d84b688267d05a2b04f347380dfb33f7ca2fc4adbe4404"' - repoLastModified: Tue, 12 Dec 2023 05:15:59 GMT + repoEtag: '"1d87ac0c3f55437d293162dbe74ff1befe48ecae49b10f780b7b4e5de168332c"' + repoLastModified: Fri, 15 Dec 2023 01:47:24 GMT foundInMaster: true - source: https://openapi.tools/ name: 🌿 Fern @@ -6579,17 +6579,17 @@ repositoryId: 476820102 description: SDKs and Docs for your API created: '2022-04-01T17:56:54Z' - updated: '2023-12-13T14:53:35Z' + updated: '2023-12-16T00:24:21Z' language: TypeScript archived: false - stars: 1996 + stars: 1999 watchers: 10 - forks: 84 + forks: 85 owner: fern-api logo: https://avatars.githubusercontent.com/u/102944815?v=4 license: MIT - repoEtag: '"6ff6c322e04e82b913a45a6990960e111463edaf57bcedb0be3249faac2f1c2c"' - repoLastModified: Wed, 13 Dec 2023 14:53:35 GMT + repoEtag: '"c3ef6e50a199c809dafcf3764f228df7c4327e181ef8d32d73d97eda2d40746c"' + repoLastModified: Sat, 16 Dec 2023 00:24:21 GMT foundInMaster: true sponsored: true testimonial: > @@ -6613,17 +6613,17 @@ The world's coolest API Validation and compliance tool. Validate APIs against OpenAPI specifications and much more created: '2023-05-01T17:19:15Z' - updated: '2023-12-11T05:56:05Z' + updated: '2023-12-15T04:09:36Z' language: TypeScript archived: false - stars: 37 + stars: 38 watchers: 1 forks: 7 owner: pb33f logo: https://avatars.githubusercontent.com/u/104016643?v=4 license: NOASSERTION - repoEtag: '"bfd5277a5a8a5d0830144878563148c204c12a07bd75eee128e0ce63e5669542"' - repoLastModified: Mon, 11 Dec 2023 05:56:05 GMT + repoEtag: '"d28f5adefd523980f3ef4160991cbe138790f3b57c2def0d9bce18ab8e011b38"' + repoLastModified: Fri, 15 Dec 2023 04:09:36 GMT category: - Testing Tools - Testing @@ -6700,17 +6700,17 @@ repositoryId: 293245471 description: Convert between JSON Schema, TypeScript, GraphQL, Open API and SureType created: '2020-09-06T09:40:04Z' - updated: '2023-12-08T15:12:04Z' + updated: '2023-12-15T18:35:41Z' language: TypeScript archived: false - stars: 373 + stars: 374 watchers: 5 forks: 9 owner: grantila logo: https://avatars.githubusercontent.com/u/5362579?v=4 license: MIT - repoEtag: '"e66bb9791a5d5a174d2eeac2c3682857befe43c66b9249008d388c4a4ababdf1"' - repoLastModified: Fri, 08 Dec 2023 15:12:04 GMT + repoEtag: '"6dbdfc388a6a81197eb4cd65eb8da6756021a22ef3b63901d6c9f11d81c52b90"' + repoLastModified: Fri, 15 Dec 2023 18:35:41 GMT foundInMaster: true - source: - https://openapi.tools/ @@ -6738,7 +6738,7 @@ owner: traefik logo: https://avatars.githubusercontent.com/u/14280338?v=4 license: Apache-2.0 - repoEtag: '"1be88276a0cbacf8009c597eef467e7b9d14c5abba63b8f1c02e074f3dd89da3"' + repoEtag: '"5a2e607794cd3e3037ea1e47492e1259695581afc0b5535caa160ed973d18427"' repoLastModified: Tue, 31 Oct 2023 07:57:41 GMT category: - Documentation @@ -6772,17 +6772,17 @@ FastAPI framework, high performance, easy to learn, fast to code, ready for production created: '2018-12-08T08:21:47Z' - updated: '2023-12-14T03:10:02Z' + updated: '2023-12-16T03:02:45Z' language: Python archived: false - stars: 65808 + stars: 65897 watchers: 646 - forks: 5559 + forks: 5569 owner: tiangolo logo: https://avatars.githubusercontent.com/u/1326112?v=4 license: MIT - repoEtag: '"b5d9feb4b7df5ee4f486d3bf884049ab91cece7e8c045d0104dfbd3df3e084ab"' - repoLastModified: Thu, 14 Dec 2023 03:10:02 GMT + repoEtag: '"6a2b23ee3b98dfe14a906a3fe0ee6bab0d746357d51d5ad08eef9310b3451f7e"' + repoLastModified: Sat, 16 Dec 2023 03:02:45 GMT foundInMaster: true id: 8e11fa45d6f090aa2ed68317cf5a7215 - source: @@ -6800,17 +6800,17 @@ Swagger UI is a collection of HTML, JavaScript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API. created: '2011-07-15T22:56:39Z' - updated: '2023-12-14T01:20:27Z' + updated: '2023-12-16T02:34:51Z' language: JavaScript archived: false - stars: 24879 + stars: 24891 watchers: 651 - forks: 8842 + forks: 8844 owner: swagger-api logo: https://avatars.githubusercontent.com/u/7658037?v=4 license: Apache-2.0 - repoEtag: '"1c1293f46ebe2dd477cfbfbce69d91cb161d0d335338b42f697a1dbd36339e04"' - repoLastModified: Thu, 14 Dec 2023 01:20:27 GMT + repoEtag: '"1a901aae6b181a3f54cbd316eebb95be8a0055f9e8e0affc55ae77d8462d08d3"' + repoLastModified: Sat, 16 Dec 2023 02:34:51 GMT foundInMaster: true name: swagger-ui homepage: https://github.com/swagger-api/swagger-UI @@ -6843,17 +6843,17 @@ repositoryId: 45250726 description: 📘 OpenAPI/Swagger-generated API Reference Documentation created: '2015-10-30T12:53:02Z' - updated: '2023-12-13T19:13:35Z' + updated: '2023-12-16T02:42:22Z' language: TypeScript archived: false - stars: 21593 + stars: 21603 watchers: 288 - forks: 2261 + forks: 2264 owner: Redocly logo: https://avatars.githubusercontent.com/u/32099856?v=4 license: MIT - repoEtag: '"beb2115e85425fcdd6101918ae2da374992c0b6717a3d46ab53dc5faaa7dfd03"' - repoLastModified: Wed, 13 Dec 2023 19:13:35 GMT + repoEtag: '"53b8e7281d6efd2692fd460d4ba461744cf3f854a4359ad9c35c065a084212e4"' + repoLastModified: Sat, 16 Dec 2023 02:42:22 GMT foundInMaster: true v3_1: true id: 2725d6db6977c1dd12ceaf9701787e07 @@ -6872,17 +6872,17 @@ Full stack, modern web application generator. Using FastAPI, PostgreSQL as database, Docker, automatic HTTPS and more. created: '2019-02-23T15:08:34Z' - updated: '2023-12-14T02:55:27Z' + updated: '2023-12-16T02:23:42Z' language: Python archived: false - stars: 13819 - watchers: 217 - forks: 2487 + stars: 13842 + watchers: 219 + forks: 2488 owner: tiangolo logo: https://avatars.githubusercontent.com/u/1326112?v=4 license: MIT - repoEtag: '"2c92876ea427c87c42f8204f1a9e4db03f63498828304f38e962b2d18ae3c176"' - repoLastModified: Thu, 14 Dec 2023 02:55:27 GMT + repoEtag: '"7e06c02738d23225fad655677fbddd418129e798d75e8ca3deed741cb07144ef"' + repoLastModified: Sat, 16 Dec 2023 02:23:42 GMT foundInMaster: true category: Server Implementations id: fd87348d3e68e8838b35571b2a88b798 @@ -6926,17 +6926,17 @@ Mockoon is the easiest and quickest way to run mock APIs locally. No remote deployment, no account required, open source. created: '2017-07-17T13:19:16Z' - updated: '2023-12-13T23:59:44Z' + updated: '2023-12-16T02:36:13Z' language: TypeScript archived: false - stars: 5559 + stars: 5562 watchers: 59 forks: 313 owner: mockoon logo: https://avatars.githubusercontent.com/u/49429147?v=4 license: NOASSERTION - repoEtag: '"6d8eee4b3d0dbc05cd046f7e018bd2a679f2b31a4449dac83841328c6a2a4996"' - repoLastModified: Wed, 13 Dec 2023 23:59:44 GMT + repoEtag: '"c1bfca0455ae1275ed7d8400dd0b8f41ed58e1c5967ac0155bc597d260e1fdc7"' + repoLastModified: Sat, 16 Dec 2023 02:36:13 GMT foundInMaster: true category: Testing id: 8728dfca2c1908dbecdcddd31597fad4 @@ -6952,17 +6952,17 @@ repositoryId: 88701696 description: Knife4j is a set of Swagger2 and OpenAPI3 All-in-one enhancement solution created: '2017-04-19T04:44:28Z' - updated: '2023-12-13T00:59:12Z' + updated: '2023-12-15T06:23:09Z' language: HTML archived: false - stars: 3708 + stars: 3710 watchers: 73 forks: 583 owner: xiaoymin logo: https://avatars.githubusercontent.com/u/7894406?v=4 license: Apache-2.0 - repoEtag: '"e93b6cee5ae3c0ba39259d8103323f9dd9804bcd30fb25965ddc557661857274"' - repoLastModified: Wed, 13 Dec 2023 00:59:12 GMT + repoEtag: '"60455104cf6f3fe438e75a13f76792bcc0f61a34d633d30121f6f58a9b9d628f"' + repoLastModified: Fri, 15 Dec 2023 06:23:09 GMT category: SDK foundInMaster: true - source: @@ -6979,17 +6979,17 @@ repositoryId: 709571808 description: Chrome extension that generates API specs for any app or website created: '2023-10-25T00:36:06Z' - updated: '2023-12-13T17:26:48Z' + updated: '2023-12-15T20:21:17Z' language: TypeScript archived: false - stars: 3552 + stars: 3556 watchers: 18 forks: 57 owner: AndrewWalsh logo: https://avatars.githubusercontent.com/u/15863952?v=4 license: MIT - repoEtag: '"0b7895a7a318b01f3359b0eed6a0fe62c22c9a1568f58f295ab2e5325f1aef68"' - repoLastModified: Wed, 13 Dec 2023 17:26:48 GMT + repoEtag: '"2170d85259c7432e1112e977d1dccc4d36c0881956d34ac2a1538bb92768b84e"' + repoLastModified: Fri, 15 Dec 2023 20:21:17 GMT category: Server Implementations foundInMaster: true v3_1: true @@ -7006,17 +7006,17 @@ 🌐 Wikipedia for Web APIs. Directory of REST API definitions in OpenAPI 2.0/3.x format created: '2015-02-22T19:58:12Z' - updated: '2023-12-13T23:35:16Z' + updated: '2023-12-15T21:07:06Z' language: null archived: false - stars: 3468 + stars: 3469 watchers: 111 forks: 570 owner: APIs-guru logo: https://avatars.githubusercontent.com/u/10975548?v=4 license: CC0-1.0 - repoEtag: '"4a30da53b6aa53858b2dcd256cddb54810fe3f3ed6ee98b830b716c15005473d"' - repoLastModified: Wed, 13 Dec 2023 23:35:16 GMT + repoEtag: '"c6b0c3096f9e9495f25fbc971065a8bfb683452c1f0f524b7da1c2339e4b2ba6"' + repoLastModified: Fri, 15 Dec 2023 21:07:06 GMT foundInMaster: true category: SDK id: 667f2aef78d9d19418fbd6c0a7835abb @@ -7040,17 +7040,17 @@ repositoryId: 196475719 description: Library for OpenAPI 3 with spring-boot created: '2019-07-11T23:08:20Z' - updated: '2023-12-13T11:09:46Z' + updated: '2023-12-14T12:34:37Z' language: Java archived: false - stars: 2925 + stars: 2927 watchers: 41 - forks: 434 + forks: 435 owner: springdoc logo: https://avatars.githubusercontent.com/u/52804136?v=4 license: Apache-2.0 - repoEtag: '"0d63ace29c1ea083e7038ccf1f13d44fc5fcdeab7c5702046150fe18a81cd2b9"' - repoLastModified: Wed, 13 Dec 2023 11:09:46 GMT + repoEtag: '"7f6657a5bfe812491877196ab40adc208970ba090ebec0e0b83d088004e7cab1"' + repoLastModified: Thu, 14 Dec 2023 12:34:37 GMT foundInMaster: true id: 901410cec129651fcf7374c79f824f27 - source: @@ -7068,17 +7068,17 @@ Javascript library to connect to swagger-enabled APIs via browser or nodejs created: '2012-02-16T00:08:43Z' - updated: '2023-12-11T10:28:40Z' + updated: '2023-12-15T15:22:05Z' language: JavaScript archived: false - stars: 2550 + stars: 2551 watchers: 95 - forks: 790 + forks: 791 owner: swagger-api logo: https://avatars.githubusercontent.com/u/7658037?v=4 license: Apache-2.0 - repoEtag: '"b2e865ccc28182e700b24d449cd3d2de71a30af3989fd6f569ad7d25ea78780a"' - repoLastModified: Mon, 11 Dec 2023 10:28:40 GMT + repoEtag: '"4386f70734b7df3f8ccf1700a1e4fd96d2457ee16d58e7014a75cc57fb971c40"' + repoLastModified: Fri, 15 Dec 2023 15:22:05 GMT foundInMaster: true category: Code Generators id: 5f98b79464c0723b688cff46ee3500c6 @@ -7097,17 +7097,17 @@ web applications in Python with performance auto-tuning. Optionally with Alpine Linux. created: '2019-01-04T17:33:29Z' - updated: '2023-12-14T00:08:51Z' + updated: '2023-12-15T16:25:47Z' language: Python archived: false - stars: 2419 + stars: 2425 watchers: 27 - forks: 314 + forks: 313 owner: tiangolo logo: https://avatars.githubusercontent.com/u/1326112?v=4 license: MIT - repoEtag: '"8aa1b7c4ba8e87bdd50205a2651e7d645f0f8c398165b7c6139bb93d5c9be889"' - repoLastModified: Thu, 14 Dec 2023 00:08:51 GMT + repoEtag: '"13786163ebadc9d57c080c03e55d6cda1b49b1b3969a2e7c2a18636492e5f4c5"' + repoLastModified: Fri, 15 Dec 2023 16:25:47 GMT foundInMaster: true category: Server Implementations id: d0f3fc0bd35fcadacc8ed2c531780739 @@ -7136,11 +7136,11 @@ archived: false stars: 1940 watchers: 19 - forks: 144 + forks: 143 owner: schemathesis logo: https://avatars.githubusercontent.com/u/70383271?v=4 license: MIT - repoEtag: '"cc8d7798738a425132c8672fddd0e7d17aea3fa42e2a33e160ec1179d07f6bc9"' + repoEtag: '"e7b1e798c50863a71723c28a6fbc056d43202a2e4c3e62cbb7eedc62295621b4"' repoLastModified: Thu, 14 Dec 2023 02:13:06 GMT foundInMaster: true id: f4032fb371a703acffa691c0f1239d45 @@ -7157,17 +7157,17 @@ repositoryId: 244234763 description: Sane and flexible OpenAPI 3 schema generation for Django REST framework. created: '2020-03-01T22:36:54Z' - updated: '2023-12-13T14:53:11Z' + updated: '2023-12-14T07:36:41Z' language: Python archived: false - stars: 1920 + stars: 1924 watchers: 13 forks: 227 owner: tfranzel logo: https://avatars.githubusercontent.com/u/13507857?v=4 license: BSD-3-Clause - repoEtag: '"351c5f6b653fdcd39c00d70ac8f68d339faaec96b3b885b33f352dabaed67024"' - repoLastModified: Wed, 13 Dec 2023 14:53:11 GMT + repoEtag: '"6f219c96af75fd8895f82a71d20e308d6513c23067d244809a3ecf97d5f76de9"' + repoLastModified: Thu, 14 Dec 2023 07:36:41 GMT foundInMaster: true category: Server Implementations id: 520f5c66c3e42a7b3fbface4f156c1dc @@ -7184,17 +7184,17 @@ A compiler for APIs described by the OpenAPI Specification with plugins for code generation and other API support tasks. created: '2016-11-15T19:21:53Z' - updated: '2023-12-13T09:35:14Z' + updated: '2023-12-15T03:56:23Z' language: Go archived: false - stars: 1895 + stars: 1896 watchers: 37 forks: 232 owner: google logo: https://avatars.githubusercontent.com/u/1342004?v=4 license: Apache-2.0 - repoEtag: '"07a2c1b8bfbdd185a4cdf8f4f5487dd159e09a8c8a797e4d90ee5cd02bebf72d"' - repoLastModified: Wed, 13 Dec 2023 09:35:14 GMT + repoEtag: '"9f4ffe6a0e3ff41fb1a217c3e32111429b73f68e0f3ede30f05f0d9bb52ebbe3"' + repoLastModified: Fri, 15 Dec 2023 03:56:23 GMT foundInMaster: true category: Converters id: 46e070512676eb0fd196ee199e6a0b34 @@ -7213,17 +7213,17 @@ Simple, Fast, Code first and Compile time generated OpenAPI documentation for Rust created: '2021-09-30T22:00:31Z' - updated: '2023-12-13T20:48:37Z' + updated: '2023-12-16T02:34:18Z' language: Rust archived: false - stars: 1541 + stars: 1545 watchers: 8 forks: 126 owner: juhaku logo: https://avatars.githubusercontent.com/u/26358664?v=4 license: Apache-2.0 - repoEtag: '"ab32a117cdb7e40409326bf60fd8276c2428ae87d0f99c2d38377d825e1aa9f8"' - repoLastModified: Wed, 13 Dec 2023 20:48:37 GMT + repoEtag: '"2054a09b72685a92141c958673b84aadc989f9e0c1af5001218b58a84eca757f"' + repoLastModified: Sat, 16 Dec 2023 02:34:18 GMT foundInMaster: true category: Parsers id: 14269a89115b3be71493769fca4d995e @@ -7241,17 +7241,17 @@ A fast serialization and validation library, with builtin support for JSON, MessagePack, YAML, and TOML created: '2021-01-26T02:53:57Z' - updated: '2023-12-13T14:22:03Z' + updated: '2023-12-16T03:19:32Z' language: Python archived: false - stars: 1482 + stars: 1500 watchers: 14 forks: 46 owner: jcrist logo: https://avatars.githubusercontent.com/u/2783717?v=4 license: BSD-3-Clause - repoEtag: '"2110450b8136a4845c642076c0fb3c4dec0c56a9c5da71f637dc3699adc0e387"' - repoLastModified: Wed, 13 Dec 2023 14:22:03 GMT + repoEtag: '"233f3faa88c8ac0868f80c76b0e6bb8df2c25d120d4899fb4465bbed5cbfd712"' + repoLastModified: Sat, 16 Dec 2023 03:19:32 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -7265,17 +7265,17 @@ repositoryId: 165951750 description: RapiDoc -WebComponent for OpenAPI Spec created: '2019-01-16T01:29:58Z' - updated: '2023-12-13T10:22:42Z' + updated: '2023-12-15T13:51:39Z' language: JavaScript archived: false - stars: 1462 + stars: 1465 watchers: 13 forks: 262 owner: rapi-doc logo: https://avatars.githubusercontent.com/u/104180085?v=4 license: MIT - repoEtag: '"e89118e5554ea94d6875cb7b08781be2de0bf7279d518b2efedf8fc6cee124e0"' - repoLastModified: Wed, 13 Dec 2023 10:22:42 GMT + repoEtag: '"21c714309e8fd929218decc027b5c0b169faab789f89fb1a03265929a2e6ab5b"' + repoLastModified: Fri, 15 Dec 2023 13:51:39 GMT foundInMaster: true category: - Documentation @@ -7301,17 +7301,17 @@ repositoryId: 71986592 description: GUI / visual editor for creating and editing OpenAPI / Swagger definitions created: '2016-10-26T09:15:55Z' - updated: '2023-12-10T09:54:33Z' + updated: '2023-12-15T21:09:58Z' language: JavaScript archived: false - stars: 1317 + stars: 1318 watchers: 43 forks: 165 owner: Mermade logo: https://avatars.githubusercontent.com/u/15950345?v=4 license: MIT - repoEtag: '"6a7a271dd0cee0bfd2a639deb22efc251e6d8033e6ed492210d1a75ccf98f02b"' - repoLastModified: Sun, 10 Dec 2023 09:54:33 GMT + repoEtag: '"975874c67a209227164ee956f465ca359eceb0f404ed5b428b2805350c40f7cc"' + repoLastModified: Fri, 15 Dec 2023 21:09:58 GMT foundInMaster: true id: 71f1a528dc0a6366fb580d1b8c703ea8 - source: openapi3 tags @@ -7332,11 +7332,11 @@ archived: false stars: 1182 watchers: 18 - forks: 133 + forks: 134 owner: OpenAPITools logo: https://avatars.githubusercontent.com/u/37325267?v=4 license: Apache-2.0 - repoEtag: '"41c86aa843639dd17e89ffc5fb80b3c48287a5112035329dfdeb61b6633b4434"' + repoEtag: '"db800ffc9d25e1622eb7ef82edc9eb61ff22e41f421fbd8433a6eb1b10ccd270"' repoLastModified: Wed, 13 Dec 2023 21:07:03 GMT foundInMaster: true category: Code Generators @@ -7354,17 +7354,17 @@ A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification).. created: '2014-10-18T23:48:49Z' - updated: '2023-12-13T20:39:56Z' + updated: '2023-12-15T02:58:17Z' language: Python archived: false - stars: 1063 + stars: 1062 watchers: 25 forks: 170 owner: marshmallow-code logo: https://avatars.githubusercontent.com/u/10334301?v=4 license: MIT - repoEtag: '"ad78a7ad35c09175b633c44aa3a431e1f3bb0f0277e584f5dbd0cd341e75b0a6"' - repoLastModified: Wed, 13 Dec 2023 20:39:56 GMT + repoEtag: '"2b4f08998e18efc0a4b91421d9b24ac8d1813b0451eea83076d7fa112a6b151e"' + repoLastModified: Fri, 15 Dec 2023 02:58:17 GMT foundInMaster: true category: Parsers id: c1528764f05dd585ca47886dd6dabb86 @@ -7380,17 +7380,17 @@ repositoryId: 329190167 description: A lightweight Python web API framework. created: '2021-01-13T04:08:48Z' - updated: '2023-12-13T06:29:42Z' + updated: '2023-12-15T05:42:20Z' language: Python archived: false - stars: 881 + stars: 884 watchers: 19 forks: 109 owner: apiflask logo: https://avatars.githubusercontent.com/u/78075725?v=4 license: MIT - repoEtag: '"4adc2f215b0d088a14a09fabf2efd9d0a29d84bcf501b8b63bc2e0aeb384b58b"' - repoLastModified: Wed, 13 Dec 2023 06:29:42 GMT + repoEtag: '"161b1c45083502c48b12ef7a5e0b4870be72a2fd2c7af57ec5edfceb2172e285"' + repoLastModified: Fri, 15 Dec 2023 05:42:20 GMT category: Server Implementations foundInMaster: true oldLocations: @@ -7407,17 +7407,17 @@ repositoryId: 372032505 description: OpenAPI v3 code generator for go created: '2021-05-29T17:25:48Z' - updated: '2023-12-14T00:52:43Z' + updated: '2023-12-15T13:44:54Z' language: Go archived: false - stars: 861 + stars: 862 watchers: 13 - forks: 60 + forks: 61 owner: ogen-go logo: https://avatars.githubusercontent.com/u/85122432?v=4 license: Apache-2.0 - repoEtag: '"cf5f5bd8ed655a5ea3f1a09d504fbd4470219144df45f47ea3d1b1d729109f15"' - repoLastModified: Thu, 14 Dec 2023 00:52:43 GMT + repoEtag: '"a8465cbb162d92b823cbe208b7e41d384da7b1a8eb9db3335c82a17cf29c786f"' + repoLastModified: Fri, 15 Dec 2023 13:44:54 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -7432,17 +7432,17 @@ repositoryId: 381857226 description: null created: '2021-06-30T23:29:49Z' - updated: '2023-12-13T20:07:01Z' + updated: '2023-12-15T21:41:31Z' language: TypeScript archived: false - stars: 817 + stars: 820 watchers: 18 - forks: 105 + forks: 104 owner: microsoft logo: https://avatars.githubusercontent.com/u/6154722?v=4 license: MIT - repoEtag: '"0d557103fa9ef5390b1778232f9c63834f7fdccc7c9627d33395314e94579a8d"' - repoLastModified: Wed, 13 Dec 2023 20:07:01 GMT + repoEtag: '"4663a055ccf7af4f49183ae67b65a2eb3b79ba4eea79b1622fcc74ad4f7ad6d2"' + repoLastModified: Fri, 15 Dec 2023 21:41:31 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -7485,17 +7485,17 @@ A fast Java JSON schema validator that supports draft V4, V6, V7, V2019-09 and V2020-12 created: '2016-09-15T12:24:16Z' - updated: '2023-12-13T12:13:56Z' + updated: '2023-12-15T02:25:31Z' language: Java archived: false - stars: 711 + stars: 713 watchers: 43 forks: 305 owner: networknt logo: https://avatars.githubusercontent.com/u/8740739?v=4 license: Apache-2.0 - repoEtag: '"88af059218ed5b0e6e9601735830730d830c93deacbb66890e58580ecccba70f"' - repoLastModified: Wed, 13 Dec 2023 12:13:56 GMT + repoEtag: '"a8190cbeb3d8cd2147be0f87903cf62a4b29e2db06e6a69817f871af9477e14a"' + repoLastModified: Fri, 15 Dec 2023 02:25:31 GMT foundInMaster: true category: Parsers id: 69c6f349899d198b4045edb7ffa3fb74 @@ -7510,17 +7510,17 @@ repositoryId: 113924383 description: Utility for comparing two OpenAPI specifications. created: '2017-12-12T00:39:30Z' - updated: '2023-12-12T19:15:42Z' + updated: '2023-12-15T03:55:21Z' language: Java archived: false - stars: 698 + stars: 699 watchers: 21 forks: 152 owner: OpenAPITools logo: https://avatars.githubusercontent.com/u/37325267?v=4 license: Apache-2.0 - repoEtag: '"5420eb919ff8146712ac3d5374a8cce53b83a025cd3052408c7ebfb84d8a4cf0"' - repoLastModified: Tue, 12 Dec 2023 19:15:42 GMT + repoEtag: '"ba582be03c156369842eabf1f3cfa8ddbdd49db234d6a728fbea91b595f5097f"' + repoLastModified: Fri, 15 Dec 2023 03:55:21 GMT foundInMaster: true category: Parsers id: c128907e9d949a67c1bda0e0ceda755a @@ -7575,11 +7575,11 @@ archived: false stars: 654 watchers: 25 - forks: 117 + forks: 118 owner: Redocly logo: https://avatars.githubusercontent.com/u/32099856?v=4 license: MIT - repoEtag: '"b99f742c08a16fdbd2a938bfbab7ae20492fef62e40e3e04cd210954c656f476"' + repoEtag: '"e2415da090d116f28204cd8d460b0f24c5cd9e13eb7e2b78087839d441f6921f"' repoLastModified: Mon, 04 Dec 2023 21:52:59 GMT foundInMaster: true v3_1: true @@ -7602,17 +7602,17 @@ 😎 A list of awesome projects related to OpenAPI 3.0.x, curated by the community created: '2017-03-02T19:31:41Z' - updated: '2023-12-12T08:10:56Z' + updated: '2023-12-15T03:45:13Z' language: JavaScript archived: false - stars: 597 + stars: 598 watchers: 36 forks: 54 owner: APIs-guru logo: https://avatars.githubusercontent.com/u/10975548?v=4 license: BSD-3-Clause - repoEtag: '"5295f51ec44f3a0e8746d0e64427b2d4330a17d40371816bcdd261ba31db17b4"' - repoLastModified: Tue, 12 Dec 2023 08:10:56 GMT + repoEtag: '"2b1608a355b3883c3f1a0e012da0b79d9d2f5c20d4644a09d54ad2a4ccc53e67"' + repoLastModified: Fri, 15 Dec 2023 03:45:13 GMT foundInMaster: true category: Parsers id: 64d4029fd6b82879b746263cac7ce274 @@ -7632,11 +7632,11 @@ archived: false stars: 585 watchers: 23 - forks: 94 + forks: 95 owner: cdimascio logo: https://avatars.githubusercontent.com/u/4706618?v=4 license: MIT - repoEtag: '"46656ca0b6b7d3377d8ca1bd3e2d8757991c25c55844a497294298252a04f3e1"' + repoEtag: '"060c965c2b54a45fa00665d80c6827609e3420d100e089bc92b3da3477f8ea61"' repoLastModified: Tue, 12 Dec 2023 08:05:31 GMT foundInMaster: true category: Description Validators @@ -7656,17 +7656,17 @@ A collection of Editors, Linters, Parsers, Code Generators, Documentation, Testing created: '2017-12-15T22:51:00Z' - updated: '2023-12-10T16:40:36Z' + updated: '2023-12-15T04:01:18Z' language: HTML archived: false - stars: 579 + stars: 580 watchers: 30 - forks: 284 + forks: 286 owner: apisyouwonthate logo: https://avatars.githubusercontent.com/u/35378327?v=4 license: MIT - repoEtag: '"950a5ad94cfc53ec776ae407d4993f71ab08f5fa98c7b70581b5415302c81c13"' - repoLastModified: Sun, 10 Dec 2023 16:40:36 GMT + repoEtag: '"db4cfd470c478e646249ce71b2eff6d621862071206f37c7ae5c77d6bbf4d1d9"' + repoLastModified: Fri, 15 Dec 2023 04:01:18 GMT foundInMaster: true category: Description Validators id: bf8b6a3a6298d701eabc857d42d5c371 @@ -7683,17 +7683,17 @@ repositoryId: 481579846 description: A library that generates OpenAPI (Swagger) docs from Zod schemas created: '2022-04-14T11:32:57Z' - updated: '2023-12-13T16:05:42Z' + updated: '2023-12-15T15:48:15Z' language: TypeScript archived: false - stars: 520 + stars: 522 watchers: 10 - forks: 42 + forks: 43 owner: asteasolutions logo: https://avatars.githubusercontent.com/u/5244095?v=4 license: MIT - repoEtag: '"5c889c5205744b73db12dbbfdadfe98cd81bb79dce51b35bb91add5808866a61"' - repoLastModified: Wed, 13 Dec 2023 16:05:42 GMT + repoEtag: '"7f0dc244ccdbba800bc0039d9f763a4747fb4a5839c9f3c486aefff2256d7f2c"' + repoLastModified: Fri, 15 Dec 2023 15:48:15 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -7734,17 +7734,17 @@ repositoryId: 117561740 description: (Unofficial) Google Home local API documentation. created: '2018-01-15T15:22:58Z' - updated: '2023-12-13T08:01:34Z' + updated: '2023-12-14T15:45:06Z' language: Handlebars archived: false - stars: 441 + stars: 442 watchers: 31 forks: 42 owner: rithvikvibhu logo: https://avatars.githubusercontent.com/u/5113343?v=4 license: MIT - repoEtag: '"328f6448516c0c0744d78ef19527845b325be98175cfd03979b3fdfc11714548"' - repoLastModified: Wed, 13 Dec 2023 08:01:34 GMT + repoEtag: '"aeb2b457e51466049d418d787ba8a065bce626124135bd5208f02ab7685412be"' + repoLastModified: Thu, 14 Dec 2023 15:45:06 GMT foundInMaster: true category: SDK id: 6f3b994d76d4f6770123b20ae9bd03a2 @@ -7759,17 +7759,17 @@ repositoryId: 273958287 description: 🦕 OpenAPI plugin for generating API reference docs in Docusaurus v2. created: '2020-06-21T18:06:52Z' - updated: '2023-12-07T06:43:07Z' + updated: '2023-12-15T00:51:05Z' language: TypeScript archived: false - stars: 438 + stars: 439 watchers: 9 forks: 75 owner: cloud-annotations logo: https://avatars.githubusercontent.com/u/47490031?v=4 license: MIT - repoEtag: '"103ee8a76ba83c3495e47792d447c592219c55d01b19a74481b533eee71b4a59"' - repoLastModified: Thu, 07 Dec 2023 06:43:07 GMT + repoEtag: '"8c01f3f64d30cba16f0c960fdfeeec058a5ec84309f8d5e9c4a93107fe4bdba2"' + repoLastModified: Fri, 15 Dec 2023 00:51:05 GMT foundInMaster: true category: SDK id: 5acf9bbe5338a800925f2b0e23eca0a1 @@ -7812,16 +7812,16 @@ repositoryId: 182983428 description: Generate TypeScript clients to tap into OpenAPI servers created: '2019-04-23T09:40:41Z' - updated: '2023-12-11T15:55:19Z' + updated: '2023-12-16T00:17:09Z' language: TypeScript archived: false - stars: 424 + stars: 426 watchers: 10 forks: 67 owner: oazapfts logo: https://avatars.githubusercontent.com/u/119607625?v=4 - repoEtag: '"4b51ae3d20b2a913821d235a0759a6bb4393b4ebb7b3c6a98de923afbf4abec7"' - repoLastModified: Mon, 11 Dec 2023 15:55:19 GMT + repoEtag: '"91d1809f67449232fcd3a4069b156c99a419107b6b159e53bd96179b7f12fde9"' + repoLastModified: Sat, 16 Dec 2023 00:17:09 GMT category: Parsers foundInMaster: true oldLocations: @@ -7949,17 +7949,17 @@ response status codes and parameters. At the end, it generates the .json file containing the Swagger format specification. created: '2020-04-13T01:37:33Z' - updated: '2023-12-12T10:16:40Z' + updated: '2023-12-14T16:32:56Z' language: JavaScript archived: false - stars: 384 + stars: 387 watchers: 5 - forks: 58 + forks: 59 owner: swagger-autogen logo: https://avatars.githubusercontent.com/u/137681762?v=4 license: MIT - repoEtag: '"2898b84552046eef24aa52ba6612b9c2f1340b6de457ea6f7975905dd9cc1166"' - repoLastModified: Tue, 12 Dec 2023 10:16:40 GMT + repoEtag: '"39f55d9d1ecab25515a19bbe5bc8af0654f7b86f3b2323d84961ecce499a88dd"' + repoLastModified: Thu, 14 Dec 2023 16:32:56 GMT category: Parsers foundInMaster: true oldLocations: @@ -7975,17 +7975,17 @@ repositoryId: 293245471 description: Convert between JSON Schema, TypeScript, GraphQL, Open API and SureType created: '2020-09-06T09:40:04Z' - updated: '2023-12-08T15:12:04Z' + updated: '2023-12-15T18:35:41Z' language: TypeScript archived: false - stars: 373 + stars: 374 watchers: 5 forks: 9 owner: grantila logo: https://avatars.githubusercontent.com/u/5362579?v=4 license: MIT - repoEtag: '"e66bb9791a5d5a174d2eeac2c3682857befe43c66b9249008d388c4a4ababdf1"' - repoLastModified: Fri, 08 Dec 2023 15:12:04 GMT + repoEtag: '"6dbdfc388a6a81197eb4cd65eb8da6756021a22ef3b63901d6c9f11d81c52b90"' + repoLastModified: Fri, 15 Dec 2023 18:35:41 GMT foundInMaster: true category: Parsers id: 31c759927a7f06228ec927500d9722c5 @@ -8001,16 +8001,16 @@ repositoryId: 417437020 description: A tool for generating code base on an OpenAPI schema. created: '2021-10-15T09:08:51Z' - updated: '2023-12-13T03:06:43Z' + updated: '2023-12-14T11:05:52Z' language: TypeScript archived: false - stars: 363 + stars: 364 watchers: 6 forks: 44 owner: fabien0102 logo: https://avatars.githubusercontent.com/u/1761469?v=4 - repoEtag: '"360f8fb9d780425f6e23264de0a6b712f572fbb3a3a2b06c2fcdf4371475ec2f"' - repoLastModified: Wed, 13 Dec 2023 03:06:43 GMT + repoEtag: '"56453d75046e5eb0d22f1e4594470981377e92774e23b6d81e651bf0f70c18e7"' + repoLastModified: Thu, 14 Dec 2023 11:05:52 GMT category: Testing foundInMaster: true - source: openapi3 tags @@ -8090,7 +8090,7 @@ owner: akitasoftware logo: https://avatars.githubusercontent.com/u/44328574?v=4 license: Apache-2.0 - repoEtag: '"9b9d1fcf6054fb72474018fbf762ad331278f2566a1fc319a30707b8da9c421e"' + repoEtag: '"96823f9fe21d4b2c266ce8018727714529558b33bbf852372a79168ded97d47d"' repoLastModified: Tue, 12 Dec 2023 11:18:52 GMT foundInMaster: true category: @@ -8189,17 +8189,17 @@ validates OpenAPI Specs against the OpenAPI 2.0 (aka Swagger), OpenAPI 3.0 and OpenAPI 3.1 specification. created: '2017-09-06T08:08:25Z' - updated: '2023-12-07T05:37:44Z' + updated: '2023-12-15T15:46:12Z' language: Python archived: false - stars: 290 + stars: 291 watchers: 9 forks: 61 owner: python-openapi logo: https://avatars.githubusercontent.com/u/126442889?v=4 license: Apache-2.0 - repoEtag: '"748c8b7c8ecb414d2fa180804d0e4dc8e9354d0014fef49e9562e63695d39ed6"' - repoLastModified: Thu, 07 Dec 2023 05:37:44 GMT + repoEtag: '"2bc131dc87650f02b6e60548ef137bd64ee694a881a058aab0d5f220a7cc83ee"' + repoLastModified: Fri, 15 Dec 2023 15:46:12 GMT category: Parsers oldLocations: - https://github.com/p1c2u/openapi-spec-validator @@ -8216,17 +8216,17 @@ repositoryId: 202613633 description: Collection of RESTful APIs provided by Ethereum Beacon nodes created: '2019-08-15T21:27:12Z' - updated: '2023-12-08T14:44:32Z' + updated: '2023-12-16T02:47:48Z' language: HTML archived: false - stars: 284 + stars: 286 watchers: 38 forks: 172 owner: ethereum logo: https://avatars.githubusercontent.com/u/6250754?v=4 license: CC0-1.0 - repoEtag: '"101ba34555c948b7642825fc2e5b61263c15835407ea9b4e77364d53502ac8ae"' - repoLastModified: Fri, 08 Dec 2023 14:44:32 GMT + repoEtag: '"f206bfd8880e748b1402993fcd8e0fa860b83cdd639fc9331877b5ebc6eea0fd"' + repoLastModified: Sat, 16 Dec 2023 02:47:48 GMT foundInMaster: true category: - Documentation @@ -8305,17 +8305,17 @@ repositoryId: 245763170 description: Huma REST/HTTP API Framework for Golang with OpenAPI 3 created: '2020-03-08T06:19:51Z' - updated: '2023-12-13T19:56:03Z' + updated: '2023-12-16T00:39:52Z' language: Go archived: false - stars: 287 + stars: 291 watchers: 11 - forks: 34 + forks: 35 owner: danielgtaylor logo: https://avatars.githubusercontent.com/u/106826?v=4 license: MIT - repoEtag: '"3f1118d79a746b40780df779bb99ba2b5fdee38af10e1157c24d3753974bc2b0"' - repoLastModified: Wed, 13 Dec 2023 19:56:03 GMT + repoEtag: '"750bc19f35ca8d7f3b7c5b02deda7d98755112b89f5c0d26125663499ef77520"' + repoLastModified: Sat, 16 Dec 2023 00:39:52 GMT foundInMaster: true category: Server Implementations id: 96ae035d7b486f67e7bae7f6208179f9 @@ -8336,17 +8336,17 @@ Openapi-core is a Python library that adds client-side and server-side support for the OpenAPI v3.0 and OpenAPI v3.1 specification. created: '2017-09-20T10:25:35Z' - updated: '2023-12-13T09:22:53Z' + updated: '2023-12-15T16:05:26Z' language: Python archived: false - stars: 254 - watchers: 9 + stars: 255 + watchers: 10 forks: 119 owner: python-openapi logo: https://avatars.githubusercontent.com/u/126442889?v=4 license: BSD-3-Clause - repoEtag: '"cb9e415c4729ed5a9e4c43bb9f711c45829c518cceaba997da9eaf9785f6bedc"' - repoLastModified: Wed, 13 Dec 2023 09:22:53 GMT + repoEtag: '"74b7db524c6adf739447907e254f930cacc521e7d60e97a990dcaad5c7ced5b4"' + repoLastModified: Fri, 15 Dec 2023 16:05:26 GMT category: - Data Validators - Parsers @@ -8422,17 +8422,17 @@ corresponding API documents and codes to help developers develop APIs more quickly and efficiently. created: '2022-05-05T06:44:36Z' - updated: '2023-12-05T21:21:52Z' + updated: '2023-12-15T15:36:38Z' language: Go archived: false - stars: 228 + stars: 229 watchers: 6 forks: 28 owner: apicat logo: https://avatars.githubusercontent.com/u/64158984?v=4 license: MIT - repoEtag: '"eae62c94b2d848b614adfb5add4ae48cc848117dc116e6769dd209c0e86ba871"' - repoLastModified: Tue, 05 Dec 2023 21:21:52 GMT + repoEtag: '"533ba337d0c0c7c26d5ed87990127baa618f83fc1dcbb1d87dbca835cdc3b6ec"' + repoLastModified: Fri, 15 Dec 2023 15:36:38 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -8456,11 +8456,11 @@ archived: false stars: 225 watchers: 12 - forks: 12 + forks: 13 owner: testingisdocumenting logo: https://avatars.githubusercontent.com/u/54154955?v=4 license: Apache-2.0 - repoEtag: '"af1eb4f16fa7a83b1ad15820a5f78382562035c66264a238e9202cbabf6bbe32"' + repoEtag: '"c041d47af81570a3ab774fceeac6ffe568e6e6ee725884bd46b187703472dc52"' repoLastModified: Wed, 06 Dec 2023 16:02:50 GMT foundInMaster: true category: Documentation @@ -8476,17 +8476,17 @@ repositoryId: 419709887 description: A CUE-based framework for portable, evolvable schema created: '2021-10-21T12:16:22Z' - updated: '2023-11-29T17:19:02Z' + updated: '2023-12-15T04:47:16Z' language: Go archived: false - stars: 220 + stars: 221 watchers: 124 forks: 14 owner: grafana logo: https://avatars.githubusercontent.com/u/7195757?v=4 license: Apache-2.0 - repoEtag: '"569fac45be682f196ff72a1f590d271e09c3773f461da98dc772adc1394023dc"' - repoLastModified: Wed, 29 Nov 2023 17:19:02 GMT + repoEtag: '"134b64172881da8a7670d3731b8c7cbbed8b381391c299660f67f35ef4994c74"' + repoLastModified: Fri, 15 Dec 2023 04:47:16 GMT foundInMaster: true category: - Server @@ -8506,7 +8506,7 @@ A library for generating data models based on inputs such as AsyncAPI, OpenAPI, or JSON Schema documents. created: '2021-01-21T12:27:51Z' - updated: '2023-12-13T19:10:37Z' + updated: '2023-12-14T23:23:53Z' language: TypeScript archived: false stars: 222 @@ -8515,8 +8515,8 @@ owner: asyncapi logo: https://avatars.githubusercontent.com/u/16401334?v=4 license: Apache-2.0 - repoEtag: '"e7333d5017f95bf1c374625ef7821e31cfaa0c5fa26223a352b341e8927451be"' - repoLastModified: Wed, 13 Dec 2023 19:10:37 GMT + repoEtag: '"a487879853d57ad3ab4b13aa61c13861e2cc792d3e94bdaf960e7e3c4e418fe9"' + repoLastModified: Thu, 14 Dec 2023 23:23:53 GMT foundInMaster: true - source: openapi3 tags repository: https://github.com/0xtheprodev/fastapi-clean-example @@ -8557,17 +8557,17 @@ repositoryId: 67692955 description: Resolving Swagger/OpenAPI 2.0 and 3.0 Parser created: '2016-09-08T10:23:39Z' - updated: '2023-12-04T14:29:38Z' + updated: '2023-12-15T02:49:34Z' language: Python archived: false - stars: 214 + stars: 213 watchers: 9 forks: 40 owner: RonnyPfannschmidt logo: https://avatars.githubusercontent.com/u/156838?v=4 license: NOASSERTION - repoEtag: '"9d250268d26fa3e7158b08606f5e2006c53906ae9396ae03dfc58bca23b949c7"' - repoLastModified: Mon, 04 Dec 2023 14:29:38 GMT + repoEtag: '"bf840d4f6e0c8b45d12c6f294d0066324d2de4488d06e29292094994a97887f3"' + repoLastModified: Fri, 15 Dec 2023 02:49:34 GMT foundInMaster: true id: 06b2469a97224b07993ee5f7d921ea36 - source: openapi3 tags @@ -8666,17 +8666,17 @@ repositoryId: 23099185 description: Validate your Swagger JSON/YAML today! created: '2014-08-19T06:18:38Z' - updated: '2023-12-06T09:18:27Z' + updated: '2023-12-14T12:29:35Z' language: Java archived: false - stars: 199 + stars: 200 watchers: 18 forks: 84 owner: swagger-api logo: https://avatars.githubusercontent.com/u/7658037?v=4 license: Apache-2.0 - repoEtag: '"fb1e14c1ad20d34a832f22d811e2d247d46df6aade5a92e4f5dd2f96216ce596"' - repoLastModified: Wed, 06 Dec 2023 09:18:27 GMT + repoEtag: '"27e53ef4ac779c7d1611e9deefe9258fa8b58729993b47e73ef1acaa7a687e42"' + repoLastModified: Thu, 14 Dec 2023 12:29:35 GMT foundInMaster: true category: - Low-level Tooling @@ -8810,7 +8810,7 @@ owner: microsoft logo: https://avatars.githubusercontent.com/u/6154722?v=4 license: MIT - repoEtag: '"347a50639e32893d91d2b4e110f24bedc48a70741137a5c93c97f7dea78c82a8"' + repoEtag: '"a429431ee3a40bb95349e4aa39e5e4b44494e5f6ddda620e4f232f5341ca7d3d"' repoLastModified: Thu, 07 Dec 2023 17:00:56 GMT foundInMaster: true category: @@ -9015,17 +9015,17 @@ repositoryId: 563328514 description: OpenAPI 3 schema generator and validator for Cloudflare Workers created: '2022-11-08T11:43:41Z' - updated: '2023-12-11T22:07:54Z' + updated: '2023-12-15T15:53:16Z' language: TypeScript archived: false - stars: 172 + stars: 173 watchers: 10 forks: 27 owner: cloudflare logo: https://avatars.githubusercontent.com/u/314135?v=4 license: MIT - repoEtag: '"82002dc95702efafa5656a2cf1e3550607aefc55a8f0d2ec13e488582dd4ca19"' - repoLastModified: Mon, 11 Dec 2023 22:07:54 GMT + repoEtag: '"2320de08d121904fc9f5b72cfcb6be6f7eb2823c4e1dfc3db79a85dd5c5ed2c7"' + repoLastModified: Fri, 15 Dec 2023 15:53:16 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -9075,7 +9075,7 @@ owner: seriousme logo: https://avatars.githubusercontent.com/u/3322396?v=4 license: MIT - repoEtag: '"d6b895f5c77f2ef94b9b88e0b7cbd14787573fb284bc53e49a72a52c268ec752"' + repoEtag: '"279474edea57e084cb2c00db80f42c5559ed02178292dbf587e0446a62da0444"' repoLastModified: Fri, 01 Dec 2023 07:29:41 GMT foundInMaster: true category: @@ -9126,7 +9126,7 @@ repositoryId: 232207964 description: OpenAPI structures for Go created: '2020-01-07T00:07:41Z' - updated: '2023-12-13T07:21:40Z' + updated: '2023-12-15T12:12:30Z' language: Go archived: false stars: 164 @@ -9135,8 +9135,8 @@ owner: swaggest logo: https://avatars.githubusercontent.com/u/19609628?v=4 license: MIT - repoEtag: '"3e04153074b8a6ed2ab188f2f4c2ab6fbb356af1a4e7498906afd426098e4c13"' - repoLastModified: Wed, 13 Dec 2023 07:21:40 GMT + repoEtag: '"c406f5cc739b0dae27ce5e83ec00312763066ffb4ac276f6b9fd41115bc88d90"' + repoLastModified: Fri, 15 Dec 2023 12:12:30 GMT foundInMaster: true id: 042e78fafa5f6cb0dbca01c64778ab3f - source: @@ -9311,9 +9311,9 @@ v3: true repositoryMetadata: base64Readme: >- - IyB5aWkyLW9wZW5hcGkKClJFU1QgQVBJIGFwcGxpY2F0aW9uIGdlbmVyYXRvciBmb3IgWWlpMiwgb3BlbmFwaSAzLjAgWUFNTCAtPiBZaWkyLgoKQmFzZSBvbiBbR2lpLCB0aGUgWWlpIEZyYW1ld29yayBDb2RlIEdlbmVyYXRvcl0oaHR0cHM6Ly93d3cueWlpZnJhbWV3b3JrLmNvbS9leHRlbnNpb24veWlpc29mdC95aWkyLWdpaSkuCgpbIVtMYXRlc3QgU3RhYmxlIFZlcnNpb25dKGh0dHBzOi8vcG9zZXIucHVneC5vcmcvY2ViZS95aWkyLW9wZW5hcGkvdi9zdGFibGUpXShodHRwczovL3BhY2thZ2lzdC5vcmcvcGFja2FnZXMvY2ViZS95aWkyLW9wZW5hcGkpClshW0xhdGVzdCBBbHBoYSBWZXJzaW9uXShodHRwczovL3Bvc2VyLnB1Z3gub3JnL2NlYmUveWlpMi1vcGVuYXBpL3YvdW5zdGFibGUpXShodHRwczovL3BhY2thZ2lzdC5vcmcvcGFja2FnZXMvY2ViZS95aWkyLW9wZW5hcGkpClshW1RvdGFsIERvd25sb2Fkc10oaHR0cHM6Ly9wb3Nlci5wdWd4Lm9yZy9jZWJlL3lpaTItb3BlbmFwaS9kb3dubG9hZHMpXShodHRwczovL3BhY2thZ2lzdC5vcmcvcGFja2FnZXMvY2ViZS95aWkyLW9wZW5hcGkpClshW0xpY2Vuc2VdKGh0dHBzOi8vcG9zZXIucHVneC5vcmcvY2ViZS95aWkyLW9wZW5hcGkvbGljZW5zZSldKGh0dHBzOi8vcGFja2FnaXN0Lm9yZy9wYWNrYWdlcy9jZWJlL3lpaTItb3BlbmFwaSkKIVt5aWkyLW9wZW5hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3lpaTItb3BlbmFwaS93b3JrZmxvd3MveWlpMi1vcGVuYXBpL2JhZGdlLnN2Zz9icmFuY2g9d2lwKQoKIyMgVExEUjsgd2hhdCBpcyB0aGlzPwoKQSBjb2RlIGdlbmVyYXRvciBmb3IgT3BlbkFQSSBhbmQgWWlpIEZyYW1ld29yayBiYXNlZCBQSFAgQVBJIGFwcGxpY2F0aW9uLgoKSW5wdXQ6IFtPcGVuQVBJIDMuMCBZQU1MIG9yIEpTT05dKGh0dHBzOi8vZ2l0aHViLmNvbS9PQUkvT3BlbkFQSS1TcGVjaWZpY2F0aW9uI3RoZS1vcGVuYXBpLXNwZWNpZmljYXRpb24pICh2aWEgW2NlYmUvcGhwLW9wZW5hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3BocC1vcGVuYXBpKSkKCk91dHB1dDogWWlpIEZyYW1ld29yayBBcHBsaWNhdGlvbiB3aXRoIENvbnRyb2xsZXJzLCBNb2RlbHMsIGRhdGFiYXNlIHNjaGVtYQoKCiMjIEZlYXR1cmVzCgpDdXJyZW50bHkgYXZhaWxhYmxlIGZlYXR1cmVzOgoKLSBHZW5lcmF0ZSBQYXRoIG1hcHBpbmdzLCAqKkNvbnRyb2xsZXJzKiogYW5kIEFjdGlvbnMgKipmb3IgQVBJIEVuZHBvaW50cyoqLiBDUlVEIEVuZHBvaW50cyBhcmUgcmVhZHktdG8tdXNlLCBvdGhlciBFbmRwb2ludHMgYXJlIGdlbmVyYXRlZCBhcyBhYnN0cmFjdCBmdW5jdGlvbnMgdGhhdCBuZWVkIHRvIGJlIGltcGxlbWVudGVkCi0gR2VuZXJhdGUgKipNb2RlbHMqKiBhbmQgdmFsaWRhdGlvbiBiYXNlZCBvbiBPcGVuQVBJIFNjaGVtYQotIEdlbmVyYXRlICoqRGF0YWJhc2UgU2NoZW1hKiogZnJvbSBPcGVuQVBJIFNjaGVtYQotIEdlbmVyYXRlcyAqKkRhdGFiYXNlIE1pZ3JhdGlvbnMqKiBmb3Igc2NoZW1hIGNoYW5nZXMKLSBQcm92aWRlICoqRHVtbXkgRGF0YSoqIHZpYSBGYWtlciBmb3IgZGV2ZWxvcG1lbnQKCiMjIFJlcXVpcmVtZW50cwoKLSBQSFAgNy4xIG9yIGhpZ2hlciAod29ya3MgZmluZSB3aXRoIFBIUCA4KQoKCiMjIEluc3RhbGwKCiAgICBjb21wb3NlciByZXF1aXJlIGNlYmUveWlpMi1vcGVuYXBpOl4yLjBAYmV0YQoKIyMgVXNhZ2UKCllvdSBjYW4gdXNlIHRoaXMgcGFja2FnZSBpbiB5b3VyIGV4aXN0aW5nIGFwcGxpY2F0aW9uIG9yIHN0YXJ0IGEgbmV3IHByb2plY3QgdXNpbmcgdGhlClt5aWkyLWFwcC1hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3lpaTItYXBwLWFwaSkgYXBwbGljYXRpb24gdGVtcGxhdGUuCkZvciB1c2FnZSBvZiB0aGUgdGVtcGxhdGUsIHNlZSBpbnN0cnVjdGlvbnMgaW4gdGhlIHRlbXBsYXRlIHJlcG8gcmVhZG1lLgoKSW4geW91ciBleGlzdGluZyBZaWkgYXBwbGljYXRpb24gY29uZmlnICh3b3JrcyBmb3IgY29uc29sZSBhcyB3ZWxsIGFzIHdlYik6CgpgYGBwaHAKPD9waHAKJGNvbmZpZyA9IFsKICAgIC8vIC4uLiB0aGlzIGlzIHlvdXIgYXBwbGljYXRpb24gY29uZmlnIC4uLgpdOwoKaWYgKFlJSV9FTlZfREVWKSB7CiAgICAvLyBlbmFibGUgR2lpIG1vZHVsZQogICAgJGNvbmZpZ1snYm9vdHN0cmFwJ11bXSA9ICdnaWknOwogICAgJGNvbmZpZ1snbW9kdWxlcyddWydnaWknXSA9IFsKICAgICAgICAnY2xhc3MnID0+IFx5aWlcZ2lpXE1vZHVsZTo6Y2xhc3MsCiAgICAgICAgJ2dlbmVyYXRvcnMnID0+IFsKICAgICAgICAgICAgLy8gYWRkIEFwaUdlbmVyYXRvciB0byBHaWkgbW9kdWxlCiAgICAgICAgICAgICdhcGknID0+IFxjZWJlXHlpaTJvcGVuYXBpXGdlbmVyYXRvclxBcGlHZW5lcmF0b3I6OmNsYXNzLAoKICAgICAgICAgICAgLy8gLS0tLS0tLS0tIE9SIC0tLS0tLS0tLQogICAgICAgICAgICAvLyB0byBkaXNhYmxlIGdlbmVyYXRpb24gb2YgbWlncmF0aW9ucyBmaWxlcyBvciB3aXRoIGRlZmF1bHQgY29uZmlnIGNoYW5nZQogICAgICAgICAgICAnYXBpJyA9PiBbCiAgICAgICAgICAgICAgJ2NsYXNzJyA9PiBcY2ViZVx5aWkyb3BlbmFwaVxnZW5lcmF0b3JcQXBpR2VuZXJhdG9yOjpjbGFzcywKICAgICAgICAgICAgICAnZ2VuZXJhdGVNaWdyYXRpb25zJyA9PiBmYWxzZSwgIyB0aGlzIGNvbmZpZyBjYW4gYWxzbyBiZSBhcHBsaWVkIGluIENMSSBjb21tYW5kCiAgICAgICAgICAgIF0sCiAgICAgICAgXSwKICAgIF07Cn0KCnJldHVybiAkY29uZmlnOwpgYGAKClRvIHVzZSB0aGUgd2ViIGdlbmVyYXRvciwgb3BlbiBgaW5kZXgucGhwP3I9Z2lpYCBhbmQgc2VsZWN0IHRoZSBgUkVTVCBBUEkgR2VuZXJhdG9yYC4KCk9uIGNvbnNvbGUgeW91IGNhbiBydW4gdGhlIGdlbmVyYXRvciB3aXRoIGAuL3lpaSBnaWkvYXBpIC0tb3BlbkFwaVBhdGg9QGFwcC9vcGVuYXBpLnlhbWxgLiBXaGVyZSBgQGFwcC9vcGVuYXBpLnlhbWxgIHNob3VsZCBiZSB0aGUgYWJzb2x1dGUgcGF0aCB0byB5b3VyIE9wZW5BUEkgc3BlYyBmaWxlLiBUaGlzIGNhbiBiZSBKU09OIGFzIHdlbGwgYXMgWUFNTCAoc2VlIGFsc28gW2NlYmUvcGhwLW9wZW5hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3BocC1vcGVuYXBpLykgZm9yIHN1cHBvcnRlZCBmb3JtYXRzKS4KClJ1biBgLi95aWkgZ2lpL2FwaSAtLWhlbHBgIGZvciBhbGwgb3B0aW9ucy4gRXhhbXBsZTogRGlzYWJsZSBnZW5lcmF0aW9uIG9mIG1pZ3JhdGlvbnMgZmlsZXMgYC4veWlpIGdpaS9hcGkgLS1nZW5lcmF0ZU1pZ3JhdGlvbnM9MGAKClNlZSBbUGV0c3RvcmUgZXhhbXBsZV0oaHR0cHM6Ly9naXRodWIuY29tL09BSS9PcGVuQVBJLVNwZWNpZmljYXRpb24vYmxvYi9tYWluL2V4YW1wbGVzL3YzLjAvcGV0c3RvcmUueWFtbCkgZm9yIGV4YW1wbGUgT3BlbkFQSSBzcGVjLgoKCiMjIE9wZW5BUEkgZXh0ZW5zaW9ucwoKVGhpcyBsaWJyYXJ5IHVuZGVyc3RhbmRzIHRoZSBmb2xsb3dpbmcgZXh0ZW5zaW9ucyB0byB0aGUgT3BlbkFQSSBzcGVjOgoKIyMjIGB4LWZha2VyYAoKWW91IG1heSBzcGVjaWZ5IGN1c3RvbSBQSFAgY29kZSBmb3IgZ2VuZXJhdGluZyBmYWtlIGRhdGEgZm9yIGEgcHJvcGVydHk6CgpgYGB5YW1sCiAgICBQb3N0OgogICAgICBwcm9wZXJ0aWVzOgogICAgICAgIGlkOgogICAgICAgICAgdHlwZTogaW50ZWdlcgogICAgICAgIHRhZ3M6CiAgICAgICAgICB0eXBlOiBhcnJheQogICAgICAgICAgaXRlbXM6CiAgICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgICAgZXhhbXBsZTogWydvbmUnLCAndHdvJ10KICAgICAgICAgIHgtZmFrZXI6ICIkZmFrZXItPnJhbmRvbUVsZW1lbnRzKFsnb25lJywgJ3R3bycsICd0aHJlZScsICdmb3VyJ10pIgpgYGAKCiMjIyBgeC10YWJsZWAKClNwZWNpZnkgdGhlIHRhYmxlIG5hbWUgZm9yIGEgU2NoZW1hIHRoYXQgZGVmaW5lcyBhIG1vZGVsIHdoaWNoIGlzIHN0b3JlZCBpbiB0aGUgZGF0YWJhc2UuCllvdSBjYW4gZ2VuZXJhdGUgbm9uLWRiIG1vZGVsIGJhc2VkIG9uIFx5aWlcYmFzZVxNb2RlbCB3aXRob3V0IG1pZ3JhdGlvbnMgYnkgc2V0dGluZyBgeC10YWJsZTogZmFsc2VgCgojIyMgYHgtcGtgCgpFeHBsaWNpdGx5IHNwZWNpZnkgcHJpbWFyeSBrZXkgbmFtZSBmb3IgdGFibGUsIGlmIGl0IGlzIGRpZmZlcmVudCBmcm9tICJpZCIgCgpgYGB5YW1sCiAgICBQb3N0OgogICAgICB4LXRhYmxlOiBwb3N0cwogICAgICB4LXBrOiB1aWQKICAgICAgcHJvcGVydGllczoKICAgICAgICB1aWQ6CiAgICAgICAgICAgdHlwZTogaW50ZWdlcgogICAgICAgIHRpdGxlOgogICAgICAgICAgIHR5cGU6IHN0cmluZwpgYGAKCiMjIyBgeC1kYi10eXBlYAoKRXhwbGljaXRseSBzcGVjaWZ5IHRoZSBkYXRhYmFzZSB0eXBlIGZvciBhIGNvbHVtbi4gKE1VU1QgY29udGFpbiBvbmx5IHJlYWwgREIgdHlwZSEgKGBqc29uYCwgYGpzb25iYCwgYHV1aWRgLCBgdmFyY2hhcmAgZXRjLikpLgpJZiBgeC1kYi10eXBlYCBpcyBzZXQgdG8gYGZhbHNlYCwgcHJvcGVydHkgd2lsbCBiZSBwcm9jZXNzZWQgYXMgdmlydHVhbDsKSXQgd2lsbCBiZSBhZGRlZCBpbiBtb2RlbCBhcyBwdWJsaWMgcHJvcGVydHksIGJ1dCBza2lwcGVkIGZvciBtaWdyYXRpb25zIGdlbmVyYXRpb24uCgpFeGFtcGxlIHZhbHVlcyBvZiBgeC1kYi10eXBlYCBhcmU6CgogLSBgZmFsc2VgIChib29sZWFuIGZhbHNlKQogLSBhcyBzdHJpbmcgYW5kIGl0cyB2YWx1ZSBjYW4gYmUgbGlrZToKICAgICAtIHRleHQKICAgICAtIHRleHRbXQogICAgIC0gSU5URUdFUiBQUklNQVJZIEtFWSBBVVRPX0lOQ1JFTUVOVAogICAgIC0gZGVjaW1hbCgxMiw0KQogICAgIC0ganNvbgogICAgIC0gdmFyY2hhcgogICAgIC0gVkFSQ0hBUgogICAgIC0gU01BTExJTlQgVU5TSUdORUQgWkVST0ZJTEwKICAgICAtIE1FRElVTUlOVCgxMCkgVU5TSUdORUQgWkVST0ZJTEwgQ09NTUVOVCAiY29tbWVudCIgKG5vdGUgdGhlIGRvdWJsZSBxdW90ZXMgaGVyZSkKClN1Y2ggdmFsdWVzIGFyZSBub3QgYWxsb3dlZDoKICAgLSBgaW50IG51bGwgZGVmYXVsdCBudWxsIGFmdGVyIGxvd19wcmljZWAgKG51bGwgYW5kIGRlZmF1bHQgd2lsbCBiZSBoYW5kbGVkIGJ5IGBudWxsYWJsZWAgYW5kIGBkZWZhdWx0YCBrZXlzIHJlc3BlY3RpdmVseSkKICAgLSBNRURJVU1JTlQoMTApIFVOU0lHTkVEIFpFUk9GSUxMIE5VTEwgREVGQVVMVCAnNycgQ09NTUVOVCAnY29tbWVudCcgQUZURVIgYHNldGlgLCBBREQgSU5ERVggYHRgIChgd2ApCgojIyMgYHgtaW5kZXhlc2AKClNwZWNpZnkgdGFibGUgaW5kZXhlcwoKYGBgeWFtbAogICAgUG9zdDoKICAgICAgeC10YWJsZTogcG9zdHMKICAgICAgeC1pbmRleGVzOgogICAgICAgICAgLSAndmlzaWJsZSxwdWJsaXNoX2RhdGUnCiAgICAgICAgICAtICd1bmlxdWU6dGl0bGUnICNmb3IgdW5pcXVlIGF0dHJpYnV0ZXMgYWxzbyB1bmlxdWUgdmFsaWRhdGlvbiBjaGVjayB3aWxsIGJlIGFkZGVkCiAgICAgICAgICAtICdnaXN0Om1ldGFkYXRhJyAjZm9yIHBvc3RncmVzIHdpbGwgZ2VuZXJhdGUgaW5kZXggdXNpbmcgR0lTVCBpbmRleCB0eXBlCiAgICAgIHByb3BlcnRpZXM6CiAgICAgICAgaWQ6CiAgICAgICAgICAgdHlwZTogaW50ZWdlcgogICAgICAgICAgIHgtZGItdHlwZTogSU5URUdFUiBQUklNQVJZIEtFWSBBVVRPX0lOQ1JFTUVOVAogICAgICAgIHRpdGxlOgogICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgIHZpc2libGU6CiAgICAgICAgICAgIHR5cGU6IGJvb2xlYW4KICAgICAgICBwdWJsaXNoX2RhdGU6CiAgICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgICAgICBmb3JtYXQ6IGRhdGUKICAgICAgICBtZXRhZGF0YToKICAgICAgICAgICB0eXBlOiBvYmplY3QKICAgICAgICAgICB4LWRiLXR5cGU6IEpTT04KICAgICAgICAgICBkZWZhdWx0OiAne30nIApgYGAKCiMjIyBgeC1kYi1kZWZhdWx0LWV4cHJlc3Npb25gCgpBYmlsaXR5IHRvIHByb3ZpZGUgZGVmYXVsdCB2YWx1ZSBieSBkYXRhYmFzZSBleHByZXNzaW9uCgpgYGB5YW1sCmNyZWF0ZWRfYXQ6CiAgcmVhZE9ubHk6IHRydWUKICB0eXBlOiBzdHJpbmcKICBmb3JtYXQ6IGRhdGV0aW1lCiAgeC1kYi10eXBlOiBkYXRldGltZQogIG51bGxhYmxlOiBmYWxzZQogIHgtZGItZGVmYXVsdC1leHByZXNzaW9uOiBjdXJyZW50X3RpbWVzdGFtcCgpCmBgYAoKTm90ZTogSWYgYm90aCBgZGVmYXVsdGAgYW5kIGB4LWRiLWRlZmF1bHQtZXhwcmVzc2lvbmAgYXJlIHByZXNlbnQgdGhlbiBgZGVmYXVsdGAgd2lsbCBiZSBjb25zaWRlcmVkLgoKYGBgeWFtbApjcmVhdGVkX2F0OgogIHJlYWRPbmx5OiB0cnVlCiAgdHlwZTogc3RyaW5nCiAgZm9ybWF0OiBkYXRldGltZQogIHgtZGItdHlwZTogZGF0ZXRpbWUKICBudWxsYWJsZTogZmFsc2UKICB4LWRiLWRlZmF1bHQtZXhwcmVzc2lvbjogY3VycmVudF90aW1lc3RhbXAoKSAjIHRoaXMgd2lsbCBiZSBpZ25vcmVkCiAgZGVmYXVsdDogIjIwMTEtMTEtMTEiICMgdGhpcyB3aWxsIGJlIGNvbnNpZGVyZWQKYGBgCgpBbHNvIHNlZTogaHR0cHM6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vOC4wL2VuL2RhdGEtdHlwZS1kZWZhdWx0cy5odG1sCgojIyMgYHgtZmstb24tZGVsZXRlYAoKQWxsb3cgdG8gc2V0IGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgaW4gbWlncmF0aW9ucyBmb3IgT04gREVMRVRFIGV2ZW50IG9mIHJvdyBpbiBkYXRhYmFzZSB0YWJsZS4gRXhhbXBsZToKCmBgYHlhbWwKICBjb21wb25lbnRzOgogICAgc2NoZW1hczoKICAgICAgVXNlcjoKICAgICAgICB0eXBlOiBvYmplY3QKICAgICAgICBkZXNjcmlwdGlvbjogeCBvbi14ICh1cGRhdGV8ZGVsZXRlKSBmb3JlaWduIGtleSBjb25zdHJhaW50CiAgICAgICAgcHJvcGVydGllczoKICAgICAgICAgIGlkOgogICAgICAgICAgICB0eXBlOiBpbnRlZ2VyCiAgICAgICAgICBuYW1lOgogICAgICAgICAgICB0eXBlOiBzdHJpbmcKICAgICAgUG9zdDoKICAgICAgICB0eXBlOiBvYmplY3QKICAgICAgICBkZXNjcmlwdGlvbjogeCBvbi14ICh1cGRhdGV8ZGVsZXRlKSBmb3JlaWduIGtleSBjb25zdHJhaW50CiAgICAgICAgcHJvcGVydGllczoKICAgICAgICAgIGlkOgogICAgICAgICAgICB0eXBlOiBpbnRlZ2VyCiAgICAgICAgICB0aXRsZToKICAgICAgICAgICAgdHlwZTogc3RyaW5nCiAgICAgICAgICB1c2VyOgogICAgICAgICAgICBhbGxPZjoKICAgICAgICAgICAgICAtICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9Vc2VyJwogICAgICAgICAgICAgIC0geC1may1vbi11cGRhdGU6IENBU0NBREUKICAgICAgICAgIHVzZXJfMjoKICAgICAgICAgICAgYWxsT2Y6CiAgICAgICAgICAgICAgLSAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvVXNlcicKICAgICAgICAgICAgICAtIHgtZmstb24tdXBkYXRlOiBDQVNDQURFCiAgICAgICAgICAgICAgLSB4LWZrLW9uLWRlbGV0ZTogU0VUIE5VTEwKICAgICAgICAgIHVzZXJfMzoKICAgICAgICAgICAgYWxsT2Y6CiAgICAgICAgICAgICAgLSAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvVXNlcicKICAgICAgICAgICAgICAtIHgtZmstb24tZGVsZXRlOiBTRVQgTlVMTAogICAgICAgICAgdXNlcl80OgogICAgICAgICAgICAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvVXNlcicgIyB3aXRob3V0IGFueSBjb25zdHJhaW50cwpgYGAKCiMjIyBgeC1may1vbi11cGRhdGVgCgpBbGxvdyB0byBzZXQgZm9yZWlnbiBrZXkgY29uc3RyYWludCBpbiBtaWdyYXRpb25zIGZvciBPTiBVUERBVEUgZXZlbnQgb2Ygcm93IGluIGRhdGFiYXNlIHRhYmxlLiBGb3IgZXhhbXBsZSwgc2VlIGFib3ZlIHNlY3Rpb24gZm9yIGB4LWZrLW9uLWRlbGV0ZWAuCgojIyBNYW55LXRvLU1hbnkgcmVsYXRpb24gZGVmaW5pdGlvbgoKVGhlcmUgYXJlIHR3byB3YXlzIGZvciBkZWZpbmUgbWFueS10by1tYW55IHJlbGF0aW9uczoKCiMjIyBTaW1wbGUgbWFueS10by1tYW55IHdpdGhvdXQganVuY3Rpb24gbW9kZWwKCiAgIC0gcHJvcGVydHkgbmFtZSBmb3IgbWFueS10by1tYW55IHJlbGF0aW9uIHNob3VsZCBiZSBlcXVhbCBsb3dlci1jYXNlZCwgcGx1cmFsaXplZCByZWxhdGVkIHNjaGVtYSBuYW1lCiAgICAgCiAgIC0gcmVmZXJlbmNlZCBzY2hlbWEgc2hvdWxkIGNvbnRhaW5zIG1pcnJvcmVkIHJlZmVyZW5jZSB0byBjdXJyZW50IHNjaGVtYQogICAgIAogICAtIG1pZ3JhdGlvbiBmb3IganVuY3Rpb24gdGFibGUgY2FuIGJlIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IC0gdGFibGUgbmFtZSBzaG91bGQgYmUgW3BsdXJhbGl6ZWQsIGxvd2VyLWNhc2VkCiBzY2hlbWFfbmFtZTFdMltwbHVyYWxpemVkLCBsb3dlci1jYXNlZCBzY2hlbWEgbmFtZTJdLCBpbiBhbHBoYWJldGljYWwgb3JkZXI7CiBGb3IgZXhhbXBsZSwgZm9yIHNjaGVtYXMgUG9zdCBhbmQgVGFnIC0gdGFibGUgc2hvdWxkIGJlIHBvc3RzMnRhZ3MsIGZvciBzY2hlbWFzIFBvc3QgYW5kIEF0dGFjaGVtZW50IC0gdGFibGUgc2hvdWxkCiAgYmUgYXR0YWNobWVudHMycG9zdHMKICAKYGBgClBvc3Q6CiAgcHJvcGVydGllczoKICAuLi4KICAgIHRhZ3M6CiAgICAgIHR5cGU6IGFycmF5CiAgICAgIGl0ZW1zOgogICAgICAgICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9UYWcnCgpUYWc6CiAgcHJvcGVydGllczoKICAuLi4KICAgIHBvc3RzOgogICAgICB0eXBlOiBhcnJheQogICAgICBpdGVtczoKICAgICAgICAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvUG9zdCcKYGBgCiAgCiMjIyBNYW55LXRvLW1hbnkgd2l0aCBqdW5jdGlvbiBtb2RlbAoKVGhpcyB3YXkgYWxsb3dlZCBjcmVhdGluZyBtdWx0aXBsZSBtYW55LXRvLW1hbnkgcmVsYXRpb25zIGJldHdlZW4gdG8gbW9kZWxzIAoKLSBkZWZpbmUganVuY3Rpb24gc2NoZW1hIHdpdGggYWxsIG5lY2Vzc2FyeSBhdHRyaWJ1dGVzLiBUaGVyZSBhcmUgb25seSBvbmUgaW1wb3J0YW50IHJlcXVpcmVtZW50IC0gdGhlIGp1bmN0aW9uCiBzY2hlbWEgbmFtZQogbXVzdCBiZSBzdGFydGVkIHdpdGggcHJlZml4ICdqdW5jdGlvbl8nIChUaGlzIHByZWZpeCB3aWxsIGJlIHVzZWQgaW50ZXJuYWxseSBvbmx5IGFuZAogd2lsbCBiZSB0cmltbWVkIGJlZm9yZSB0YWJsZSBhbmQgbW9kZWwgZ2VuZXJhdGlvbikKIApgYGAKIyBNb2RlbCBUZWFtTWVtYmVycyB3aXRoIHRhYmxlIHRlYW1fbWVtYmVycyB3aWxsIGJlIGdlbmVyYXRlZCB3aXRoIGNvbHVtbnMgdGVhbV9pZCwgdXNlcl9pZCBhbmQgcm9sZQpqdW5jdGlvbl9UZWFtTWVtYmVyczoKICAgdGVhbToKICAgICAgJHJlZjogJyMvY29tcG9uZW50cy9zY2hlbWFzL1RlYW0nCiAgIHVzZXI6CiAgICAgICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9Vc2VyJwogICByb2xlOgogICAgIHR5cGU6IHN0cmluZwpgYGAKLSBCb3RoIG1hbnktdG8tbWFueSByZWxhdGVkIHNjaGVtYXMgbXVzdCBoYXZlIHByb3BlcnRpZXMgd2l0aCByZWZlcmVuY2UgdG8gImp1bmN0aW9uXyoiIHNjaGVtYS4gVGhlc2UgcHJvcGVydGllcyB3aWxsIGJlCiB1c2VkIGFzIHJlbGF0aW9uIG5hbWVzIAoKYGBgClRlYW06CiAgcHJvcGVydGllczoKICAuLi4KICAgICB0ZWFtX21lbWJlcnM6CiAgICAgICB0eXBlOiBhcnJheQogICAgICAgaXRlbXM6CiAgICAgICAgICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9qdW5jdGlvbl9UZWFtTWVtYmVycycKClVzZXI6CiAgcHJvcGVydGllczoKICAuLi4KICAgIG1lbWJlcnNoaXBzOiAjWW91IGFic29sdXRlbHkgZnJlZSB3aXRoIG5hbWluZyBmb3IgcmVsYXRpb25zaGlwIGF0dHJpYnV0ZXMKICAgICAgdHlwZTogYXJyYXkKICAgICAgaXRlbXM6CiAgICAgICAgJHJlZjogJyMvY29tcG9uZW50cy9zY2hlbWFzL2p1bmN0aW9uX1RlYW1NZW1iZXJzJwpgYGAKICAKIC0gc2VlIGJvdGggZXhhbXBsZXMgaGVyZSBbdGVzdHMvc3BlY3MvbWFueTJtYW55LnlhbWxdKHRlc3RzL3NwZWNzL21hbnkybWFueS55YW1sKQogCgojIyBIYW5kbGluZyBvZiBgTk9UIE5VTExgIGNvbnN0cmFpbnRzCgpgTk9UIE5VTExgIGluIERCIG1pZ3JhdGlvbnMgaXMgZGV0ZXJtaW5lZCBieSBgbnVsbGFibGVgIGFuZCBgcmVxdWlyZWRgIHByb3BlcnRpZXMgb2YgdGhlIE9wZW5BUEkgc2NoZW1hLgplLmcuIGF0dHJpYnV0ZSA9ICdteV9wcm9wZXJ0eScuCgotIElmIHlvdSBkZWZpbmUgYXR0cmlidXRlIG5laXRoZXIgInJlcXVpcmVkIiBub3IgdmlhICJudWxsYWJsZSIsIHRoZW4gaXQgaXMgYnkgZGVmYXVsdCBgTlVMTGA6CgpgYGB5YW1sCiAgRXhhbXBsZVNjaGVtYToKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHR5cGU6IHN0cmluZwpgYGAKCi0gSWYgeW91IGRlZmluZSBhdHRyaWJ1dGUgaW4gInJlcXVpcmVkIiwgdGhlbiBpdCBpcyBgTk9UIE5VTExgCgpgYGB5YW1sCiAgRXhhbXBsZVNjaGVtYToKICAgIHJlcXVpcmVkOgogICAgIC0gbXlfcHJvcGVydHkKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHR5cGU6IHN0cmluZwpgYGAKCi0gSWYgeW91IGRlZmluZSBhdHRyaWJ1dGUgdmlhICJudWxsYWJsZSIsIHRoZW4gaXQgb3ZlcnJpZGVzICJyZXF1aXJlZCIsIGUuZy4gYWxsb3cgYE5VTExgIGluIHRoaXMgY2FzZToKCmBgYHlhbWwKICBFeGFtcGxlU2NoZW1hOgogICAgcmVxdWlyZWQ6CiAgICAgIC0gbXlfcHJvcGVydHkKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgIG51bGxhYmxlOiB0cnVlCmBgYAoKLSBJZiB5b3UgZGVmaW5lIGF0dHJpYnV0ZSB2aWEgIm51bGxhYmxlIiwgdGhlbiBpdCBvdmVycmlkZXMgInJlcXVpcmVkIiwgZS5nLiBgTk9UIE5VTExgIGluIHRoaXMgY2FzZToKCmBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcmVxdWlyZWQ6CiAgICBwcm9wZXJ0aWVzOgogICAgICBteV9wcm9wZXJ0eToKICAgICAgICB0eXBlOiBzdHJpbmcKICAgICAgICBudWxsYWJsZTogZmFsc2UKYGBgCgojIyBIYW5kbGluZyBvZiBgZW51bWAgKCNlbnVtKQpJdCB3b3JrcyBvbiBhbGwgMyBEQjogTXlTUUwsIE1hcmlhRGIgYW5kIFBnU1FMLgoKIGBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcHJvcGVydGllczoKICAgICAgbXlfcHJvcGVydHk6CiAgICAgICAgZW51bToKICAgICAgICAgIC0gb25lCiAgICAgICAgICAtIHR3bwogICAgICAgICAgLSB0aHJlZQpgYGAKCk5vdGU6IENoYW5nZSBpbiBlbnVtIHZhbHVlcyBhcmUgbm90IHZlcnkgc2ltcGxlLiBGb3IgTXlzcWwgYW5kIE1hcmlhZGIsIG1pZ3JhdGlvbnMgd2lsbCBiZSBnZW5lcmF0ZWQgYnV0IGluIG1hbnkgY2FzZXMgY3VzdG9tIG1vZGlmaWNhdGlvbiBpbiBpdCBhcmUgcmVxdWlyZWQuIEZvciBQZ3NxbCBtaWdyYXRpb25zIGZvciBjaGFuZ2UgaW4gZW51bSB2YWx1ZXMgd2lsbCBub3QgYmUgZ2VuZXJhdGVkLiBJdCBzaG91bGQgYmUgaGFuZGxlZCBtYW51YWxseS4KCiMjIEhhbmRsaW5nIG9mIGBudW1lcmljYCAoI251bWVyaWMsICNNYXJpYURiKQoKcHJlY2lzaW9uLWRlZmF1bHQgPSAxMApzY2FsZS1kZWZhdWx0ID0gMgoKLSBZb3UgY2FuIGRlZmluZSBhdHRyaWJ1dGUgbGlrZSAibnVtZXJpYyhwcmVjaXNpb24sc2NhbGUpIjoKIGBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcHJvcGVydGllczoKICAgICAgbXlfcHJvcGVydHk6CiAgICAgICAgeC1kYi10eXBlOiBkZWNpbWFsKDEyLDQpCmBgYApEQi1SZXN1bHQgPSBkZWNpbWFsKDEyLDQpCgotIFlvdSBjYW4gZGVmaW5lIGF0dHJpYnV0ZSBsaWtlICJudW1lcmljKHByZWNpc2lvbikiIHdpdGggZGVmYXVsdCBzY2FsZS1kZWZhdWx0ID0gMjoKIGBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcHJvcGVydGllczoKICAgICAgbXlfcHJvcGVydHk6CiAgICAgICAgeC1kYi10eXBlOiBkZWNpbWFsKDEyKQpgYGAKREItUmVzdWx0ID0gZGVjaW1hbCgxMiwyKQoKLSBZb3UgY2FuIGRlZmluZSBhdHRyaWJ1dGUgbGlrZSAibnVtZXJpYyIgd2l0aCBwcmVjaXNpb24tZGVmYXVsdCA9IDEwIGFuZCBzY2FsZS1kZWZhdWx0ID0gMjoKIGBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcHJvcGVydGllczoKICAgICAgbXlfcHJvcGVydHk6CiAgICAgICAgeC1kYi10eXBlOiBkZWNpbWFsCmBgYApEQi1SZXN1bHQgPSBkZWNpbWFsKDEwLDIpCgoKIyMgQXNzdW1wdGlvbnMKCldoZW4gZ2VuZXJhdGluZyBjb2RlIGZyb20gYW4gT3BlbkFQSSBkZXNjcmlwdGlvbiB0aGVyZSBhcmUgbWFueSBwb3NzaWJsZSB3YXlzIHRvIGFjaGl2ZSBhIGZpdHRpbmcgcmVzdWx0LgpUaHVzIHRoZXJlIGFyZSBzb21lIGFzc3VtcHRpb25zIGFuZCBsaW1pdGF0aW9ucyB0aGF0IGFyZSBjdXJyZW50bHkgYXBwbGllZCB0byBtYWtlIHRoaXMgd29yay4KSGVyZSBpcyBhIChwb3NzaWJseSBpbmNvbXBsZXRlKSBsaXN0OgoKLSBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiB3b3JrcyBiZXN0IHdpdGggT3BlbkFQSSBkZXNjcmlwdGlvbiB0aGF0IGZvbGxvd3MgdGhlIFtKU09OOkFQSV0oaHR0cHM6Ly9qc29uYXBpLm9yZy8pIGd1aWRlbGluZXMuCiAgLSBUaGUgcmVxdWVzdCBhbmQgcmVzcG9uc2UgZm9ybWF0L3NjaGVtYSBpcyBjdXJyZW50bHkgbm90IGV4dHJhY3RlZCBmcm9tIE9wZW5BUEkgc2NoZW1hIGFuZCBtYXkgbmVlZCB0byBiZSBhZGp1c3RlZCBtYW51YWxseSBpZiBpdCBkb2VzIG5vdCBmb2xsb3cgSlNPTjpBUEkKLSBjb2x1bW4vZmllbGQvcHJvcGVydHkgd2l0aCBuYW1lIGBpZGAgaXMgY29uc2lkZXJlZCBhcyBQcmltYXJ5IEtleSBieSB0aGlzIGxpYnJhcnkgYW5kIGl0IGlzIGF1dG9tYXRpY2FsbHkgaGFuZGxlZCBieSBEQi9ZaWk7IHNvIHJlbW92ZSBpdCBmcm9tIHZhbGlkYXRpb24gYHJ1bGVzKClgCiAgLSBvdGhlciBmaWVsZHMgY2FuIGN1cnJlbnRseSBiZSB1c2VkIGFzIHByaW1hcnkga2V5cyB1c2luZyB0aGUgYHgtcGtgIE9wZW5BUEkgZXh0ZW5zaW9uIChzZWUgYmVsb3cpIGJ1dCBpdCBtYXkgbm90IGJlIHdvcmsgY29ycmVjdGx5IGluIGFsbCBjYXNlcywgcGxlYXNlIHJlcG9ydCBidWdzIGlmIHlvdSBmaW5kIHRoZW0uCgpPdGhlciB0aGluZ3MgdG8ga2VlcCBpbiBtaW5kOgoKIyMjIEFkZGluZyBjb2x1bW5zIHRvIGV4aXN0aW5nIHRhYmxlcwoKV2hlbiBhZGRpbmcgbmV3IGZpZWxkcyBpbiB0aGUgQVBJIG1vZGVscywgbmV3IG1pZ3JhdGlvbnMgd2lsbCBiZSBnZW5lcmF0ZWQgdG8gYWRkIHRoZXNlIGZpZWxkcyB0byB0aGUgdGFibGUuCkZvciBhIHByb2plY3QgdGhhdCBpcyBhbHJlYWR5IGluIHByb2R1Y3Rpb24sIGl0IHNob3VsZCBiZSBjb25zaWRlcmVkIHRvIGFkanVzdCB0aGUgZ2VuZXJhdGVkIG1pZ3JhdGlvbiB0byBhZGQgZGVmYXVsdAp2YWx1ZXMgZm9yIGV4aXN0aW5nIGRhdGEgcmVjb3Jkcy4KCk9uZSBjYXNlIHdoZXJlIHRoaXMgaXMgaW1wb3J0YW50IGlzIHRoZSBhZGRpdGlvbiBvZiBhIG5ldyBjb2x1bW4gd2l0aCBgTk9UIE5VTExgIGNvbnRyYWludCwgd2hpY2ggZG9lcyBub3QgcHJvdmlkZSBhIGRlZmF1bHQgdmFsdWUuClN1Y2ggYSBtaWdyYXRpb24gd2lsbCBmYWlsIHdoZW4gdGhlIHRhYmxlIGlzIG5vdCBlbXB0eToKCmBgYHBocAokdGhpcy0+YWRkQ29sdW1uKCd7eyVjb21wYW55fX0nLCAnbmFtZScsICR0aGlzLT5zdHJpbmcoMTI4KS0+bm90TnVsbCgpKTsKYGBgCgpGYWlscyBvbiBhIFBvc3RncmVTUUwgZGF0YWJhc2Ugd2l0aAoKPiBhZGQgY29sdW1uIG5hbWUgc3RyaW5nKDEyOCkgTk9UIE5VTEwgdG8gdGFibGUge3slY29tcGFueX19IC4uLkV4Y2VwdGlvbjogU1FMU1RBVEVbMjM1MDJdOiBOb3QgbnVsbCB2aW9sYXRpb246IDcgRVJST1I6ICBjb2x1bW4gIm5hbWUiIGNvbnRhaW5zIG51bGwgdmFsdWVzCgpUaGUgc29sdXRpb24gd291bGQgYmUgdG8gY3JlYXRlIHRoZSBjb2x1bW4sIGFsbG93aW5nIE5VTEwsIHNldCB0aGUgdmFsdWUgdG8gYSBkZWZhdWx0IGFuZCBhZGQgdGhlIG51bGwgY29uc3RyYWludCBsYXRlci4KCmBgYHBocAokdGhpcy0+YWRkQ29sdW1uKCd7eyVjb21wYW55fX0nLCAnbmFtZScsICR0aGlzLT5zdHJpbmcoMTI4KS0+bnVsbCgpKTsKJHRoaXMtPnVwZGF0ZSgne3slY29tcGFueX19JywgWyduYW1lJyA9PiAnTm8gbmFtZSddKTsKJHRoaXMtPmFsdGVyQ29sdW1uKCd7eyVjb21wYW55fX0nLCAnbmFtZScsICR0aGlzLT5zdHJpbmcoMTI4KS0+bm90TnVsbCgpKTsKYGBgCgojIyBTY3JlZW5zaG90cwoKR2lpIEdlbmVyYXRvciBGb3JtOgoKIVtHaWkgR2VuZXJhdG9yIEZvcm1dKGRvYy9zY3JlZW5zaG90LWZvcm0ucG5nKQoKR2VuZXJhdGVkIGZpbGVzOgoKIVtHaWkgR2VuZXJhdGVkIEZpbGVzXShkb2Mvc2NyZWVuc2hvdC1maWxlcy5wbmcpCgoKIyBEZXZlbG9wbWVudAoKVG8gY29udHJpYnV0ZSBvciBwbGF5IGFyb3VuZCwgc3RlcHMgdG8gc2V0IHVwIHRoaXMgcHJvamVjdCB1cCBsb2NhbGx5IGFyZSBpbiBbQ09OVFJJQlVUSU5HLm1kXSguL0NPTlRSSUJVVElORy5tZCkuCgoKIyBTdXBwb3J0CgoqKk5lZWQgaGVscCB3aXRoIHlvdXIgQVBJIHByb2plY3Q/KioKClByb2Zlc3Npb25hbCBzdXBwb3J0LCBjb25zdWx0aW5nIGFzIHdlbGwgYXMgc29mdHdhcmUgZGV2ZWxvcG1lbnQgc2VydmljZXMgYXJlIGF2YWlsYWJsZToKCmh0dHBzOi8vd3d3LmNlYmUuY2MvZW4vY29udGFjdAoKRGV2ZWxvcG1lbnQgb2YgdGhpcyBsaWJyYXJ5IGlzIHNwb25zb3JlZCBieSBbY2ViZS46Y2xvdWQ6ICJZb3VyIFByb2Zlc3Npb25hbCBEZXBsb3ltZW50IFBsYXRmb3JtIl0oaHR0cHM6Ly9jZWJlLmNsb3VkKS4K - readmeEtag: '"bf7ab439d809ee30083eccda075a795efeca63430649b4c63adee1919799b20c"' - readmeLastModified: Tue, 04 Apr 2023 11:31:16 GMT + IyB5aWkyLW9wZW5hcGkKClJFU1QgQVBJIGFwcGxpY2F0aW9uIGdlbmVyYXRvciBmb3IgWWlpMiwgb3BlbmFwaSAzLjAgWUFNTCAtPiBZaWkyLgoKQmFzZSBvbiBbR2lpLCB0aGUgWWlpIEZyYW1ld29yayBDb2RlIEdlbmVyYXRvcl0oaHR0cHM6Ly93d3cueWlpZnJhbWV3b3JrLmNvbS9leHRlbnNpb24veWlpc29mdC95aWkyLWdpaSkuCgpbIVtMYXRlc3QgU3RhYmxlIFZlcnNpb25dKGh0dHBzOi8vcG9zZXIucHVneC5vcmcvY2ViZS95aWkyLW9wZW5hcGkvdi9zdGFibGUpXShodHRwczovL3BhY2thZ2lzdC5vcmcvcGFja2FnZXMvY2ViZS95aWkyLW9wZW5hcGkpClshW0xhdGVzdCBBbHBoYSBWZXJzaW9uXShodHRwczovL3Bvc2VyLnB1Z3gub3JnL2NlYmUveWlpMi1vcGVuYXBpL3YvdW5zdGFibGUpXShodHRwczovL3BhY2thZ2lzdC5vcmcvcGFja2FnZXMvY2ViZS95aWkyLW9wZW5hcGkpClshW1RvdGFsIERvd25sb2Fkc10oaHR0cHM6Ly9wb3Nlci5wdWd4Lm9yZy9jZWJlL3lpaTItb3BlbmFwaS9kb3dubG9hZHMpXShodHRwczovL3BhY2thZ2lzdC5vcmcvcGFja2FnZXMvY2ViZS95aWkyLW9wZW5hcGkpClshW0xpY2Vuc2VdKGh0dHBzOi8vcG9zZXIucHVneC5vcmcvY2ViZS95aWkyLW9wZW5hcGkvbGljZW5zZSldKGh0dHBzOi8vcGFja2FnaXN0Lm9yZy9wYWNrYWdlcy9jZWJlL3lpaTItb3BlbmFwaSkKIVt5aWkyLW9wZW5hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3lpaTItb3BlbmFwaS93b3JrZmxvd3MveWlpMi1vcGVuYXBpL2JhZGdlLnN2Zz9icmFuY2g9d2lwKQoKIyMgVExEUjsgd2hhdCBpcyB0aGlzPwoKQSBjb2RlIGdlbmVyYXRvciBmb3IgT3BlbkFQSSBhbmQgWWlpIEZyYW1ld29yayBiYXNlZCBQSFAgQVBJIGFwcGxpY2F0aW9uLgoKSW5wdXQ6IFtPcGVuQVBJIDMuMCBZQU1MIG9yIEpTT05dKGh0dHBzOi8vZ2l0aHViLmNvbS9PQUkvT3BlbkFQSS1TcGVjaWZpY2F0aW9uI3RoZS1vcGVuYXBpLXNwZWNpZmljYXRpb24pICh2aWEgW2NlYmUvcGhwLW9wZW5hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3BocC1vcGVuYXBpKSkKCk91dHB1dDogWWlpIEZyYW1ld29yayBBcHBsaWNhdGlvbiB3aXRoIENvbnRyb2xsZXJzLCBNb2RlbHMsIGRhdGFiYXNlIHNjaGVtYQoKCiMjIEZlYXR1cmVzCgpDdXJyZW50bHkgYXZhaWxhYmxlIGZlYXR1cmVzOgoKLSBHZW5lcmF0ZSBQYXRoIG1hcHBpbmdzLCAqKkNvbnRyb2xsZXJzKiogYW5kIEFjdGlvbnMgKipmb3IgQVBJIEVuZHBvaW50cyoqLiBDUlVEIEVuZHBvaW50cyBhcmUgcmVhZHktdG8tdXNlLCBvdGhlciBFbmRwb2ludHMgYXJlIGdlbmVyYXRlZCBhcyBhYnN0cmFjdCBmdW5jdGlvbnMgdGhhdCBuZWVkIHRvIGJlIGltcGxlbWVudGVkCi0gR2VuZXJhdGUgKipNb2RlbHMqKiBhbmQgdmFsaWRhdGlvbiBiYXNlZCBvbiBPcGVuQVBJIFNjaGVtYQotIEdlbmVyYXRlICoqRGF0YWJhc2UgU2NoZW1hKiogZnJvbSBPcGVuQVBJIFNjaGVtYQotIEdlbmVyYXRlcyAqKkRhdGFiYXNlIE1pZ3JhdGlvbnMqKiBmb3Igc2NoZW1hIGNoYW5nZXMKLSBQcm92aWRlICoqRHVtbXkgRGF0YSoqIHZpYSBGYWtlciBmb3IgZGV2ZWxvcG1lbnQKCiMjIFJlcXVpcmVtZW50cwoKLSBQSFAgNy4xIG9yIGhpZ2hlciAod29ya3MgZmluZSB3aXRoIFBIUCA4KQoKCiMjIEluc3RhbGwKCiAgICBjb21wb3NlciByZXF1aXJlIGNlYmUveWlpMi1vcGVuYXBpOl4yLjBAYmV0YQoKIyMgVXNhZ2UKCllvdSBjYW4gdXNlIHRoaXMgcGFja2FnZSBpbiB5b3VyIGV4aXN0aW5nIGFwcGxpY2F0aW9uIG9yIHN0YXJ0IGEgbmV3IHByb2plY3QgdXNpbmcgdGhlClt5aWkyLWFwcC1hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3lpaTItYXBwLWFwaSkgYXBwbGljYXRpb24gdGVtcGxhdGUuCkZvciB1c2FnZSBvZiB0aGUgdGVtcGxhdGUsIHNlZSBpbnN0cnVjdGlvbnMgaW4gdGhlIHRlbXBsYXRlIHJlcG8gcmVhZG1lLgoKSW4geW91ciBleGlzdGluZyBZaWkgYXBwbGljYXRpb24gY29uZmlnICh3b3JrcyBmb3IgY29uc29sZSBhcyB3ZWxsIGFzIHdlYik6CgpgYGBwaHAKPD9waHAKJGNvbmZpZyA9IFsKICAgIC8vIC4uLiB0aGlzIGlzIHlvdXIgYXBwbGljYXRpb24gY29uZmlnIC4uLgpdOwoKaWYgKFlJSV9FTlZfREVWKSB7CiAgICAvLyBlbmFibGUgR2lpIG1vZHVsZQogICAgJGNvbmZpZ1snYm9vdHN0cmFwJ11bXSA9ICdnaWknOwogICAgJGNvbmZpZ1snbW9kdWxlcyddWydnaWknXSA9IFsKICAgICAgICAnY2xhc3MnID0+IFx5aWlcZ2lpXE1vZHVsZTo6Y2xhc3MsCiAgICAgICAgJ2dlbmVyYXRvcnMnID0+IFsKICAgICAgICAgICAgLy8gYWRkIEFwaUdlbmVyYXRvciB0byBHaWkgbW9kdWxlCiAgICAgICAgICAgICdhcGknID0+IFxjZWJlXHlpaTJvcGVuYXBpXGdlbmVyYXRvclxBcGlHZW5lcmF0b3I6OmNsYXNzLAoKICAgICAgICAgICAgLy8gLS0tLS0tLS0tIE9SIC0tLS0tLS0tLQogICAgICAgICAgICAvLyB0byBkaXNhYmxlIGdlbmVyYXRpb24gb2YgbWlncmF0aW9ucyBmaWxlcyBvciB3aXRoIGRlZmF1bHQgY29uZmlnIGNoYW5nZQogICAgICAgICAgICAnYXBpJyA9PiBbCiAgICAgICAgICAgICAgJ2NsYXNzJyA9PiBcY2ViZVx5aWkyb3BlbmFwaVxnZW5lcmF0b3JcQXBpR2VuZXJhdG9yOjpjbGFzcywKICAgICAgICAgICAgICAnZ2VuZXJhdGVNaWdyYXRpb25zJyA9PiBmYWxzZSwgIyB0aGlzIGNvbmZpZyBjYW4gYWxzbyBiZSBhcHBsaWVkIGluIENMSSBjb21tYW5kCiAgICAgICAgICAgIF0sCiAgICAgICAgXSwKICAgIF07Cn0KCnJldHVybiAkY29uZmlnOwpgYGAKClRvIHVzZSB0aGUgd2ViIGdlbmVyYXRvciwgb3BlbiBgaW5kZXgucGhwP3I9Z2lpYCBhbmQgc2VsZWN0IHRoZSBgUkVTVCBBUEkgR2VuZXJhdG9yYC4KCk9uIGNvbnNvbGUgeW91IGNhbiBydW4gdGhlIGdlbmVyYXRvciB3aXRoIGAuL3lpaSBnaWkvYXBpIC0tb3BlbkFwaVBhdGg9QGFwcC9vcGVuYXBpLnlhbWxgLiBXaGVyZSBgQGFwcC9vcGVuYXBpLnlhbWxgIHNob3VsZCBiZSB0aGUgYWJzb2x1dGUgcGF0aCB0byB5b3VyIE9wZW5BUEkgc3BlYyBmaWxlLiBUaGlzIGNhbiBiZSBKU09OIGFzIHdlbGwgYXMgWUFNTCAoc2VlIGFsc28gW2NlYmUvcGhwLW9wZW5hcGldKGh0dHBzOi8vZ2l0aHViLmNvbS9jZWJlL3BocC1vcGVuYXBpLykgZm9yIHN1cHBvcnRlZCBmb3JtYXRzKS4KClJ1biBgLi95aWkgZ2lpL2FwaSAtLWhlbHBgIGZvciBhbGwgb3B0aW9ucy4gRXhhbXBsZTogRGlzYWJsZSBnZW5lcmF0aW9uIG9mIG1pZ3JhdGlvbnMgZmlsZXMgYC4veWlpIGdpaS9hcGkgLS1nZW5lcmF0ZU1pZ3JhdGlvbnM9MGAKClNlZSBbUGV0c3RvcmUgZXhhbXBsZV0oaHR0cHM6Ly9naXRodWIuY29tL09BSS9PcGVuQVBJLVNwZWNpZmljYXRpb24vYmxvYi9tYWluL2V4YW1wbGVzL3YzLjAvcGV0c3RvcmUueWFtbCkgZm9yIGV4YW1wbGUgT3BlbkFQSSBzcGVjLgoKCiMjIE9wZW5BUEkgZXh0ZW5zaW9ucwoKVGhpcyBsaWJyYXJ5IHVuZGVyc3RhbmRzIHRoZSBmb2xsb3dpbmcgZXh0ZW5zaW9ucyB0byB0aGUgT3BlbkFQSSBzcGVjOgoKIyMjIGB4LWZha2VyYAoKWW91IG1heSBzcGVjaWZ5IGN1c3RvbSBQSFAgY29kZSBmb3IgZ2VuZXJhdGluZyBmYWtlIGRhdGEgZm9yIGEgcHJvcGVydHk6CgpgYGB5YW1sCiAgICBQb3N0OgogICAgICBwcm9wZXJ0aWVzOgogICAgICAgIGlkOgogICAgICAgICAgdHlwZTogaW50ZWdlcgogICAgICAgIHRhZ3M6CiAgICAgICAgICB0eXBlOiBhcnJheQogICAgICAgICAgaXRlbXM6CiAgICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgICAgZXhhbXBsZTogWydvbmUnLCAndHdvJ10KICAgICAgICAgIHgtZmFrZXI6ICIkZmFrZXItPnJhbmRvbUVsZW1lbnRzKFsnb25lJywgJ3R3bycsICd0aHJlZScsICdmb3VyJ10pIgpgYGAKCiMjIyBgeC10YWJsZWAKClNwZWNpZnkgdGhlIHRhYmxlIG5hbWUgZm9yIGEgU2NoZW1hIHRoYXQgZGVmaW5lcyBhIG1vZGVsIHdoaWNoIGlzIHN0b3JlZCBpbiB0aGUgZGF0YWJhc2UuCllvdSBjYW4gZ2VuZXJhdGUgbm9uLWRiIG1vZGVsIGJhc2VkIG9uIFx5aWlcYmFzZVxNb2RlbCB3aXRob3V0IG1pZ3JhdGlvbnMgYnkgc2V0dGluZyBgeC10YWJsZTogZmFsc2VgCgojIyMgYHgtcGtgCgpFeHBsaWNpdGx5IHNwZWNpZnkgcHJpbWFyeSBrZXkgbmFtZSBmb3IgdGFibGUsIGlmIGl0IGlzIGRpZmZlcmVudCBmcm9tICJpZCIgCgpgYGB5YW1sCiAgICBQb3N0OgogICAgICB4LXRhYmxlOiBwb3N0cwogICAgICB4LXBrOiB1aWQKICAgICAgcHJvcGVydGllczoKICAgICAgICB1aWQ6CiAgICAgICAgICAgdHlwZTogaW50ZWdlcgogICAgICAgIHRpdGxlOgogICAgICAgICAgIHR5cGU6IHN0cmluZwpgYGAKCiMjIyBgeC1kYi10eXBlYAoKRXhwbGljaXRseSBzcGVjaWZ5IHRoZSBkYXRhYmFzZSB0eXBlIGZvciBhIGNvbHVtbi4gKE1VU1QgY29udGFpbiBvbmx5IHJlYWwgREIgdHlwZSEgKGBqc29uYCwgYGpzb25iYCwgYHV1aWRgLCBgdmFyY2hhcmAgZXRjLikpLgpJZiBgeC1kYi10eXBlYCBpcyBzZXQgdG8gYGZhbHNlYCwgcHJvcGVydHkgd2lsbCBiZSBwcm9jZXNzZWQgYXMgdmlydHVhbDsKSXQgd2lsbCBiZSBhZGRlZCBpbiBtb2RlbCBhcyBwdWJsaWMgcHJvcGVydHksIGJ1dCBza2lwcGVkIGZvciBtaWdyYXRpb25zIGdlbmVyYXRpb24uCgpFeGFtcGxlIHZhbHVlcyBvZiBgeC1kYi10eXBlYCBhcmU6CgogLSBgZmFsc2VgIChib29sZWFuIGZhbHNlKQogLSBhcyBzdHJpbmcgYW5kIGl0cyB2YWx1ZSBjYW4gYmUgbGlrZToKICAgICAtIHRleHQKICAgICAtIHRleHRbXQogICAgIC0gSU5URUdFUiBQUklNQVJZIEtFWSBBVVRPX0lOQ1JFTUVOVAogICAgIC0gZGVjaW1hbCgxMiw0KQogICAgIC0ganNvbgogICAgIC0gdmFyY2hhcgogICAgIC0gVkFSQ0hBUgogICAgIC0gU01BTExJTlQgVU5TSUdORUQgWkVST0ZJTEwKICAgICAtIE1FRElVTUlOVCgxMCkgVU5TSUdORUQgWkVST0ZJTEwgQ09NTUVOVCAiY29tbWVudCIgKG5vdGUgdGhlIGRvdWJsZSBxdW90ZXMgaGVyZSkKClN1Y2ggdmFsdWVzIGFyZSBub3QgYWxsb3dlZDoKICAgLSBgaW50IG51bGwgZGVmYXVsdCBudWxsIGFmdGVyIGxvd19wcmljZWAgKG51bGwgYW5kIGRlZmF1bHQgd2lsbCBiZSBoYW5kbGVkIGJ5IGBudWxsYWJsZWAgYW5kIGBkZWZhdWx0YCBrZXlzIHJlc3BlY3RpdmVseSkKICAgLSBNRURJVU1JTlQoMTApIFVOU0lHTkVEIFpFUk9GSUxMIE5VTEwgREVGQVVMVCAnNycgQ09NTUVOVCAnY29tbWVudCcgQUZURVIgYHNldGlgLCBBREQgSU5ERVggYHRgIChgd2ApCgojIyMgYHgtaW5kZXhlc2AKClNwZWNpZnkgdGFibGUgaW5kZXhlcwoKYGBgeWFtbAogICAgUG9zdDoKICAgICAgeC10YWJsZTogcG9zdHMKICAgICAgeC1pbmRleGVzOgogICAgICAgICAgLSAndmlzaWJsZSxwdWJsaXNoX2RhdGUnCiAgICAgICAgICAtICd1bmlxdWU6dGl0bGUnICNmb3IgdW5pcXVlIGF0dHJpYnV0ZXMgYWxzbyB1bmlxdWUgdmFsaWRhdGlvbiBjaGVjayB3aWxsIGJlIGFkZGVkCiAgICAgICAgICAtICdnaXN0Om1ldGFkYXRhJyAjZm9yIHBvc3RncmVzIHdpbGwgZ2VuZXJhdGUgaW5kZXggdXNpbmcgR0lTVCBpbmRleCB0eXBlCiAgICAgIHByb3BlcnRpZXM6CiAgICAgICAgaWQ6CiAgICAgICAgICAgdHlwZTogaW50ZWdlcgogICAgICAgICAgIHgtZGItdHlwZTogSU5URUdFUiBQUklNQVJZIEtFWSBBVVRPX0lOQ1JFTUVOVAogICAgICAgIHRpdGxlOgogICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgIHZpc2libGU6CiAgICAgICAgICAgIHR5cGU6IGJvb2xlYW4KICAgICAgICBwdWJsaXNoX2RhdGU6CiAgICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgICAgICBmb3JtYXQ6IGRhdGUKICAgICAgICBtZXRhZGF0YToKICAgICAgICAgICB0eXBlOiBvYmplY3QKICAgICAgICAgICB4LWRiLXR5cGU6IEpTT04KICAgICAgICAgICBkZWZhdWx0OiAne30nIApgYGAKCiMjIyBgeC1kYi1kZWZhdWx0LWV4cHJlc3Npb25gCgpBYmlsaXR5IHRvIHByb3ZpZGUgZGVmYXVsdCB2YWx1ZSBieSBkYXRhYmFzZSBleHByZXNzaW9uCgpgYGB5YW1sCmNyZWF0ZWRfYXQ6CiAgcmVhZE9ubHk6IHRydWUKICB0eXBlOiBzdHJpbmcKICBmb3JtYXQ6IGRhdGV0aW1lCiAgeC1kYi10eXBlOiBkYXRldGltZQogIG51bGxhYmxlOiBmYWxzZQogIHgtZGItZGVmYXVsdC1leHByZXNzaW9uOiBjdXJyZW50X3RpbWVzdGFtcCgpCmBgYAoKTm90ZTogSWYgYm90aCBgZGVmYXVsdGAgYW5kIGB4LWRiLWRlZmF1bHQtZXhwcmVzc2lvbmAgYXJlIHByZXNlbnQgdGhlbiBgZGVmYXVsdGAgd2lsbCBiZSBjb25zaWRlcmVkLgoKYGBgeWFtbApjcmVhdGVkX2F0OgogIHJlYWRPbmx5OiB0cnVlCiAgdHlwZTogc3RyaW5nCiAgZm9ybWF0OiBkYXRldGltZQogIHgtZGItdHlwZTogZGF0ZXRpbWUKICBudWxsYWJsZTogZmFsc2UKICB4LWRiLWRlZmF1bHQtZXhwcmVzc2lvbjogY3VycmVudF90aW1lc3RhbXAoKSAjIHRoaXMgd2lsbCBiZSBpZ25vcmVkCiAgZGVmYXVsdDogIjIwMTEtMTEtMTEiICMgdGhpcyB3aWxsIGJlIGNvbnNpZGVyZWQKYGBgCgpBbHNvIHNlZTogaHR0cHM6Ly9kZXYubXlzcWwuY29tL2RvYy9yZWZtYW4vOC4wL2VuL2RhdGEtdHlwZS1kZWZhdWx0cy5odG1sCgojIyMgYHgtZmstb24tZGVsZXRlYAoKQWxsb3cgdG8gc2V0IGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgaW4gbWlncmF0aW9ucyBmb3IgT04gREVMRVRFIGV2ZW50IG9mIHJvdyBpbiBkYXRhYmFzZSB0YWJsZS4gRXhhbXBsZToKCmBgYHlhbWwKICBjb21wb25lbnRzOgogICAgc2NoZW1hczoKICAgICAgVXNlcjoKICAgICAgICB0eXBlOiBvYmplY3QKICAgICAgICBkZXNjcmlwdGlvbjogeCBvbi14ICh1cGRhdGV8ZGVsZXRlKSBmb3JlaWduIGtleSBjb25zdHJhaW50CiAgICAgICAgcHJvcGVydGllczoKICAgICAgICAgIGlkOgogICAgICAgICAgICB0eXBlOiBpbnRlZ2VyCiAgICAgICAgICBuYW1lOgogICAgICAgICAgICB0eXBlOiBzdHJpbmcKICAgICAgUG9zdDoKICAgICAgICB0eXBlOiBvYmplY3QKICAgICAgICBkZXNjcmlwdGlvbjogeCBvbi14ICh1cGRhdGV8ZGVsZXRlKSBmb3JlaWduIGtleSBjb25zdHJhaW50CiAgICAgICAgcHJvcGVydGllczoKICAgICAgICAgIGlkOgogICAgICAgICAgICB0eXBlOiBpbnRlZ2VyCiAgICAgICAgICB0aXRsZToKICAgICAgICAgICAgdHlwZTogc3RyaW5nCiAgICAgICAgICB1c2VyOgogICAgICAgICAgICBhbGxPZjoKICAgICAgICAgICAgICAtICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9Vc2VyJwogICAgICAgICAgICAgIC0geC1may1vbi11cGRhdGU6IENBU0NBREUKICAgICAgICAgIHVzZXJfMjoKICAgICAgICAgICAgYWxsT2Y6CiAgICAgICAgICAgICAgLSAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvVXNlcicKICAgICAgICAgICAgICAtIHgtZmstb24tdXBkYXRlOiBDQVNDQURFCiAgICAgICAgICAgICAgLSB4LWZrLW9uLWRlbGV0ZTogU0VUIE5VTEwKICAgICAgICAgIHVzZXJfMzoKICAgICAgICAgICAgYWxsT2Y6CiAgICAgICAgICAgICAgLSAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvVXNlcicKICAgICAgICAgICAgICAtIHgtZmstb24tZGVsZXRlOiBTRVQgTlVMTAogICAgICAgICAgdXNlcl80OgogICAgICAgICAgICAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvVXNlcicgIyB3aXRob3V0IGFueSBjb25zdHJhaW50cwpgYGAKCiMjIyBgeC1may1vbi11cGRhdGVgCgpBbGxvdyB0byBzZXQgZm9yZWlnbiBrZXkgY29uc3RyYWludCBpbiBtaWdyYXRpb25zIGZvciBPTiBVUERBVEUgZXZlbnQgb2Ygcm93IGluIGRhdGFiYXNlIHRhYmxlLiBGb3IgZXhhbXBsZSwgc2VlIGFib3ZlIHNlY3Rpb24gZm9yIGB4LWZrLW9uLWRlbGV0ZWAuCgojIyMgYHgtZmstY29sdW1uLW5hbWVgCgpQcm92aWRlIGN1c3RvbSBjb2x1bW4gbmFtZSBpbiBjYXNlIG9mIHJlbGF0aW9uc2hpcCBjb2x1bW4uIEV4YW1wbGU6CgpgYGB5YW1sCiAgY29tcG9uZW50czoKICAgIHNjaGVtYXM6CiAgICAgIFdlYmhvb2s6CiAgICAgICAgdHlwZTogb2JqZWN0CiAgICAgICAgZGVzY3JpcHRpb246IGV4YW1wbGUgZm9yIHgtZmstY29sdW1uLW5hbWUKICAgICAgICBwcm9wZXJ0aWVzOgogICAgICAgICAgaWQ6CiAgICAgICAgICAgIHR5cGU6IGludGVnZXIKICAgICAgICAgIG5hbWU6CiAgICAgICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgICAgdXNlcjoKICAgICAgICAgICAgJHJlZjogJy4uL29wZW5hcGkueWFtbCMvY29tcG9uZW50cy9zY2hlbWFzL1VzZXInICMgdGhpcyB3aWxsIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGB1c2VyX2lkYCBjb2x1bW4KICAgICAgICAgIHJlZGVsaXZlcnlfb2Y6CiAgICAgICAgICAgIGFsbE9mOgogICAgICAgICAgICAgIC0gJHJlZjogJy4uL29wZW5hcGkueWFtbCMvY29tcG9uZW50cy9zY2hlbWFzL0RlbGl2ZXJ5JwogICAgICAgICAgICAgICMgdGhpcyB3aWxsIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGByZWRlbGl2ZXJ5X29mX2lkYCBjb2x1bW4sIGJ1dCB0byBhdm9pZCB0aGF0IHVzZSBiZWxvdyBleHRlbnNpb24KICAgICAgICAgICAgICAtIHgtZmstY29sdW1uLW5hbWU6IHJlZGVsaXZlcnlfb2YgIyB0aGlzIHdpbGwgY3JlYXRlIGByZWRlbGl2ZXJ5X29mYCBjb2x1bW4gaW5zdGVhZCBvZiBgcmVkZWxpdmVyeV9vZl9pZGAKYGBgCgojIyBNYW55LXRvLU1hbnkgcmVsYXRpb24gZGVmaW5pdGlvbgoKVGhlcmUgYXJlIHR3byB3YXlzIGZvciBkZWZpbmUgbWFueS10by1tYW55IHJlbGF0aW9uczoKCiMjIyBTaW1wbGUgbWFueS10by1tYW55IHdpdGhvdXQganVuY3Rpb24gbW9kZWwKCiAgIC0gcHJvcGVydHkgbmFtZSBmb3IgbWFueS10by1tYW55IHJlbGF0aW9uIHNob3VsZCBiZSBlcXVhbCBsb3dlci1jYXNlZCwgcGx1cmFsaXplZCByZWxhdGVkIHNjaGVtYSBuYW1lCiAgICAgCiAgIC0gcmVmZXJlbmNlZCBzY2hlbWEgc2hvdWxkIGNvbnRhaW5zIG1pcnJvcmVkIHJlZmVyZW5jZSB0byBjdXJyZW50IHNjaGVtYQogICAgIAogICAtIG1pZ3JhdGlvbiBmb3IganVuY3Rpb24gdGFibGUgY2FuIGJlIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IC0gdGFibGUgbmFtZSBzaG91bGQgYmUgW3BsdXJhbGl6ZWQsIGxvd2VyLWNhc2VkCiBzY2hlbWFfbmFtZTFdMltwbHVyYWxpemVkLCBsb3dlci1jYXNlZCBzY2hlbWEgbmFtZTJdLCBpbiBhbHBoYWJldGljYWwgb3JkZXI7CiBGb3IgZXhhbXBsZSwgZm9yIHNjaGVtYXMgUG9zdCBhbmQgVGFnIC0gdGFibGUgc2hvdWxkIGJlIHBvc3RzMnRhZ3MsIGZvciBzY2hlbWFzIFBvc3QgYW5kIEF0dGFjaGVtZW50IC0gdGFibGUgc2hvdWxkCiAgYmUgYXR0YWNobWVudHMycG9zdHMKICAKYGBgClBvc3Q6CiAgcHJvcGVydGllczoKICAuLi4KICAgIHRhZ3M6CiAgICAgIHR5cGU6IGFycmF5CiAgICAgIGl0ZW1zOgogICAgICAgICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9UYWcnCgpUYWc6CiAgcHJvcGVydGllczoKICAuLi4KICAgIHBvc3RzOgogICAgICB0eXBlOiBhcnJheQogICAgICBpdGVtczoKICAgICAgICAkcmVmOiAnIy9jb21wb25lbnRzL3NjaGVtYXMvUG9zdCcKYGBgCiAgCiMjIyBNYW55LXRvLW1hbnkgd2l0aCBqdW5jdGlvbiBtb2RlbAoKVGhpcyB3YXkgYWxsb3dlZCBjcmVhdGluZyBtdWx0aXBsZSBtYW55LXRvLW1hbnkgcmVsYXRpb25zIGJldHdlZW4gdG8gbW9kZWxzIAoKLSBkZWZpbmUganVuY3Rpb24gc2NoZW1hIHdpdGggYWxsIG5lY2Vzc2FyeSBhdHRyaWJ1dGVzLiBUaGVyZSBhcmUgb25seSBvbmUgaW1wb3J0YW50IHJlcXVpcmVtZW50IC0gdGhlIGp1bmN0aW9uCiBzY2hlbWEgbmFtZQogbXVzdCBiZSBzdGFydGVkIHdpdGggcHJlZml4ICdqdW5jdGlvbl8nIChUaGlzIHByZWZpeCB3aWxsIGJlIHVzZWQgaW50ZXJuYWxseSBvbmx5IGFuZAogd2lsbCBiZSB0cmltbWVkIGJlZm9yZSB0YWJsZSBhbmQgbW9kZWwgZ2VuZXJhdGlvbikKIApgYGAKIyBNb2RlbCBUZWFtTWVtYmVycyB3aXRoIHRhYmxlIHRlYW1fbWVtYmVycyB3aWxsIGJlIGdlbmVyYXRlZCB3aXRoIGNvbHVtbnMgdGVhbV9pZCwgdXNlcl9pZCBhbmQgcm9sZQpqdW5jdGlvbl9UZWFtTWVtYmVyczoKICAgdGVhbToKICAgICAgJHJlZjogJyMvY29tcG9uZW50cy9zY2hlbWFzL1RlYW0nCiAgIHVzZXI6CiAgICAgICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9Vc2VyJwogICByb2xlOgogICAgIHR5cGU6IHN0cmluZwpgYGAKLSBCb3RoIG1hbnktdG8tbWFueSByZWxhdGVkIHNjaGVtYXMgbXVzdCBoYXZlIHByb3BlcnRpZXMgd2l0aCByZWZlcmVuY2UgdG8gImp1bmN0aW9uXyoiIHNjaGVtYS4gVGhlc2UgcHJvcGVydGllcyB3aWxsIGJlCiB1c2VkIGFzIHJlbGF0aW9uIG5hbWVzIAoKYGBgClRlYW06CiAgcHJvcGVydGllczoKICAuLi4KICAgICB0ZWFtX21lbWJlcnM6CiAgICAgICB0eXBlOiBhcnJheQogICAgICAgaXRlbXM6CiAgICAgICAgICRyZWY6ICcjL2NvbXBvbmVudHMvc2NoZW1hcy9qdW5jdGlvbl9UZWFtTWVtYmVycycKClVzZXI6CiAgcHJvcGVydGllczoKICAuLi4KICAgIG1lbWJlcnNoaXBzOiAjWW91IGFic29sdXRlbHkgZnJlZSB3aXRoIG5hbWluZyBmb3IgcmVsYXRpb25zaGlwIGF0dHJpYnV0ZXMKICAgICAgdHlwZTogYXJyYXkKICAgICAgaXRlbXM6CiAgICAgICAgJHJlZjogJyMvY29tcG9uZW50cy9zY2hlbWFzL2p1bmN0aW9uX1RlYW1NZW1iZXJzJwpgYGAKICAKIC0gc2VlIGJvdGggZXhhbXBsZXMgaGVyZSBbdGVzdHMvc3BlY3MvbWFueTJtYW55LnlhbWxdKHRlc3RzL3NwZWNzL21hbnkybWFueS55YW1sKQogCgojIyBIYW5kbGluZyBvZiBgTk9UIE5VTExgIGNvbnN0cmFpbnRzCgpgTk9UIE5VTExgIGluIERCIG1pZ3JhdGlvbnMgaXMgZGV0ZXJtaW5lZCBieSBgbnVsbGFibGVgIGFuZCBgcmVxdWlyZWRgIHByb3BlcnRpZXMgb2YgdGhlIE9wZW5BUEkgc2NoZW1hLgplLmcuIGF0dHJpYnV0ZSA9ICdteV9wcm9wZXJ0eScuCgotIElmIHlvdSBkZWZpbmUgYXR0cmlidXRlIG5laXRoZXIgInJlcXVpcmVkIiBub3IgdmlhICJudWxsYWJsZSIsIHRoZW4gaXQgaXMgYnkgZGVmYXVsdCBgTlVMTGA6CgpgYGB5YW1sCiAgRXhhbXBsZVNjaGVtYToKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHR5cGU6IHN0cmluZwpgYGAKCi0gSWYgeW91IGRlZmluZSBhdHRyaWJ1dGUgaW4gInJlcXVpcmVkIiwgdGhlbiBpdCBpcyBgTk9UIE5VTExgCgpgYGB5YW1sCiAgRXhhbXBsZVNjaGVtYToKICAgIHJlcXVpcmVkOgogICAgIC0gbXlfcHJvcGVydHkKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHR5cGU6IHN0cmluZwpgYGAKCi0gSWYgeW91IGRlZmluZSBhdHRyaWJ1dGUgdmlhICJudWxsYWJsZSIsIHRoZW4gaXQgb3ZlcnJpZGVzICJyZXF1aXJlZCIsIGUuZy4gYWxsb3cgYE5VTExgIGluIHRoaXMgY2FzZToKCmBgYHlhbWwKICBFeGFtcGxlU2NoZW1hOgogICAgcmVxdWlyZWQ6CiAgICAgIC0gbXlfcHJvcGVydHkKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHR5cGU6IHN0cmluZwogICAgICAgIG51bGxhYmxlOiB0cnVlCmBgYAoKLSBJZiB5b3UgZGVmaW5lIGF0dHJpYnV0ZSB2aWEgIm51bGxhYmxlIiwgdGhlbiBpdCBvdmVycmlkZXMgInJlcXVpcmVkIiwgZS5nLiBgTk9UIE5VTExgIGluIHRoaXMgY2FzZToKCmBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcmVxdWlyZWQ6CiAgICBwcm9wZXJ0aWVzOgogICAgICBteV9wcm9wZXJ0eToKICAgICAgICB0eXBlOiBzdHJpbmcKICAgICAgICBudWxsYWJsZTogZmFsc2UKYGBgCgojIyBIYW5kbGluZyBvZiBgZW51bWAgKCNlbnVtKQpJdCB3b3JrcyBvbiBhbGwgMyBEQjogTXlTUUwsIE1hcmlhRGIgYW5kIFBnU1FMLgoKIGBgYHlhbWwKICB0ZXN0X3RhYmxlOgogICAgcHJvcGVydGllczoKICAgICAgbXlfcHJvcGVydHk6CiAgICAgICAgZW51bToKICAgICAgICAgIC0gb25lCiAgICAgICAgICAtIHR3bwogICAgICAgICAgLSB0aHJlZQpgYGAKCk5vdGU6IENoYW5nZXMgaW4gZW51bSB2YWx1ZXMgYXJlIG5vdCB2ZXJ5IHNpbXBsZS4gRm9yIE15c3FsIGFuZCBNYXJpYWRiLCBtaWdyYXRpb25zIHdpbGwgYmUgZ2VuZXJhdGVkIGJ1dCBpbiBtYW55IGNhc2VzIGN1c3RvbSBtb2RpZmljYXRpb24gaW4gaXQgYXJlIHJlcXVpcmVkLiBGb3IgUGdzcWwgbWlncmF0aW9ucyBmb3IgY2hhbmdlIGluIGVudW0gdmFsdWVzIHdpbGwgbm90IGJlIGdlbmVyYXRlZC4gSXQgc2hvdWxkIGJlIGhhbmRsZWQgbWFudWFsbHkuCgojIyBIYW5kbGluZyBvZiBgbnVtZXJpY2AgKCNudW1lcmljLCAjTWFyaWFEYikKCnByZWNpc2lvbi1kZWZhdWx0ID0gMTAKc2NhbGUtZGVmYXVsdCA9IDIKCi0gWW91IGNhbiBkZWZpbmUgYXR0cmlidXRlIGxpa2UgIm51bWVyaWMocHJlY2lzaW9uLHNjYWxlKSI6CiBgYGB5YW1sCiAgdGVzdF90YWJsZToKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHgtZGItdHlwZTogZGVjaW1hbCgxMiw0KQpgYGAKREItUmVzdWx0ID0gZGVjaW1hbCgxMiw0KQoKLSBZb3UgY2FuIGRlZmluZSBhdHRyaWJ1dGUgbGlrZSAibnVtZXJpYyhwcmVjaXNpb24pIiB3aXRoIGRlZmF1bHQgc2NhbGUtZGVmYXVsdCA9IDI6CiBgYGB5YW1sCiAgdGVzdF90YWJsZToKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHgtZGItdHlwZTogZGVjaW1hbCgxMikKYGBgCkRCLVJlc3VsdCA9IGRlY2ltYWwoMTIsMikKCi0gWW91IGNhbiBkZWZpbmUgYXR0cmlidXRlIGxpa2UgIm51bWVyaWMiIHdpdGggcHJlY2lzaW9uLWRlZmF1bHQgPSAxMCBhbmQgc2NhbGUtZGVmYXVsdCA9IDI6CiBgYGB5YW1sCiAgdGVzdF90YWJsZToKICAgIHByb3BlcnRpZXM6CiAgICAgIG15X3Byb3BlcnR5OgogICAgICAgIHgtZGItdHlwZTogZGVjaW1hbApgYGAKREItUmVzdWx0ID0gZGVjaW1hbCgxMCwyKQoKIyMgSGFuZGxpbmcgb2YgYHRpbWVzdGFtcGAgZGF0YWJhc2UgY29sdW1uIGRhdGEgdHlwZQoKSWYgZmllbGQgaXMgZGVmaW5lZCBhcwoKYGBgeWFtbApjcmVhdGVkX2F0OgogICAgdHlwZTogc3RyaW5nCiAgICBmb3JtYXQ6IGRhdGUtdGltZSAjIG9yIGRhdGV0aW1lCiAgICBleGFtcGxlOiAnMjAyMC0wMy0xNFQyMTo0MjoxN1onCiAgICByZWFkT25seTogdHJ1ZQpgYGAKCnRoZW4gZGF0YWJhc2UgdHlwZSBzZWxlY3RlZCB3aWxsIGJlIGB0aW1lc3RhbXBgLiBUaGlzIGlzIGJ5IGRlc2lnbi4gSWYgYGRhdGV0aW1lYCBkYXRhIHR5cGUgaXMgbmVlZGVkLCB1c2UgYHgtZGItdHlwZWAgYXMKCmBgYHlhbWwKY3JlYXRlZF9hdDoKICAgIHR5cGU6IHN0cmluZwogICAgZm9ybWF0OiBkYXRlLXRpbWUgIyBvciBkYXRldGltZQogICAgZXhhbXBsZTogJzIwMjAtMDMtMTRUMjE6NDI6MTdaJwogICAgeC1kYi10eXBlOiBkYXRldGltZQogICAgcmVhZE9ubHk6IHRydWUKYGBgCgojIyBBc3N1bXB0aW9ucwoKV2hlbiBnZW5lcmF0aW5nIGNvZGUgZnJvbSBhbiBPcGVuQVBJIGRlc2NyaXB0aW9uIHRoZXJlIGFyZSBtYW55IHBvc3NpYmxlIHdheXMgdG8gYWNoaXZlIGEgZml0dGluZyByZXN1bHQuClRodXMgdGhlcmUgYXJlIHNvbWUgYXNzdW1wdGlvbnMgYW5kIGxpbWl0YXRpb25zIHRoYXQgYXJlIGN1cnJlbnRseSBhcHBsaWVkIHRvIG1ha2UgdGhpcyB3b3JrLgpIZXJlIGlzIGEgKHBvc3NpYmx5IGluY29tcGxldGUpIGxpc3Q6CgotIFRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIHdvcmtzIGJlc3Qgd2l0aCBPcGVuQVBJIGRlc2NyaXB0aW9uIHRoYXQgZm9sbG93cyB0aGUgW0pTT046QVBJXShodHRwczovL2pzb25hcGkub3JnLykgZ3VpZGVsaW5lcy4KICAtIFRoZSByZXF1ZXN0IGFuZCByZXNwb25zZSBmb3JtYXQvc2NoZW1hIGlzIGN1cnJlbnRseSBub3QgZXh0cmFjdGVkIGZyb20gT3BlbkFQSSBzY2hlbWEgYW5kIG1heSBuZWVkIHRvIGJlIGFkanVzdGVkIG1hbnVhbGx5IGlmIGl0IGRvZXMgbm90IGZvbGxvdyBKU09OOkFQSQotIGNvbHVtbi9maWVsZC9wcm9wZXJ0eSB3aXRoIG5hbWUgYGlkYCBpcyBjb25zaWRlcmVkIGFzIFByaW1hcnkgS2V5IGJ5IHRoaXMgbGlicmFyeSBhbmQgaXQgaXMgYXV0b21hdGljYWxseSBoYW5kbGVkIGJ5IERCL1lpaTsgc28gcmVtb3ZlIGl0IGZyb20gdmFsaWRhdGlvbiBgcnVsZXMoKWAKICAtIG90aGVyIGZpZWxkcyBjYW4gY3VycmVudGx5IGJlIHVzZWQgYXMgcHJpbWFyeSBrZXlzIHVzaW5nIHRoZSBgeC1wa2AgT3BlbkFQSSBleHRlbnNpb24gKHNlZSBiZWxvdykgYnV0IGl0IG1heSBub3QgYmUgd29yayBjb3JyZWN0bHkgaW4gYWxsIGNhc2VzLCBwbGVhc2UgcmVwb3J0IGJ1Z3MgaWYgeW91IGZpbmQgdGhlbS4KCk90aGVyIHRoaW5ncyB0byBrZWVwIGluIG1pbmQ6CgojIyMgQWRkaW5nIGNvbHVtbnMgdG8gZXhpc3RpbmcgdGFibGVzCgpXaGVuIGFkZGluZyBuZXcgZmllbGRzIGluIHRoZSBBUEkgbW9kZWxzLCBuZXcgbWlncmF0aW9ucyB3aWxsIGJlIGdlbmVyYXRlZCB0byBhZGQgdGhlc2UgZmllbGRzIHRvIHRoZSB0YWJsZS4KRm9yIGEgcHJvamVjdCB0aGF0IGlzIGFscmVhZHkgaW4gcHJvZHVjdGlvbiwgaXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgdG8gYWRqdXN0IHRoZSBnZW5lcmF0ZWQgbWlncmF0aW9uIHRvIGFkZCBkZWZhdWx0CnZhbHVlcyBmb3IgZXhpc3RpbmcgZGF0YSByZWNvcmRzLgoKT25lIGNhc2Ugd2hlcmUgdGhpcyBpcyBpbXBvcnRhbnQgaXMgdGhlIGFkZGl0aW9uIG9mIGEgbmV3IGNvbHVtbiB3aXRoIGBOT1QgTlVMTGAgY29udHJhaW50LCB3aGljaCBkb2VzIG5vdCBwcm92aWRlIGEgZGVmYXVsdCB2YWx1ZS4KU3VjaCBhIG1pZ3JhdGlvbiB3aWxsIGZhaWwgd2hlbiB0aGUgdGFibGUgaXMgbm90IGVtcHR5OgoKYGBgcGhwCiR0aGlzLT5hZGRDb2x1bW4oJ3t7JWNvbXBhbnl9fScsICduYW1lJywgJHRoaXMtPnN0cmluZygxMjgpLT5ub3ROdWxsKCkpOwpgYGAKCkZhaWxzIG9uIGEgUG9zdGdyZVNRTCBkYXRhYmFzZSB3aXRoCgo+IGFkZCBjb2x1bW4gbmFtZSBzdHJpbmcoMTI4KSBOT1QgTlVMTCB0byB0YWJsZSB7eyVjb21wYW55fX0gLi4uRXhjZXB0aW9uOiBTUUxTVEFURVsyMzUwMl06IE5vdCBudWxsIHZpb2xhdGlvbjogNyBFUlJPUjogIGNvbHVtbiAibmFtZSIgY29udGFpbnMgbnVsbCB2YWx1ZXMKClRoZSBzb2x1dGlvbiB3b3VsZCBiZSB0byBjcmVhdGUgdGhlIGNvbHVtbiwgYWxsb3dpbmcgTlVMTCwgc2V0IHRoZSB2YWx1ZSB0byBhIGRlZmF1bHQgYW5kIGFkZCB0aGUgbnVsbCBjb25zdHJhaW50IGxhdGVyLgoKYGBgcGhwCiR0aGlzLT5hZGRDb2x1bW4oJ3t7JWNvbXBhbnl9fScsICduYW1lJywgJHRoaXMtPnN0cmluZygxMjgpLT5udWxsKCkpOwokdGhpcy0+dXBkYXRlKCd7eyVjb21wYW55fX0nLCBbJ25hbWUnID0+ICdObyBuYW1lJ10pOwokdGhpcy0+YWx0ZXJDb2x1bW4oJ3t7JWNvbXBhbnl9fScsICduYW1lJywgJHRoaXMtPnN0cmluZygxMjgpLT5ub3ROdWxsKCkpOwpgYGAKCiMjIFNjcmVlbnNob3RzCgpHaWkgR2VuZXJhdG9yIEZvcm06CgohW0dpaSBHZW5lcmF0b3IgRm9ybV0oZG9jL3NjcmVlbnNob3QtZm9ybS5wbmcpCgpHZW5lcmF0ZWQgZmlsZXM6CgohW0dpaSBHZW5lcmF0ZWQgRmlsZXNdKGRvYy9zY3JlZW5zaG90LWZpbGVzLnBuZykKCgojIERldmVsb3BtZW50CgpUbyBjb250cmlidXRlIG9yIHBsYXkgYXJvdW5kLCBzdGVwcyB0byBzZXQgdXAgdGhpcyBwcm9qZWN0IHVwIGxvY2FsbHkgYXJlIGluIFtDT05UUklCVVRJTkcubWRdKC4vQ09OVFJJQlVUSU5HLm1kKS4KCgojIFN1cHBvcnQKCioqTmVlZCBoZWxwIHdpdGggeW91ciBBUEkgcHJvamVjdD8qKgoKUHJvZmVzc2lvbmFsIHN1cHBvcnQsIGNvbnN1bHRpbmcgYXMgd2VsbCBhcyBzb2Z0d2FyZSBkZXZlbG9wbWVudCBzZXJ2aWNlcyBhcmUgYXZhaWxhYmxlOgoKaHR0cHM6Ly93d3cuY2ViZS5jYy9lbi9jb250YWN0CgpEZXZlbG9wbWVudCBvZiB0aGlzIGxpYnJhcnkgaXMgc3BvbnNvcmVkIGJ5IFtjZWJlLjpjbG91ZDogIllvdXIgUHJvZmVzc2lvbmFsIERlcGxveW1lbnQgUGxhdGZvcm0iXShodHRwczovL2NlYmUuY2xvdWQpLgo= + readmeEtag: '"067370db26918cd0897ebf2bc7e13ebaf573f17d31414db92eb30696e843d651"' + readmeLastModified: Thu, 14 Dec 2023 13:02:14 GMT repositoryId: 154310166 description: REST API application generator for Yii2, openapi 3.0 YAML -> Yii2 created: '2018-10-23T10:39:18Z' @@ -9326,7 +9326,7 @@ owner: cebe logo: https://avatars.githubusercontent.com/u/189796?v=4 license: MIT - repoEtag: '"a0e64350cbb99e593e288125f56921b33712d4977ed70e35cc37138869782e4e"' + repoEtag: '"a88f9c8b9fa2a5be53cdfa789be32e83c873c6ca6228f39516a452b362baa425"' repoLastModified: Sat, 29 Jul 2023 15:12:31 GMT foundInMaster: true category: Parsers @@ -9342,17 +9342,17 @@ repositoryId: 362315893 description: Generate REST API and OpenAPI documentation for your Flask project. created: '2021-04-28T02:39:57Z' - updated: '2023-12-12T07:25:34Z' + updated: '2023-12-15T11:35:14Z' language: Python archived: false - stars: 127 + stars: 128 watchers: 7 forks: 25 owner: luolingchun logo: https://avatars.githubusercontent.com/u/22740403?v=4 license: MIT - repoEtag: '"fef6d92dc1931f9e005f92839bf55aca595ca0c01523a853352ca26be546c715"' - repoLastModified: Tue, 12 Dec 2023 07:25:34 GMT + repoEtag: '"41356c9b2f88579dfa8fc0672e2a7579d30d5df3952189ffdaf64907bb5922ca"' + repoLastModified: Fri, 15 Dec 2023 11:35:14 GMT foundInMaster: true category: Server Implementations id: 7baa4046f5397a8fd006511115871ac0 @@ -9362,9 +9362,9 @@ id: 30d6812808d99b1b58b61c10028cb8de repositoryMetadata: base64Readme: >- - WyFbQnVpbGQgc3RhdHVzXShodHRwczovL2NpLmFwcHZleW9yLmNvbS9hcGkvcHJvamVjdHMvc3RhdHVzL2diMmRvZTN0Z3dqdDQ3Y24vYnJhbmNoL21hc3Rlcj9zdmc9dHJ1ZSldKGh0dHBzOi8vY2kuYXBwdmV5b3IuY29tL3Byb2plY3QvY2hyaXN0aWFuaGVsbGUvYXBpY2xpZW50Y29kZWdlbi9icmFuY2gvbWFzdGVyKQohW0NMSSBUb29sXShodHRwczovL2dpdGh1Yi5jb20vY2hyaXN0aWFuaGVsbGUvYXBpY2xpZW50Y29kZWdlbi93b3JrZmxvd3MvQ0xJJTIwVG9vbC9iYWRnZS5zdmcpCiFbVlNJWF0oaHR0cHM6Ly9naXRodWIuY29tL2NocmlzdGlhbmhlbGxlL2FwaWNsaWVudGNvZGVnZW4vd29ya2Zsb3dzL1ZTSVgvYmFkZ2Uuc3ZnKQohW1ZTIE1hY10oaHR0cHM6Ly9naXRodWIuY29tL2NocmlzdGlhbmhlbGxlL2FwaWNsaWVudGNvZGVnZW4vd29ya2Zsb3dzL1ZTJTIwTWFjL2JhZGdlLnN2ZykKIVtTbW9rZSBUZXN0c10oaHR0cHM6Ly9naXRodWIuY29tL2NocmlzdGlhbmhlbGxlL2FwaWNsaWVudGNvZGVnZW4vd29ya2Zsb3dzL1Ntb2tlJTIwVGVzdHMvYmFkZ2Uuc3ZnKQoKWyFbTWFpbnRhaW5hYmlsaXR5IFJhdGluZ10oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9c3FhbGVfcmF0aW5nKV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2Rhc2hib2FyZD9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQpbIVtSZWxpYWJpbGl0eSBSYXRpbmddKGh0dHBzOi8vc29uYXJjbG91ZC5pby9hcGkvcHJvamVjdF9iYWRnZXMvbWVhc3VyZT9wcm9qZWN0PWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4mbWV0cmljPXJlbGlhYmlsaXR5X3JhdGluZyldKGh0dHBzOi8vc29uYXJjbG91ZC5pby9kYXNoYm9hcmQ/aWQ9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbikKWyFbU2VjdXJpdHkgUmF0aW5nXShodHRwczovL3NvbmFyY2xvdWQuaW8vYXBpL3Byb2plY3RfYmFkZ2VzL21lYXN1cmU/cHJvamVjdD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuJm1ldHJpYz1zZWN1cml0eV9yYXRpbmcpXShodHRwczovL3NvbmFyY2xvdWQuaW8vZGFzaGJvYXJkP2lkPWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4pClshW0J1Z3NdKGh0dHBzOi8vc29uYXJjbG91ZC5pby9hcGkvcHJvamVjdF9iYWRnZXMvbWVhc3VyZT9wcm9qZWN0PWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4mbWV0cmljPWJ1Z3MpXShodHRwczovL3NvbmFyY2xvdWQuaW8vZGFzaGJvYXJkP2lkPWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4pClshW1Z1bG5lcmFiaWxpdGllc10oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9dnVsbmVyYWJpbGl0aWVzKV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2Rhc2hib2FyZD9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQpbIVtDb2RlIFNtZWxsc10oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9Y29kZV9zbWVsbHMpXShodHRwczovL3NvbmFyY2xvdWQuaW8vc3VtbWFyeS9uZXdfY29kZT9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQpbIVtDb3ZlcmFnZV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9Y292ZXJhZ2UpXShodHRwczovL3NvbmFyY2xvdWQuaW8vc3VtbWFyeS9uZXdfY29kZT9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQoKWyFbVmVyc2lvbl0oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL3YvQ2hyaXN0aWFuUmVzbWFIZWxsZS5BcGlDbGllbnRDb2RlR2VuZXJhdG9yP2xhYmVsPU1hcmtldHBsYWNlKV0oaHR0cHM6Ly9tYXJrZXRwbGFjZS52aXN1YWxzdHVkaW8uY29tL2l0ZW1zP2l0ZW1OYW1lPUNocmlzdGlhblJlc21hSGVsbGUuQVBJQ2xpZW50Q29kZUdlbmVyYXRvcikgClshW0Rvd25sb2Fkc10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL2QvQ2hyaXN0aWFuUmVzbWFIZWxsZS5BcGlDbGllbnRDb2RlR2VuZXJhdG9yP2xhYmVsPVZTJTIwMjAxOSldKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1DaHJpc3RpYW5SZXNtYUhlbGxlLkFQSUNsaWVudENvZGVHZW5lcmF0b3IpClshW1JhdGluZ10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL3N0YXJzL0NocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcildKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1DaHJpc3RpYW5SZXNtYUhlbGxlLkFQSUNsaWVudENvZGVHZW5lcmF0b3IpClshW0Rvd25sb2Fkc10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL2QvQ2hyaXN0aWFuUmVzbWFIZWxsZS5BUElDbGllbnRDb2RlR2VuZXJhdG9yMjAyMj9sYWJlbD1WUyUyMDIwMjIpXShodHRwczovL21hcmtldHBsYWNlLnZpc3VhbHN0dWRpby5jb20vaXRlbXM/aXRlbU5hbWU9Q2hyaXN0aWFuUmVzbWFIZWxsZS5BUElDbGllbnRDb2RlR2VuZXJhdG9yMjAyMikgClshW1JhdGluZ10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL3N0YXJzL0NocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcjIwMjIpXShodHRwczovL21hcmtldHBsYWNlLnZpc3VhbHN0dWRpby5jb20vaXRlbXM/aXRlbU5hbWU9Q2hyaXN0aWFuUmVzbWFIZWxsZS5BUElDbGllbnRDb2RlR2VuZXJhdG9yMjAyMikKWyFbTnVHZXRdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vbnVnZXQvdi9yYXBpY2dlbi5zdmc/c3R5bGU9ZmxhdC1zcXVhcmUpXShodHRwOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9yYXBpY2dlbikKWyFbTnVHZXRdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vbnVnZXQvZHQvcmFwaWNnZW4uc3ZnP3N0eWxlPWZsYXQtc3F1YXJlJmxhYmVsPW51Z2V0KV0oaHR0cDovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvcmFwaWNnZW4pCgpbIVtidXltZWFjb2ZmZWVdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvYnV5JTIwbWUlMjBhJTIwY29mZmVlLWRvbmF0ZS15ZWxsb3cuc3ZnKV0oaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9jaHJpc3RpYW5oZWxsZSkKWyFbSm9pbiB0aGUgY2hhdCBhdCBodHRwczovL2dpdHRlci5pbS9hcGljbGllbnRjb2RlZ2VuL2NvbW11bml0eV0oaHR0cHM6Ly9iYWRnZXMuZ2l0dGVyLmltL2FwaWNsaWVudGNvZGVnZW4vY29tbXVuaXR5LnN2ZyldKGh0dHBzOi8vZ2l0dGVyLmltL2FwaWNsaWVudGNvZGVnZW4vY29tbXVuaXR5P3V0bV9zb3VyY2U9YmFkZ2UmdXRtX21lZGl1bT1iYWRnZSZ1dG1fY2FtcGFpZ249cHItYmFkZ2UmdXRtX2NvbnRlbnQ9YmFkZ2UpCgojIFJFU1QgQVBJIENsaWVudCBDb2RlIEdlbmVyYXRvcgpBIGNvbGxlY3Rpb24gb2YgVmlzdWFsIFN0dWRpbyBDIyBjdXN0b20gdG9vbCBjb2RlIGdlbmVyYXRvcnMgZm9yIFN3YWdnZXIgLyBPcGVuQVBJIHNwZWNpZmljYXRpb24gZmlsZXMKCiMjIyMgRG93bmxvYWQKCi0gKipbVmlzdWFsIFN0dWRpbyAyMDIyXShodHRwczovL21hcmtldHBsYWNlLnZpc3VhbHN0dWRpby5jb20vaXRlbXM/aXRlbU5hbWU9Q2hyaXN0aWFuUmVzbWFIZWxsZS5BcGlDbGllbnRDb2RlR2VuZXJhdG9yMjAyMikqKgotICoqW1Zpc3VhbCBTdHVkaW8gMjAxOV0oaHR0cHM6Ly9tYXJrZXRwbGFjZS52aXN1YWxzdHVkaW8uY29tL2l0ZW1zP2l0ZW1OYW1lPUNocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcikqKgotICoqW1Zpc3VhbCBTdHVkaW8gMjAxN10oaHR0cHM6Ly9tYXJrZXRwbGFjZS52aXN1YWxzdHVkaW8uY29tL2l0ZW1zP2l0ZW1OYW1lPUNocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcjIwMTcpKioKLSAqKltWaXN1YWwgU3R1ZGlvIGZvciBNYWNdKGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RpYW5oZWxsZS9hcGljbGllbnRjb2RlZ2VuL3JlbGVhc2VzL2xhdGVzdCkqKi4gRm9sbG93ICoqW3RoZXNlIGluc3RydWN0aW9uc10oI3Zpc3VhbC1zdHVkaW8tZm9yLW1hYy0xKSoqIGZvciB1cGRhdGUgY29udmVuaWVuY2Ugb24gVmlzdWFsIFN0dWRpbyBmb3IgTWFjCgojIyBGZWF0dXJlcwoKLSBTdXBwb3J0cyBWaXN1YWwgU3R1ZGlvIDIwMTcsIDIwMTksIDIwMjIsIGFuZCBbVmlzdWFsIFN0dWRpbyBmb3IgTWFjXSgjdmlzdWFsLXN0dWRpby1mb3ItbWFjLTEpCi0gQWRkIE5ldyBSRVNUIEFQSSBDbGllbnQgdG8gYSBwcm9qZWN0IGZyb20gYW4gT3BlbkFQSSBzcGVjaWZpY2F0aW9uIFVSTCAoZS5nIGh0dHBzOi8vcGV0c3RvcmUuc3dhZ2dlci5pby92Mi9zd2FnZ2VyLmpzb24pIHVzaW5nIFtBdXRvUmVzdF0oaHR0cHM6Ly9naXRodWIuY29tL0F6dXJlL2F1dG9yZXN0KSwgW05Td2FnXShodHRwczovL2dpdGh1Yi5jb20vUmljb1N1dGVyL05Td2FnKSwgW1N3YWdnZXIgQ29kZWdlbl0oaHR0cHM6Ly9naXRodWIuY29tL3N3YWdnZXItYXBpL3N3YWdnZXItY29kZWdlbiksIG9yIFtPcGVuQVBJIEdlbmVyYXRvcl0oaHR0cHM6Ly9naXRodWIuY29tL09wZW5BUElUb29scy9vcGVuYXBpLWdlbmVyYXRvcikKLSBEZWZpbmUgY3VzdG9tIG5hbWVzcGFjZSBmb3IgdGhlIGdlbmVyYXRlZCBmaWxlCi0gQXV0by11cGRhdGluZyBvZiBnZW5lcmF0ZWQgY29kZSBmaWxlIHdoZW4gY2hhbmdlcyBhcmUgbWFkZSB0byB0aGUgT3BlbkFQSSBzcGVjaWZpY2F0aW9uIEpTT04gb3IgWUFNTCBmaWxlCi0gR2VuZXJhdGUgY29kZSB1c2luZyBhbiBbTlN3YWdTdHVkaW9dKGh0dHBzOi8vZ2l0aHViLmNvbS9SaWNvU3V0ZXIvTlN3YWcvd2lraS9OU3dhZ1N0dWRpbykgc3BlY2lmaWNhdGlvbiBmaWxlIGJ5IGluY2x1ZGluZyBpdCBpbiB0aGUgcHJvamVjdCBhbmQgdXNpbmcgdGhlICoqR2VuZXJhdGUgd2l0aCBOU3dhZyoqIGNvbnRleHQgbWVudQoKCiMjIyBDdXN0b20gVG9vbHMKCi0gKioqTlN3YWdDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nIHRoZSBbTlN3YWcuQ29kZUdlbmVyYXRpb24uQ1NoYXJwXShodHRwczovL2dpdGh1Yi5jb20vUlN1dGVyL05Td2FnL3dpa2kvQ1NoYXJwQ2xpZW50R2VuZXJhdG9yKSBbbnVnZXQgcGFja2FnZV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL05Td2FnLkNvZGVHZW5lcmF0aW9uLkNTaGFycC8pICoqdjEzLjIwLjAqKgoKLSAqKipPcGVuQXBpQ29kZUdlbmVyYXRvcioqKiAtIEdlbmVyYXRlcyBhIHNpbmdsZSBmaWxlIEMjIFJFU1QgQVBJIENsaWVudCB1c2luZyAqKltPcGVuQVBJIEdlbmVyYXRvciB2Ny4xLjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9PcGVuQVBJVG9vbHMvb3BlbmFwaS1nZW5lcmF0b3IvcmVsZWFzZXMvdGFnL3Y3LjEuMCkqKi4KVGhlIG91dHB1dCBmaWxlIGlzIHRoZSByZXN1bHQgb2YgbWVyZ2luZyBhbGwgdGhlIGZpbGVzIGdlbmVyYXRlZCB1c2luZyB0aGUgT3BlbkFQSSBHZW5lcmF0b3IgdG9vbCB3aXRoOgpgIGdlbmVyYXRlIC1nIGNzaGFycCAtLWlucHV0LXNwZWMgW3N3YWdnZXIgZmlsZV0gLS1vdXRwdXQgW291dHB1dCBmaWxlXSAtRGFwaVRlc3RzPWZhbHNlIC1EbW9kZWxUZXN0cz1mYWxzZSAtRHBhY2thZ2VOYW1lPVtkZWZhdWx0IG5hbWVzcGFjZV0gLS1za2lwLW92ZXJ3cml0ZWAKCi0gKioqS2lvdGFDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nIHRoZSBNaWNyb3NvZnQgcHJvamVjdCAqKltLaW90YSB2MS45LjBdKGh0dHBzOi8vbGVhcm4ubWljcm9zb2Z0LmNvbS9lbi11cy9vcGVuYXBpL2tpb3RhLykqKiBnZW5lcmF0b3IuIApUaGUgb3V0cHV0IGZpbGUgaXMgdGhlIHJlc3VsdCBvZiBtZXJnaW5nIGFsbCB0aGUgZmlsZXMgZ2VuZXJhdGVkIHVzaW5nIHRoZSBLaW90YSBkb3RuZXQgdG9vbCB3aXRoOgpgIGdlbmVyYXRlIC1sIENTaGFycCAtZCBbc3dhZ2dlciBmaWxlXSAtbyBbb3V0cHV0IGZpbGVdIC1uIFtkZWZhdWx0IG5hbWVzcGFjZV1gCgotICoqKlN3YWdnZXJDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nICoqU3dhZ2dlciBDb2RlZ2VuIENMSSB2My4wLjM0KiouClRoZSBvdXRwdXQgZmlsZSBpcyB0aGUgcmVzdWx0IG9mIG1lcmdpbmcgYWxsIHRoZSBmaWxlcyBnZW5lcmF0ZWQgdXNpbmcgdGhlIFN3YWdnZXIgQ29kZWdlbiBDTEkgdG9vbCB3aXRoOgpgIGdlbmVyYXRlIC1sIGNzaGFycCAtLWlucHV0LXNwZWMgW3N3YWdnZXIgZmlsZV0gLS1vdXRwdXQgW291dHB1dCBmaWxlXSAtRGFwaVRlc3RzPWZhbHNlIC1EbW9kZWxUZXN0cz1mYWxzZSAtRHBhY2thZ2VOYW1lPVtkZWZhdWx0IG5hbWVzcGFjZV0gLS1za2lwLW92ZXJ3cml0ZWAKCi0gKioqQXV0b1Jlc3RDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nICoqQXV0b1Jlc3QgdjMuMC4wLWJldGEuMjAyMTA1MDQuMioqIGZvciBPcGVuQVBJIHYzIGFuZCAqKkF1dG9SZXN0IHYyLjAuNDQxNyoqIGZvciBPcGVuQVBJIHYyLiAKVGhlIHJlc3VsdGluZyBmaWxlIGlzIHRoZSBlcXVpdmFsZW50IG9mIHVzaW5nIHRoZSBBdXRvUmVzdCBDTEkgdG9vbCB3aXRoOisKYCAtLWNzaGFycCAtLWlucHV0LWZpbGU9W3N3YWdnZXIgZmlsZV0gLS1vdXRwdXQtZmlsZT1bb3V0cHV0IGZpbGVdIC0tbmFtZXNwYWNlPVtkZWZhdWx0IG5hbWVzcGFjZV0gLS1hZGQtY3JlZGVudGlhbHNgCgotICoqKlJlZml0dGVyQ29kZUdlbmVyYXRvcioqKiAtIEdlbmVyYXRlcyBhIHNpbmdsZSBmaWxlIEMjIFJFU1QgQVBJIENsaWVudCBpbnRlZmFjZSBmb3IgW1JlZml0XShodHRwczovL2dpdGh1Yi5jb20vcmVhY3RpdmV1aS9yZWZpdCkgdXNpbmcgW1JlZml0dGVyLkNvcmVdKGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RpYW5oZWxsZS9yZWZpdHRlcikgW251Z2V0IHBhY2thZ2VdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9SZWZpdHRlci5Db3JlLykgKip2MC44LjYqKi4KVGhlIG91dHB1dCBmaWxlIGNvbnRhaW5zIGEgUmVmaXQgaW50ZXJmYWNlIGdlbmVyYXRlZCBieSBbUmVmaXR0ZXJdKGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RpYW5oZWxsZS9yZWZpdHRlcikgYW5kIGNvbnRyYWN0cyBnZW5lcmF0ZWQgdXNpbmcgW05Td2FnLkNvZGVHZW5lcmF0aW9uLkNTaGFycF0oaHR0cHM6Ly9naXRodWIuY29tL1JTdXRlci9OU3dhZy93aWtpL0NTaGFycENsaWVudEdlbmVyYXRvcikgW251Z2V0IHBhY2thZ2VdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9OU3dhZy5Db2RlR2VuZXJhdGlvbi5DU2hhcnAvKQoKCiMjIyBEZXBlbmRlbmNpZXMKClRoZSBjdXN0b20gdG9vbCBjb2RlIGdlbmVyYXRvcnMgcGlnZ3kgYmFjayBvbiB0b3Agb2Ygd2VsbCBrbm93biBPcGVuIEFQSSBjbGllbnQgY29kZSBnZW5lcmF0b3JzIGxpa2UgKipBdXRvUmVzdCoqLCAqKk5Td2FnKiosICoqT3BlbkFQSSBHZW5lcmF0b3IqKiwgKipNaWNyb3NvZnQgS2lvdGEqKiwgKipSZWZpdHRlcioqLCBhbmQgKipTd2FnZ2VyIENvZGVnZW4gQ0xJKiouIFRoZXNlIHRvb2xzIHJlcXVpcmUgW05QTV0oaHR0cHM6Ly93d3cubnBtanMuY29tL2dldC1ucG0pIGFuZCB0aGUgW0phdmEgUnVudGltZSBFbnZpcm9ubWVudF0oaHR0cHM6Ly9qYXZhLmNvbS9lbi9kb3dubG9hZC9tYW51YWwuanNwKSB0byBiZSBpbnN0YWxsZWQgb24gdGhlIGRldmVsb3BlcnMgbWFjaGluZS4gQWx0ZXJuYXRpdmUgSmF2YSBTREsgaW1wbGVtZW50YXRpb25zIHN1Y2ggYXMgdGhlIFtPcGVuSkRLXShodHRwczovL2Fkb3B0b3Blbmpkay5uZXQpIHdvcmtzIGZpbmUgd2l0aCB0aGlzIGV4dGVuc2lvbi4gQnkgZGVmYXVsdCwgdGhlIHBhdGggdG8gKipqYXZhLmV4ZSoqIGlzIHJlYWQgZnJvbSB0aGUgKipKQVZBX0hPTUUqKiBlbnZpcm9ubWVudCB2YXJpYWJsZSwgYnV0IGlzIGFsc28gY29uZmlndXJhYmxlIGluIHRoZSBTZXR0aW5ncyBzY3JlZW4KClRoZSAqKlN3YWdnZXIgQ29kZWdlbiBDTEkqKiBhbmQgKipPcGVuQVBJIEdlbmVyYXRvcioqIGFyZSBkaXN0cmlidXRlZCBhcyBKQVIgZmlsZXMgYW5kIGFyZSBkb3dubG9hZGVkIG9uIGRlbWFuZCBidXQgcmVxdWlyZXMgdGhlIEphdmEgU0RLIHRvIGJlIGluc3RhbGxlZCBvbiB0aGUgbWFjaGluZS4gKipBdXRvUmVzdCoqIGlzIGluc3RhbGxlZCBvbi1kZW1hbmQgdmlhIFtOUE1dKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9nZXQtbnBtKSBhcyBhIGdsb2JhbCB0b29sIGFuZCB1c2VzIHRoZSBsYXRlc3QgYXZhaWxhYmxlIHZlcnNpb24uICoqTWljcm9zb2Z0IEtpb3RhKiogaXMgaW5zdGFsbGVkIG9uLWRlbWFuZCBhcyBhIC5ORVQgVG9vbCBhbmQgcmVxdWlyZXMgLk5FVCA3LjAuIFRoaXMgbWVhbnMgdGhhdCB1c2luZyB0aGVzZSBjdXN0b20gdG9vbHMgaGF2ZSBhbiBpbml0aWFsIGRlbGF5IHVwb24gZmlyc3QgdGltZSB1c2UuIAoKKipOU3dhZ1N0dWRpbyoqIGlzIHN0YW5kIGFsb25lIFVJIHRvb2wgZm9yIGVkaXRpbmcgYSAqKi5uc3dhZyoqIHNwZWNpZmljYXRpb24gZmlsZSBmb3IgZ2VuZXJhdGluZyBjb2RlLiBUaGlzIHRvb2wgaXMgb3B0aW9uYWwgdG8gaW5zdGFsbCBhbmQgb2ZmaWNpYWwgaW5zdGFsbGF0aW9uIGluc3RydWN0aW9ucyBhcmUgYXZhaWxhYmxlIG9uIHRoZSBbTlN3YWcgV2lraSBvbiBHaXRodWJdKGh0dHBzOi8vZ2l0aHViLmNvbS9SaWNvU3V0ZXIvTlN3YWcvd2lraS9OU3dhZ1N0dWRpbykuIElmICoqTlN3YWdTdHVkaW8qKiBpcyBub3QgaW5zdGFsbGVkIG9uIHRoZSBtYWNoaW5lIHRoZW4gdGhlIFZpc3VhbCBTdHVkaW8gRXh0ZW5zaW9uIHdpbGwgaW5zdGFsbCB0aGUgKipOU3dhZyBDTEkqKiB2aWEgW05QTV0oaHR0cHM6Ly93d3cubnBtanMuY29tL2dldC1ucG0pIGFzIGEgZ2xvYmFsIHRvb2wgdXNpbmcgdGhlIGxhdGVzdCBhdmFpbGFibGUgdmVyc2lvbi4gCgpUaGUgKipOU3dhZyoqIGNvZGUgZ2VuZXJhdG9yIHByb2R1Y2VzIGNvZGUgdGhhdCBkZXBlbmRzIG9uIHRoZSBbTmV3dG9uc29mdC5Kc29uXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTmV3dG9uc29mdC5Kc29uLzEzLjAuMykgTnVHZXQgcGFja2FnZQoKVGhlICoqUmVmaXR0ZXIqKiBjb2RlIGdlbmVyYXRvciBwcm9kdWNlcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGUgW1JlZml0XShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvUmVmaXQvNy4wLjApIE51R2V0IHBhY2thZ2UKClRoZSAqKk9wZW5BUEkgR2VuZXJhdG9yKiogY29kZSBnZW5lcmF0b3IgcHJvZHVjZXMgY29kZSB0aGF0IGRlcGVuZHMgb24gdGhlIGZvbGxvd2luZyBOdUdldCBwYWNrYWdlczoKLSBbUmVzdFNoYXJwXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvUmVzdFNoYXJwLzExMC4yLjApCi0gW0pzb25TdWJUeXBlc10oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL0pzb25TdWJUeXBlcy8yLjAuMSkKLSBbUG9sbHldKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9Qb2xseS84LjIuMCkKLSBbTmV3dG9uc29mdC5Kc29uXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTmV3dG9uc29mdC5Kc29uLzEzLjAuMykKClRoZSBwcm9qZWN0ICoqS2lvdGEqKiBjb2RlIGdlbmVyYXRvciBwcm9kdWNlcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGUgZm9sbG93aW5nIE51R2V0IHBhY2thZ2VzCi0gW01pY3Jvc29mdC5LaW90YS5BYnN0cmFjdGlvbnNdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9NaWNyb3NvZnQuS2lvdGEuQWJzdHJhY3Rpb25zKQotIFtNaWNyb3NvZnQuS2lvdGEuSHR0cC5IdHRwQ2xpZW50TGlicmFyeV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL01pY3Jvc29mdC5LaW90YS5IdHRwLkh0dHBDbGllbnRMaWJyYXJ5KQotIFtNaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5Gb3JtXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTWljcm9zb2Z0Lktpb3RhLlNlcmlhbGl6YXRpb24uRm9ybSkKLSBbTWljcm9zb2Z0Lktpb3RhLlNlcmlhbGl6YXRpb24uVGV4dF0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL01pY3Jvc29mdC5LaW90YS5TZXJpYWxpemF0aW9uLlRleHQpCi0gW01pY3Jvc29mdC5LaW90YS5TZXJpYWxpemF0aW9uLkpzb25dKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9NaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5Kc29uKQotIFtNaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5NdWx0aXBhcnRdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9NaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5NdWx0aXBhcnQpCi0gW01pY3Jvc29mdC5LaW90YS5BdXRoZW50aWNhdGlvbi5BenVyZV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL01pY3Jvc29mdC5LaW90YS5BdXRoZW50aWNhdGlvbi5BenVyZSkKLSBbQXp1cmUuSWRlbnRpdHldKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9BenVyZS5JZGVudGl0eSkKClRoZSAqKlN3YWdnZXIgQ29kZWdlbiBDTEkqKiBjb2RlIGdlbmVyYXRvciBwcm9kdWNlcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGUgW1Jlc3RTaGFycF0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL1Jlc3RTaGFycC8xMDUuMS4wKSBhbmQgW0pzb25TdWJUeXBlc10oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL0pzb25TdWJUeXBlcy8xLjIuMCkgTnVHZXQgcGFja2FnZXMKClRoZSAqKkF1dG9SZXN0KiogY29kZSBnZW5lcmF0b3IgcHJvZHVjZXMgY29kZSB0aGF0IGRlcGVuZHMgb24gdGhlIFtNaWNyb3NvZnQuUmVzdC5DbGllbnRSdW50aW1lXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTWljcm9zb2Z0LlJlc3QuQ2xpZW50UnVudGltZS8yLjMuMjQpIGFuZCBbTmV3dG9uc29mdC5Kc29uXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTmV3dG9uc29mdC5Kc29uLzEzLjAuMykgTnVHZXQgcGFja2FnZXMKClRoaXMgVmlzdWFsIFN0dWRpbyBFeHRlbnNpb24gd2lsbCBhdXRvbWF0aWNhbGx5IGFkZCB0aGUgcmVxdWlyZWQgTnVHZXQgcGFja2FnZXMgdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZGVwZW5kcyBvbgoKCiMjIFNjcmVlbnNob3RzCgohW0FkZCAtIEFQSSBDbGllbnQgZnJvbSBPcGVuQVBJIFNwZWNpZmljYXRpb25dKGltYWdlcy9hZGQtbmV3LW1lbnUucG5nKQoKIVtFbnRlciBVUkwgdG8gT3BlbkFQSSBTcGVjaWZpY2F0aW9uXShpbWFnZXMvYWRkLW5ldy1kaWFsb2cucG5nKQoKIVtTb2x1dGlvbiBFeHBsb3JlciBDb250ZXh0IE1lbnVzXShpbWFnZXMvc29sdXRpb24tZXhwbG9yZXItY29udGV4dC1tZW51LmpwZykKCiFbTlN3YWcgU3R1ZGlvIENvbnRleHQgTWVudV0oaW1hZ2VzL25zd2Fnc3R1ZGlvLWNvbnRleHQtbWVudS5qcGcpCgoKIyMjIFNldHRpbmdzCgpUaGlzIGV4dGVuc2lvbiB3aWxsIGJ5IGRlZmF1bHQgbWFrZSBzb21lIGFzc3VtcHRpb25zIG9uIHRoZSBpbnN0YWxsYXRpb24gcGF0aHMgZm9yICoqSmF2YSoqLCAqKk5Td2FnKiogYW5kICoqTlBNKiogYnV0IGFsc28gcHJvdmlkZXMgb3B0aW9uIHBhZ2VzIGZvciBjb25maWd1cmluZyB0aGlzLiBUaGUgKipTd2FnZ2VyIENvZGVnZW4gQ0xJKiogYW5kIHRoZSAqKk9wZW5BUEkgR2VuZXJhdG9yKiogSkFSIGZpbGVzIGFyZSBieSBkZWZhdWx0IGRvd25sb2FkZWQgdG8gdGhlIHVzZXIgVEVNUCBmb2xkZXIgYnV0IGl0IGlzIGFsc28gcG9zc2libGUgdG8gc3BlY2lmeSB0byB1c2UgZXhpc3RpbmcgSkFSIGZpbGVzCgohW09wdGlvbnMgLSBHZW5lcmFsXShpbWFnZXMvb3B0aW9ucy1nZW5lcmFsLnBuZykKClN1cHBvcnRzIGN1c3RvbWlzaW5nIGhvdyBBdXRvUmVzdCBnZW5lcmF0ZXMgY29kZSBiYXNlZCBvbiB0aGUgQyMgZ2VuZXJhdG9yIHNldHRpbmdzIHRoYXQgdGhlIEF1dG9SZXN0IENMSSB0b29sIHByb3ZpZGVzCgohW09wdGlvbnMgLSBBdXRvUmVzdF0oaW1hZ2VzL29wdGlvbnMtYXV0b3Jlc3QucG5nKQoKU3VwcG9ydHMgY3VzdG9taXNpbmcgaG93IE5Td2FnIGdlbmVyYXRlcyBjb2RlIHVzaW5nIHRoZSBwcm9wZXJ0aWVzIGV4cG9zZWQgYnkgdGhlIE5Td2FnIE51R2V0IHBhY2thZ2UKCiFbT3B0aW9ucyAtIE5Td2FnXShpbWFnZXMvb3B0aW9ucy1uc3dhZy5wbmcpCgpTdXBwb3J0cyBjdXN0b21pc2luZyBob3cgdGhlICoqLm5zd2FnKiogZmlsZSBpcyBnZW5lcmF0ZWQgdXNpbmcgYSBzdWJzZXQgb2YgdGhlIG9wdGlvbnMgYXZhaWxhYmxlIGluIE5Td2FnIFN0dWRpbwoKIVtPcHRpb25zIC0gTlN3YWcgU3R1ZGlvXShpbWFnZXMvb3B0aW9ucy1uc3dhZ3N0dWRpby5wbmcpCgpTdXBwb3J0cyBjdXN0b21pc2luZyBob3cgT3BlbkFQSSBHZW5lcmF0b3IgZ2VuZXJhdGVzIGNvZGUgdXNpbmcgdGhlIGFkZGl0aW9uYWwgb3B0aW9uYWwgcHJvcGVydGllcyB0aGF0IHRoZSBPcGVuQVBJIEdlbmVyYXRvciBDTEkgdG9vbCBwcm92aWRlcwoKIVtPcHRpb25zIC0gT3BlbkFQSSBHZW5lcmF0b3JdKGltYWdlcy9vcHRpb25zLW9wZW5hcGlnZW5lcmF0b3IucG5nKQoKU3VwcG9ydHMgY3VzdG9taXNpbmcgaG93IFJlZml0dGVyIGdlbmVyYXRlcyB0aGUgUmVmaXQgaW50ZXJmYWNlLiBUaGlzIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIHdoZXRoZXIgdG8gcmV0dXJuIHRoZSB0eXBlIGRpcmVjdGx5IG9yIHdyYXAgaXQgaW5zaWRlIGFuIGBJQXBpUmVzcG9uc2U8VD5gLiBZb3UgY2FuIGFsc28gZGlzYWJsZSBnZW5lcmF0aW5nIGNvbnRyYWN0cyBvciBYTUwgZG9jIHN0eWxlIGNvbW1lbnRzCgohW09wdGlvbnMgLSBSZWZpdHRlcl0oaW1hZ2VzL3JlZml0dGVyLW9wdGlvbnMucG5nKQoKVGhpcyBleHRlbnNpb24gY29sbGVjdHMgZXJyb3JzIGFuZCB0cmFja3MgZmVhdHVyZSB1c2FnZXMgdG8gYSBzZXJ2aWNlIGNhbGxlZCBbRXhjZXB0aW9ubGVzc10oaHR0cHM6Ly9leGNlcHRpb25sZXNzLmNvbSkgYW5kIFtBenVyZSBBcHBsaWNhdGlvbiBJbnNpZ2h0c10oaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2F6dXJlL2F6dXJlLW1vbml0b3IvYXBwL2FwcC1pbnNpZ2h0cy1vdmVydmlldz9XVC5tY19pZD1EVC1NVlAtNTAwNDgyMikuIFRoaXMgaXMgZG9uZSBhbm9ueW1vdXNseSB1c2luZyBhIHN1cHBvcnQga2V5IGFuZCBhIGdlbmVyYXRlZCBhbm9ueW1vdXMgaWRlbnRpdHkgYmFzZWQgb24gYSBzZWN1cmUgaGFzaCBvZiB1c2VybmFtZUBob3N0CgohW09wdGlvbnMgLSBBbmFseXRpY3NdKGltYWdlcy9zdXBwb3J0LWtleS5wbmcpCgoKIyMjIFZpc3VhbCBTdHVkaW8gZm9yIE1hYwoKIVtBZGQgLSBBUEkgQ2xpZW50IGZyb20gT3BlbkFQSSBTcGVjaWZpY2F0aW9uXShpbWFnZXMvdnNtYWMtYWRkLW5ldy1tZW51LnBuZykKCiFbRW50ZXIgVVJMIHRvIE9wZW5BUEkgU3BlY2lmaWNhdGlvbl0oaW1hZ2VzL3ZzbWFjLWFkZC1uZXctZGlhbG9nLnBuZykKCiFbU29sdXRpb24gRXhwbG9yZXIgQ29udGV4dCBNZW51c10oaW1hZ2VzL3ZzbWFjLWdlbmVyYXRlLWNvZGUucG5nKQoKIVtOU3dhZyBTdHVkaW8gQ29udGV4dCBNZW51XShpbWFnZXMvdnNtYWMtbnN3YWctc3R1ZGlvLnBuZykKCgojIEluc3RhbGxhdGlvbgoKVGhlIFZpc3VhbCBTdHVkaW8gZXh0ZW5zaW9uIGNhbiBiZSBpbnN0YWxsZWQgZGlyZWN0bHkgZnJvbSBWaXN1YWwgU3R1ZGlvIDIwMTkgYW5kIDIwMjIgdmlhIHRoZSAqKkV4dGVuc2lvbnMgRGlhbG9nIEJveCoqLiBUaGUgcHJvY2VzcyBpcyBiZXN0IGRlc2NyaWJlZCBpbiB0aGUgb2ZmaWNpYWwgTWljcm9zb2Z0IGRvY3VtZW50YXRpb24gZm9yIFtNYW5hZ2luZyBleHRlbnNpb25zIGZvciBWaXN1YWwgU3R1ZGlvXShodHRwczovL2RvY3MubWljcm9zb2Z0LmNvbS9lbi11cy92aXN1YWxzdHVkaW8vaWRlL2ZpbmRpbmctYW5kLXVzaW5nLXZpc3VhbC1zdHVkaW8tZXh0ZW5zaW9ucz92aWV3PXZzLTIwMTkmV1QubWNfaWQ9RFQtTVZQLTUwMDQ4MjIpCgojIyBWaXN1YWwgU3R1ZGlvIGZvciBNYWMKClRoaXMgaW5zdGFsbGF0aW9uIHByb2Nlc3MgZm9yICoqVmlzdWFsIFN0dWRpbyBmb3IgTWFjKiogaXMgY3VycmVudGx5IGEgYml0IHRyb3VibGVzb21lIGFzIHRoZSBNb25vRGV2ZWxvcCBBZGRpbiBSZXBvc2l0b3J5IGlzIGN1cnJlbnRseSBub3QgYWNjZXB0aW5nIG5ldyB1c2VycyBzbyBJIGNhbid0IHJlYWxseSByZWdpc3RlciBhbmQgc2V0dXAgbXkgZXh0ZW5zaW9uLgoKVGhlcmUgYXJlIDIgd2F5cyBvZiBpbnN0YWxsaW5nIG15IGV4dGVuc2lvbiBvbiBWaXN1YWwgU3R1ZGlvIGZvciBNYWM6IEFkZGluZyBhIGN1c3RvbSBleHRlbnNpb24gcmVwb3NpdG9yeSBvciBJbnN0YWxsaW5nIHRoZSAqKi5tcGFjayoqIGZpbGUgZGlyZWN0bHkgZnJvbSB0aGUgRXh0ZW5zaW9ucyBNYW5hZ2VyCgojIyMgQWRkaW5nIGEgbmV3IGV4dGVuc2lvbiByZXBvc2l0b3J5CgpIZXJlJ3Mgd2hhdCB5b3UgbmVlZCB0byBkbzoKCi0gT3BlbiB0aGUgVmlzdWFsIFN0dWRpbyBmb3IgTWFjICoqRXh0ZW5zaW9uIE1hbmFnZXIqKgotIFlvdSBjYW4gZG8gdGhpcyBmcm9tIHRoZSBtZW51ICoqVmlzdWFsIFN0dWRpbyoqIC0+ICoqRXh0ZW50aW9ucyoqCgohW09wZW4gRXh0ZW5zaW9ucyBEaWFsb2cgQm94XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1tZW51LnBuZykKCi0gU2VsZWN0IHRoZSAqKkdhbGxlcnkqKiBUYWIKLSBFeHBhbmQgdGhlIFJlcG9zaXRvcnkgZHJvcCBkb3duIGJveCBhbmQgc2VsZWN0ICoqTWFuYWdlIFJlcG9zaXRvcmllcyoqCgohW01hbmFnZSBSZXBvc2l0b3JpZXNdKGltYWdlcy92c21hYy1leHRlbnNpb25zLW1hbmFnZS1yZXBvc2l0b3JpZXMucG5nKQoKLSBQcmVzcyBvbiB0aGUgKipBZGQqKiBidXR0b24gdG8gYWRkIGEgbmV3IGN1c3RvbSBleHRlbnNpb24gcmVwb3NpdG9yeQoKIVtNYW5hZ2UgUmVwb3NpdG9yaWVzXShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1yZXBvc2l0b3JpZXMucG5nKQoKLSBSZWdpc3RlciBhbiBvbmxpbmUgcmVwb3NpdG9yeSBhdCAqKmh0dHBzOi8vY2hyaXN0aWFuaGVsbGUuY29tL3ZzbWFjL21haW4ubXJlcCoqCi0gQ2xpY2sgKipPSyoqCgohW0FkZCBSZXBvc2l0b3J5XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1hZGQtcmVwb3NpdG9yeS5wbmcpCgotIE5vdyBteSBleHRlbnNpb24gcmVwb3NpdG9yeSBpcyBhZGRlZCB0byB0aGUgbGlzdAotIE1ha2Ugc3VyZSB0aGF0IHRoaXMgaXMgZW5hYmxlZCAoaW5kaWNhdGVkIGJ5IGEgY2hlY2sgYm94KQoKIVtBZGQgUmVwb3NpdG9yeSBEaWFsb2ddKGltYWdlcy92c21hYy1leHRlbnNpb25zLWFkZGVkLXJlcG9zaXRvcnkucG5nKQoKLSBZb3Ugc2hvdWxkIG5vdyBiZSBhYmxlIHRvIHNlZSBteSBleHRlbnNpb25zIGZyb20gdGhlICoqR2FsbGVyeSoqIHRhYgoKIVtBZGRlZCBSZXBvc2l0b3J5XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1nYWxsZXJ5LnBuZykKCi0gQnkgYWRkaW5nIG15IGV4dGVuc2lvbiByZXBvc2l0b3J5IHlvdSB3aWxsIGJlIGFibGUgdG8gY29udmVuaWVudGx5IHVwZGF0ZSBteSBleHRlbnNpb24gdXNpbmcgdGhlIFZpc3VhbCBTdHVkaW8gZm9yIE1hYyBFeHRlbnNpb24gTWFuYWdlcgoKIVtBZGQgUmVwb3NpdG9yeV0oaW1hZ2VzL3ZzbWFjLXVwZGF0ZXMucG5nKQoKIVtBZGQgUmVwb3NpdG9yeV0oaW1hZ2VzL3ZzbWFjLXVwZGF0ZS1pbnN0YWxsLnBuZykKCiFbQWRkIFJlcG9zaXRvcnldKGltYWdlcy92c21hYy11cGRhdGUtaW5zdGFsbC1wcm9ncmVzcy5wbmcpCgojIyMgSW5zdGFsbGluZyB0aGUgKioubXBhY2sqKiBmaWxlIGRpcmVjdGx5CgpIZXJlJ3Mgd2hhdCB5b3UgbmVlZCB0byBkbzoKLSBEb3dubG9hZCB0aGUgbGF0ZXN0ICoqLm1wYWNrIGZpbGUqKiBmcm9tIHRoZSBbTGF0ZXN0IEdpdGh1YiBSZWxlYXNlXShodHRwczovL2dpdGh1Yi5jb20vY2hyaXN0aWFuaGVsbGUvYXBpY2xpZW50Y29kZWdlbi9yZWxlYXNlcy9sYXRlc3QpCi0gTm93IGZyb20gd2l0aGluIFZpc3VhbCBTdHVkaW8gZm9yIE1hYyB5b3UgbmVlZCB0byBsYXVuY2ggdGhlICoqRXh0ZW5zaW9ucyBEaWFsb2cgQm94KiouIFlvdSBjYW4gZG8gdGhpcyBmcm9tIHRoZSBtZW51ICoqVmlzdWFsIFN0dWRpbyoqIC0+ICoqRXh0ZW50aW9ucyoqCgohW09wZW4gRXh0ZW5zaW9ucyBEaWFsb2cgQm94XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1tZW51LnBuZykKCi0gQ2xpY2sgb24gdGhlICoqSW5zdGFsbCBmcm9tIEZpbGUqKiBidXR0b24KCiFbTWFudWFsbHkgaW5zdGFsbCAubXBhY2sgZmlsZV0oaW1hZ2VzL3ZzbWFjLWV4dGVuc2lvbnMtaW5zdGFsbC5wbmcpCgotIEJyb3dzZSB0byB0aGUgLm1wYWNrIGZpbGUgYW5kIHNlbGVjdCBpdC4gWW91IHdpbGwgYmUgcHJvbXB0ZWQgd2l0aCBhIGNvbmZpcm1hdGlvbiBkaWFsb2cKCiFbQ29uZmlybSAubXBhY2sgZmlsZSBpbnN0YWxsXShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1pbnN0YWxsLWNvbmZpcm0ucG5nKQoKLSBDbGljayAqKkluc3RhbGwqKiBhbmQgcmVzdGFydCBWaXN1YWwgU3R1ZGlvIGZvciBNYWMKLSBUbyBWZXJpZnkgdGhhdCB0aGUgQWRkLWluIHdhcyBpbnN0YWxsZWQgeW91IGNhbiByZS1vcGVuIHRoZSBFeHRlbnNpb25zIERpYWxvZyBCb3gsIHNlbGVjdCB0aGUgKipJbnN0YWxsZWQqKiB0YWIgYW5kIGV4cGFuZCB0aGUgKipJREUgRXh0ZW5zaW9ucyoqLiBZb3Ugc2hvdWxkIGJlIGFibGUgdG8gc2VlIHRoZSAqKlJFU1QgQVBJIENsaWVudCBDb2RlIEdlbmVyYXRvcioqLgoKLSBVbmluc3RhbGxpbmcgdGhlIEFkZC1pbiBpcyBkb25lIGluIHRoaXMgc2FtZSBkaWFsb2cgYm94IGJ5IGNsaWNraW5nIHRoZSAqKlVuaW5zdGFsbCoqIGJ1dHRvbgoKIVtNYW51YWxseSB1bmluc3RhbGwgQWRkLWluXShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy11bmluc3RhbGwucG5nKQoKCiMgQ3Jvc3MgUGxhdGZvcm0gQ29tbWFuZCBMaW5lIFRvb2wKQWxsIGN1c3RvbSB0b29scyBtZW50aW9uZWQgYWJvdmUgYXJlIGFsc28gaW1wbGVtZW50ZWQgaW4gYSBjcm9zcyBwbGF0Zm9ybSBjb21tYW5kIGxpbmUgYXBwbGljYXRpb24KCiMjIyMgUmVxdWlyZW1lbnRzCi0gLk5FVCA2LjAgcnVudGltZQotIEphdmEgUnVudGltZSBFbnZpcm9ubWVudAotIE5QTQoKIyMjIEluc3RhbGxhdGlvbgpUaGUgdG9vbCBjYW4gYmUgaW5zdGFsbGVkIGFzIGEgLk5FVCBDb3JlIGdsb2JhbCB0b29sIHRoYXQgeW91IGNhbiBjYWxsIGZyb20gdGhlIHNoZWxsIC8gY29tbWFuZCBsaW5lCmBgYApkb3RuZXQgdG9vbCBpbnN0YWxsIC0tZ2xvYmFsIHJhcGljZ2VuCmBgYApvciBieSBmb2xsb3dpbmcgdGhlIGluc3RydWN0aW9ucyBbaGVyZV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL3JhcGljZ2VuKSB0byBpbnN0YWxsIGEgc3BlY2lmaWMgdmVyc2lvbiBvZiB0b29sCgojIyMgVXNhZ2UKU2luY2UgdGhlIHRvb2wgaXMgcHVibGlzaGVkIGFzIGEgLk5FVCBDb3JlIFRvb2wsIGl0IGNhbiBiZSBsYXVuY2hlZCBmcm9tIGFueXdoZXJlIHVzaW5nIGFueSBjb21tYW5kIGxpbmUgaW50ZXJmYWNlIGJ5IGNhbGxpbmcgKipyYXBpY2dlbioqLgpUaGUgaGVscCBpbmZvcm1hdGlvbiBpcyBkaXNwbGF5ZWQgd2hlbiBub3Qgc3BlY2lmeWluZyBhbnkgYXJndW1lbnRzIHRvICoqcmFwaWNnZW4qKgoKYGBgClVzYWdlOiByYXBpY2dlbiBbY29tbWFuZF0gW29wdGlvbnNdCgpPcHRpb25zOgogIC12fC0tdmVyYm9zZSAgICAgICBTaG93IHZlcmJvc2Ugb3V0cHV0CiAgLT98LWh8LS1oZWxwICAgICAgIFNob3cgaGVscCBpbmZvcm1hdGlvbi4KCkNvbW1hbmRzOgogIGNzaGFycCAgICAgICAgICAgICBHZW5lcmF0ZSBDIyBBUEkgY2xpZW50cwogIGptZXRlciAgICAgICAgICAgICBHZW5lcmF0ZSBBcGFjaGUgSk1ldGVyIHRlc3QgcGxhbnMKICBvcGVuYXBpLWdlbmVyYXRvciAgR2VuZXJhdGUgY29kZSB1c2luZyBPcGVuQVBJIEdlbmVyYXRvciAodjcuMS4wKS4KICAgICAgICAgICAgICAgICAgICAgU2VlIHN1cHBvcnRlZCBnZW5lcmF0b3JzIGF0IGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaC9kb2NzL2dlbmVyYXRvcnMvCiAgdHlwZXNjcmlwdCAgICAgICAgIEdlbmVyYXRlIFR5cGVTY3JpcHQgQVBJIGNsaWVudHMKClJ1biAncmFwaWNnZW4gW2NvbW1hbmRdIC0/fC1ofC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgYSBjb21tYW5kLgpgYGAKClNvbWUgaGVscCBpbmZvcm1hdGlvbiBpcyBhbHNvIHByb3ZpZGVkIHBlciBjb21tYW5kIGFuZCBjYW4gYmUgbGF1bmNoZWQgYnkgCgpgYGAKcmFwaWNnZW4gW2NvbW1hbmQgbmFtZV0gLT8KYGBgCgpvcgoKYGBgCnJhcGljZ2VuIFtjb21tYW5kIG5hbWVdIFtzdWIgY29tbWFuZCBuYW1lXSAtPwpgYGAKCkZvciBleGFtcGxlOgoKYGBgCnJhcGljZ2VuIGNzaGFycCAtPwpgYGAgCgp3aWxsIG91dHB1dCB0aGlzOgoKYGBgCkdlbmVyYXRlIEMjIEFQSSBjbGllbnRzCgpVc2FnZTogcmFwaWNnZW4gY3NoYXJwIFtjb21tYW5kXSBbb3B0aW9uc10KCk9wdGlvbnM6CiAgLT98LWh8LS1oZWxwICBTaG93IGhlbHAgaW5mb3JtYXRpb24uCgpDb21tYW5kczoKICBhdXRvcmVzdCAgICAgIEF1dG9SZXN0ICh2My4wLjAtYmV0YS4yMDIxMDUwNC4yKQogIGtpb3RhICAgICAgICAgTWljcm9zb2Z0IEtpb3RhICh2MS45LjApCiAgbnN3YWcgICAgICAgICBOU3dhZyAodjEzLjIwLjApCiAgb3BlbmFwaSAgICAgICBPcGVuQVBJIEdlbmVyYXRvciAodjcuMS4wKQogIHJlZml0dGVyICAgICAgUmVmaXR0ZXIgKHYwLjguNikKICBzd2FnZ2VyICAgICAgIFN3YWdnZXIgQ29kZWdlbiBDTEkgKHYzLjAuMzQpCgpSdW4gJ2NzaGFycCBbY29tbWFuZF0gLT98LWh8LS1oZWxwJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBhIGNvbW1hbmQuCgpgYGAKCmFuZAoKYGBgCnJhcGljZ2VuIGNzaGFycCBhdXRvcmVzdCAtPwpgYGAKCndpbGwgb3V0cHV0IHRoaXM6CgpgYGAKR2VuZXJhdGUgU3dhZ2dlciAvIE9wZW4gQVBJIGNsaWVudCB1c2luZyBBdXRvUmVzdAoKVXNhZ2U6IHJ1biBhdXRvcmVzdCBbb3B0aW9uc10gPHN3YWdnZXJGaWxlPiA8bmFtZXNwYWNlPiA8b3V0cHV0RmlsZT4KCkFyZ3VtZW50czoKICBzd2FnZ2VyRmlsZSAgIFBhdGggdG8gdGhlIFN3YWdnZXIgLyBPcGVuIEFQSSBzcGVjaWZpY2F0aW9uIGZpbGUKICBuYW1lc3BhY2UgICAgIERlZmF1bHQgbmFtZXNwYWNlIHRvIGluIHRoZSBnZW5lcmF0ZWQgY29kZQogIG91dHB1dEZpbGUgICAgT3V0cHV0IGZpbGVuYW1lIHRvIHdyaXRlIHRoZSBnZW5lcmF0ZWQgY29kZSB0by4gRGVmYXVsdCBpcyB0aGUgc3dhZ2dlckZpbGUgLmNzCgpPcHRpb25zOgogIC0/fC1ofC0taGVscCAgU2hvdyBoZWxwIGluZm9ybWF0aW9uCmBgYAoKb3IgCgpgYGAKcmFwaWNnZW4gdHlwZXNjcmlwdCAtPwpgYGAKCndpbGwgb3V0cHV0IHRoaXM6CgpgYGAKR2VuZXJhdGUgVHlwZVNjcmlwdCBBUEkgY2xpZW50CgpVc2FnZTogcmFwaWNnZW4gdHlwZXNjcmlwdCBbb3B0aW9uc10gPGdlbmVyYXRvcj4gPHN3YWdnZXJGaWxlPiA8b3V0cHV0UGF0aD4KCkFyZ3VtZW50czoKICBnZW5lcmF0b3IgICAgICAgICBUaGUgdGVjaCBzdGFjayB0byB1c2UgZm9yIHRoZSBnZW5lcmF0ZWQgY2xpZW50IGxpYnJhcnkKICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHZhbHVlcyBhcmU6IEFuZ3VsYXIsIEF1cmVsaWEsIEF4aW9zLCBGZXRjaCwgSW52ZXJzaWZ5LCBKUXVlcnksIE5lc3RKUywgTm9kZSwgUmVkdXhRdWVyeSwKICAgICAgICAgICAgICAgICAgICBSeGpzLgogICAgICAgICAgICAgICAgICAgIERlZmF1bHQgdmFsdWUgaXM6IEFuZ3VsYXIuCiAgc3dhZ2dlckZpbGUgICAgICAgUGF0aCB0byB0aGUgU3dhZ2dlciAvIE9wZW4gQVBJIHNwZWNpZmljYXRpb24gZmlsZQogIG91dHB1dFBhdGggICAgICAgIE91dHB1dCBmb2xkZXIgdG8gd3JpdGUgdGhlIGdlbmVyYXRlZCBjb2RlIHRvCiAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCB2YWx1ZSBpczogdHlwZXNjcmlwdC1nZW5lcmF0ZWQtY29kZS4KCk9wdGlvbnM6CiAgLW5sfC0tbm8tbG9nZ2luZyAgRGlzYWJsZXMgQW5hbHl0aWNzIGFuZCBFcnJvciBSZXBvcnRpbmcKICAtP3wtaHwtLWhlbHAgICAgICBTaG93IGhlbHAgaW5mb3JtYXRpb24uCmBgYAoKIyMgVXNhZ2UgRXhhbXBsZXM6CgpMZXQncyBzYXkgd2UgaGF2ZSBhIE9wZW5BUEkgU3BlY2lmaWNhdGlvbnMgZG9jdW1lbnQgY2FsbGVkICoqU3dhZ2dlci5qc29uKioKCkZvciBzdGFydGVycywgd2UgY2FuIHVzZSB0aGUgU3dhZ2dlciBQZXRzdG9yZSBzcGVjLiBIZXJlJ3MgYW4gZXhhbXBsZSBwb3dlcnNoZWxsIHNjcmlwdCBmb3IgZG93bmxvYWRpbmcgaXQKCmBgYApJbnZva2UtV2ViUmVxdWVzdCAtVXJpIGh0dHBzOi8vcGV0c3RvcmUuc3dhZ2dlci5pby92My9zd2FnZ2VyLmpzb24gLU91dEZpbGUgU3dhZ2dlci5qc29uCmBgYAoKSW4gY2FzZSB5b3UgZG9uJ3QgaGF2ZSB0aGUgQ0xJIHRvb2wgaW5zdGFsbGVkIHlvdSBjYW4gaW5zdGFsbCBpdCBieQoKYGBgCmRvdG5ldCB0b29sIGluc3RhbGwgLS1nbG9iYWwgcmFwaWNnZW4KYGBgCgpIZXJlJ3MgYW4gZXhhbXBsZSBvZiBob3cgdG8gZ2VuZXJhdGUgY29kZSB1c2luZyAqKkF1dG9SZXN0KioKCmBgYApyYXBpY2dlbiBjc2hhcnAgYXV0b3Jlc3QgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9BdXRvUmVzdE91dHB1dC5jcwpgYGAKCkhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB0byBnZW5lcmF0ZSBjb2RlIHVzaW5nICoqS2lvdGEqKgoKYGBgCnJhcGljZ2VuIGNzaGFycCBraW90YSBTd2FnZ2VyLmpzb24gR2VuZXJhdGVkQ29kZSAuL09wZW5BcGlPdXRwdXQuY3MKYGBgCgpIZXJlJ3MgYW4gZXhhbXBsZSBvZiBob3cgdG8gZ2VuZXJhdGUgY29kZSB1c2luZyAqKk5Td2FnKioKCmBgYApyYXBpY2dlbiBjc2hhcnAgbnN3YWcgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9OU3dhZ091dHB1dC5jcwpgYGAKCkhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB0byBnZW5lcmF0ZSBjb2RlIHVzaW5nICoqU3dhZ2dlciBDb2RlZ2VuIENMSSoqCgpgYGAKcmFwaWNnZW4gY3NoYXJwIHN3YWdnZXIgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9Td2FnZ2VyT3V0cHV0LmNzCmBgYAoKSGVyZSdzIGFuIGV4YW1wbGUgb2YgaG93IHRvIGdlbmVyYXRlIGNvZGUgdXNpbmcgKipPcGVuQVBJIEdlbmVyYXRvcioqCgpgYGAKcmFwaWNnZW4gY3NoYXJwIG9wZW5hcGkgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9PcGVuQXBpT3V0cHV0LmNzCmBgYAoKSGVyZSdzIGFuIGV4YW1wbGUgb2YgaG93IHRvIGdlbmVyYXRlIGNvZGUgKipKTWV0ZXIqKiB0ZXN0IHBsYW5zCgpgYGAKcmFwaWNnZW4gam1ldGVyIFN3YWdnZXIuanNvbgpgYGAKCkhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB0byBnZW5lcmF0ZSBjb2RlIGZvciAqKlR5cGVTY3JpcHQqKgoKYGBgCnJhcGljZ2VuIHR5cGVzY3JpcHQgQW5ndWxhciBTd2FnZ2VyLmpzb24KYGBgCgojCgpGb3IgdGlwcyBhbmQgdHJpY2tzIG9uIHNvZnR3YXJlIGRldmVsb3BtZW50LCBjaGVjayBvdXQgW215IGJsb2ddKGh0dHBzOi8vY2hyaXN0aWFuaGVsbGUuY29tKQoKSWYgeW91IGZpbmQgdGhpcyB1c2VmdWwgYW5kIGZlZWwgYSBiaXQgZ2VuZXJvdXMgdGhlbiBmZWVsIGZyZWUgdG8gW2J1eSBtZSBhIGNvZmZlZSDimJVdKGh0dHBzOi8vd3d3LmJ1eW1lYWNvZmZlZS5jb20vY2hyaXN0aWFuaGVsbGUpCgo= - readmeEtag: '"ec701fdd24c16e787d8c8eba89a15fce142c6572746080e4d3273549c8144eff"' - readmeLastModified: Tue, 12 Dec 2023 23:36:58 GMT + WyFbQnVpbGQgc3RhdHVzXShodHRwczovL2NpLmFwcHZleW9yLmNvbS9hcGkvcHJvamVjdHMvc3RhdHVzL2diMmRvZTN0Z3dqdDQ3Y24vYnJhbmNoL21hc3Rlcj9zdmc9dHJ1ZSldKGh0dHBzOi8vY2kuYXBwdmV5b3IuY29tL3Byb2plY3QvY2hyaXN0aWFuaGVsbGUvYXBpY2xpZW50Y29kZWdlbi9icmFuY2gvbWFzdGVyKQohW0NMSSBUb29sXShodHRwczovL2dpdGh1Yi5jb20vY2hyaXN0aWFuaGVsbGUvYXBpY2xpZW50Y29kZWdlbi93b3JrZmxvd3MvQ0xJJTIwVG9vbC9iYWRnZS5zdmcpCiFbVlNJWF0oaHR0cHM6Ly9naXRodWIuY29tL2NocmlzdGlhbmhlbGxlL2FwaWNsaWVudGNvZGVnZW4vd29ya2Zsb3dzL1ZTSVgvYmFkZ2Uuc3ZnKQohW1ZTIE1hY10oaHR0cHM6Ly9naXRodWIuY29tL2NocmlzdGlhbmhlbGxlL2FwaWNsaWVudGNvZGVnZW4vd29ya2Zsb3dzL1ZTJTIwTWFjL2JhZGdlLnN2ZykKIVtTbW9rZSBUZXN0c10oaHR0cHM6Ly9naXRodWIuY29tL2NocmlzdGlhbmhlbGxlL2FwaWNsaWVudGNvZGVnZW4vd29ya2Zsb3dzL1Ntb2tlJTIwVGVzdHMvYmFkZ2Uuc3ZnKQoKWyFbTWFpbnRhaW5hYmlsaXR5IFJhdGluZ10oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9c3FhbGVfcmF0aW5nKV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2Rhc2hib2FyZD9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQpbIVtSZWxpYWJpbGl0eSBSYXRpbmddKGh0dHBzOi8vc29uYXJjbG91ZC5pby9hcGkvcHJvamVjdF9iYWRnZXMvbWVhc3VyZT9wcm9qZWN0PWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4mbWV0cmljPXJlbGlhYmlsaXR5X3JhdGluZyldKGh0dHBzOi8vc29uYXJjbG91ZC5pby9kYXNoYm9hcmQ/aWQ9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbikKWyFbU2VjdXJpdHkgUmF0aW5nXShodHRwczovL3NvbmFyY2xvdWQuaW8vYXBpL3Byb2plY3RfYmFkZ2VzL21lYXN1cmU/cHJvamVjdD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuJm1ldHJpYz1zZWN1cml0eV9yYXRpbmcpXShodHRwczovL3NvbmFyY2xvdWQuaW8vZGFzaGJvYXJkP2lkPWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4pClshW0J1Z3NdKGh0dHBzOi8vc29uYXJjbG91ZC5pby9hcGkvcHJvamVjdF9iYWRnZXMvbWVhc3VyZT9wcm9qZWN0PWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4mbWV0cmljPWJ1Z3MpXShodHRwczovL3NvbmFyY2xvdWQuaW8vZGFzaGJvYXJkP2lkPWNocmlzdGlhbmhlbGxlX2FwaWNsaWVudGNvZGVnZW4pClshW1Z1bG5lcmFiaWxpdGllc10oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9dnVsbmVyYWJpbGl0aWVzKV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2Rhc2hib2FyZD9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQpbIVtDb2RlIFNtZWxsc10oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9Y29kZV9zbWVsbHMpXShodHRwczovL3NvbmFyY2xvdWQuaW8vc3VtbWFyeS9uZXdfY29kZT9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQpbIVtDb3ZlcmFnZV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL2FwaS9wcm9qZWN0X2JhZGdlcy9tZWFzdXJlP3Byb2plY3Q9Y2hyaXN0aWFuaGVsbGVfYXBpY2xpZW50Y29kZWdlbiZtZXRyaWM9Y292ZXJhZ2UpXShodHRwczovL3NvbmFyY2xvdWQuaW8vc3VtbWFyeS9uZXdfY29kZT9pZD1jaHJpc3RpYW5oZWxsZV9hcGljbGllbnRjb2RlZ2VuKQoKWyFbVmVyc2lvbl0oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL3YvQ2hyaXN0aWFuUmVzbWFIZWxsZS5BcGlDbGllbnRDb2RlR2VuZXJhdG9yP2xhYmVsPU1hcmtldHBsYWNlKV0oaHR0cHM6Ly9tYXJrZXRwbGFjZS52aXN1YWxzdHVkaW8uY29tL2l0ZW1zP2l0ZW1OYW1lPUNocmlzdGlhblJlc21hSGVsbGUuQVBJQ2xpZW50Q29kZUdlbmVyYXRvcikgClshW0Rvd25sb2Fkc10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL2QvQ2hyaXN0aWFuUmVzbWFIZWxsZS5BcGlDbGllbnRDb2RlR2VuZXJhdG9yP2xhYmVsPVZTJTIwMjAxOSldKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1DaHJpc3RpYW5SZXNtYUhlbGxlLkFQSUNsaWVudENvZGVHZW5lcmF0b3IpClshW1JhdGluZ10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL3N0YXJzL0NocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcildKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1DaHJpc3RpYW5SZXNtYUhlbGxlLkFQSUNsaWVudENvZGVHZW5lcmF0b3IpClshW0Rvd25sb2Fkc10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL2QvQ2hyaXN0aWFuUmVzbWFIZWxsZS5BUElDbGllbnRDb2RlR2VuZXJhdG9yMjAyMj9sYWJlbD1WUyUyMDIwMjIpXShodHRwczovL21hcmtldHBsYWNlLnZpc3VhbHN0dWRpby5jb20vaXRlbXM/aXRlbU5hbWU9Q2hyaXN0aWFuUmVzbWFIZWxsZS5BUElDbGllbnRDb2RlR2VuZXJhdG9yMjAyMikgClshW1JhdGluZ10oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby92aXN1YWwtc3R1ZGlvLW1hcmtldHBsYWNlL3N0YXJzL0NocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcjIwMjIpXShodHRwczovL21hcmtldHBsYWNlLnZpc3VhbHN0dWRpby5jb20vaXRlbXM/aXRlbU5hbWU9Q2hyaXN0aWFuUmVzbWFIZWxsZS5BUElDbGllbnRDb2RlR2VuZXJhdG9yMjAyMikKWyFbTnVHZXRdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vbnVnZXQvdi9yYXBpY2dlbi5zdmc/c3R5bGU9ZmxhdC1zcXVhcmUpXShodHRwOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9yYXBpY2dlbikKWyFbTnVHZXRdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vbnVnZXQvZHQvcmFwaWNnZW4uc3ZnP3N0eWxlPWZsYXQtc3F1YXJlJmxhYmVsPW51Z2V0KV0oaHR0cDovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvcmFwaWNnZW4pCgpbIVtidXltZWFjb2ZmZWVdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvYnV5JTIwbWUlMjBhJTIwY29mZmVlLWRvbmF0ZS15ZWxsb3cuc3ZnKV0oaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9jaHJpc3RpYW5oZWxsZSkKWyFbSm9pbiB0aGUgY2hhdCBhdCBodHRwczovL2dpdHRlci5pbS9hcGljbGllbnRjb2RlZ2VuL2NvbW11bml0eV0oaHR0cHM6Ly9iYWRnZXMuZ2l0dGVyLmltL2FwaWNsaWVudGNvZGVnZW4vY29tbXVuaXR5LnN2ZyldKGh0dHBzOi8vZ2l0dGVyLmltL2FwaWNsaWVudGNvZGVnZW4vY29tbXVuaXR5P3V0bV9zb3VyY2U9YmFkZ2UmdXRtX21lZGl1bT1iYWRnZSZ1dG1fY2FtcGFpZ249cHItYmFkZ2UmdXRtX2NvbnRlbnQ9YmFkZ2UpCgojIFJFU1QgQVBJIENsaWVudCBDb2RlIEdlbmVyYXRvcgpBIGNvbGxlY3Rpb24gb2YgVmlzdWFsIFN0dWRpbyBDIyBjdXN0b20gdG9vbCBjb2RlIGdlbmVyYXRvcnMgZm9yIFN3YWdnZXIgLyBPcGVuQVBJIHNwZWNpZmljYXRpb24gZmlsZXMKCiMjIyMgRG93bmxvYWQKCi0gKipbVmlzdWFsIFN0dWRpbyAyMDIyXShodHRwczovL21hcmtldHBsYWNlLnZpc3VhbHN0dWRpby5jb20vaXRlbXM/aXRlbU5hbWU9Q2hyaXN0aWFuUmVzbWFIZWxsZS5BcGlDbGllbnRDb2RlR2VuZXJhdG9yMjAyMikqKgotICoqW1Zpc3VhbCBTdHVkaW8gMjAxOV0oaHR0cHM6Ly9tYXJrZXRwbGFjZS52aXN1YWxzdHVkaW8uY29tL2l0ZW1zP2l0ZW1OYW1lPUNocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcikqKgotICoqW1Zpc3VhbCBTdHVkaW8gMjAxN10oaHR0cHM6Ly9tYXJrZXRwbGFjZS52aXN1YWxzdHVkaW8uY29tL2l0ZW1zP2l0ZW1OYW1lPUNocmlzdGlhblJlc21hSGVsbGUuQXBpQ2xpZW50Q29kZUdlbmVyYXRvcjIwMTcpKioKLSAqKltWaXN1YWwgU3R1ZGlvIGZvciBNYWNdKGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RpYW5oZWxsZS9hcGljbGllbnRjb2RlZ2VuL3JlbGVhc2VzL2xhdGVzdCkqKi4gRm9sbG93ICoqW3RoZXNlIGluc3RydWN0aW9uc10oI3Zpc3VhbC1zdHVkaW8tZm9yLW1hYy0xKSoqIGZvciB1cGRhdGUgY29udmVuaWVuY2Ugb24gVmlzdWFsIFN0dWRpbyBmb3IgTWFjCgojIyBGZWF0dXJlcwoKLSBTdXBwb3J0cyBWaXN1YWwgU3R1ZGlvIDIwMTcsIDIwMTksIDIwMjIsIGFuZCBbVmlzdWFsIFN0dWRpbyBmb3IgTWFjXSgjdmlzdWFsLXN0dWRpby1mb3ItbWFjLTEpCi0gQWRkIE5ldyBSRVNUIEFQSSBDbGllbnQgdG8gYSBwcm9qZWN0IGZyb20gYW4gT3BlbkFQSSBzcGVjaWZpY2F0aW9uIFVSTCAoZS5nIGh0dHBzOi8vcGV0c3RvcmUuc3dhZ2dlci5pby92Mi9zd2FnZ2VyLmpzb24pIHVzaW5nIFtBdXRvUmVzdF0oaHR0cHM6Ly9naXRodWIuY29tL0F6dXJlL2F1dG9yZXN0KSwgW05Td2FnXShodHRwczovL2dpdGh1Yi5jb20vUmljb1N1dGVyL05Td2FnKSwgW1N3YWdnZXIgQ29kZWdlbl0oaHR0cHM6Ly9naXRodWIuY29tL3N3YWdnZXItYXBpL3N3YWdnZXItY29kZWdlbiksIG9yIFtPcGVuQVBJIEdlbmVyYXRvcl0oaHR0cHM6Ly9naXRodWIuY29tL09wZW5BUElUb29scy9vcGVuYXBpLWdlbmVyYXRvcikKLSBEZWZpbmUgY3VzdG9tIG5hbWVzcGFjZSBmb3IgdGhlIGdlbmVyYXRlZCBmaWxlCi0gQXV0by11cGRhdGluZyBvZiBnZW5lcmF0ZWQgY29kZSBmaWxlIHdoZW4gY2hhbmdlcyBhcmUgbWFkZSB0byB0aGUgT3BlbkFQSSBzcGVjaWZpY2F0aW9uIEpTT04gb3IgWUFNTCBmaWxlCi0gR2VuZXJhdGUgY29kZSB1c2luZyBhbiBbTlN3YWdTdHVkaW9dKGh0dHBzOi8vZ2l0aHViLmNvbS9SaWNvU3V0ZXIvTlN3YWcvd2lraS9OU3dhZ1N0dWRpbykgc3BlY2lmaWNhdGlvbiBmaWxlIGJ5IGluY2x1ZGluZyBpdCBpbiB0aGUgcHJvamVjdCBhbmQgdXNpbmcgdGhlICoqR2VuZXJhdGUgd2l0aCBOU3dhZyoqIGNvbnRleHQgbWVudQoKCiMjIyBDdXN0b20gVG9vbHMKCi0gKioqTlN3YWdDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nIHRoZSBbTlN3YWcuQ29kZUdlbmVyYXRpb24uQ1NoYXJwXShodHRwczovL2dpdGh1Yi5jb20vUlN1dGVyL05Td2FnL3dpa2kvQ1NoYXJwQ2xpZW50R2VuZXJhdG9yKSBbbnVnZXQgcGFja2FnZV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL05Td2FnLkNvZGVHZW5lcmF0aW9uLkNTaGFycC8pICoqdjEzLjIwLjAqKgoKLSAqKipPcGVuQXBpQ29kZUdlbmVyYXRvcioqKiAtIEdlbmVyYXRlcyBhIHNpbmdsZSBmaWxlIEMjIFJFU1QgQVBJIENsaWVudCB1c2luZyAqKltPcGVuQVBJIEdlbmVyYXRvciB2Ny4xLjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9PcGVuQVBJVG9vbHMvb3BlbmFwaS1nZW5lcmF0b3IvcmVsZWFzZXMvdGFnL3Y3LjEuMCkqKi4KVGhlIG91dHB1dCBmaWxlIGlzIHRoZSByZXN1bHQgb2YgbWVyZ2luZyBhbGwgdGhlIGZpbGVzIGdlbmVyYXRlZCB1c2luZyB0aGUgT3BlbkFQSSBHZW5lcmF0b3IgdG9vbCB3aXRoOgpgIGdlbmVyYXRlIC1nIGNzaGFycCAtLWlucHV0LXNwZWMgW3N3YWdnZXIgZmlsZV0gLS1vdXRwdXQgW291dHB1dCBmaWxlXSAtRGFwaVRlc3RzPWZhbHNlIC1EbW9kZWxUZXN0cz1mYWxzZSAtRHBhY2thZ2VOYW1lPVtkZWZhdWx0IG5hbWVzcGFjZV0gLS1za2lwLW92ZXJ3cml0ZWAKCi0gKioqS2lvdGFDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nIHRoZSBNaWNyb3NvZnQgcHJvamVjdCAqKltLaW90YSB2MS45LjFdKGh0dHBzOi8vbGVhcm4ubWljcm9zb2Z0LmNvbS9lbi11cy9vcGVuYXBpL2tpb3RhLykqKiBnZW5lcmF0b3IuIApUaGUgb3V0cHV0IGZpbGUgaXMgdGhlIHJlc3VsdCBvZiBtZXJnaW5nIGFsbCB0aGUgZmlsZXMgZ2VuZXJhdGVkIHVzaW5nIHRoZSBLaW90YSBkb3RuZXQgdG9vbCB3aXRoOgpgIGdlbmVyYXRlIC1sIENTaGFycCAtZCBbc3dhZ2dlciBmaWxlXSAtbyBbb3V0cHV0IGZpbGVdIC1uIFtkZWZhdWx0IG5hbWVzcGFjZV1gCgotICoqKlN3YWdnZXJDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nICoqU3dhZ2dlciBDb2RlZ2VuIENMSSB2My4wLjM0KiouClRoZSBvdXRwdXQgZmlsZSBpcyB0aGUgcmVzdWx0IG9mIG1lcmdpbmcgYWxsIHRoZSBmaWxlcyBnZW5lcmF0ZWQgdXNpbmcgdGhlIFN3YWdnZXIgQ29kZWdlbiBDTEkgdG9vbCB3aXRoOgpgIGdlbmVyYXRlIC1sIGNzaGFycCAtLWlucHV0LXNwZWMgW3N3YWdnZXIgZmlsZV0gLS1vdXRwdXQgW291dHB1dCBmaWxlXSAtRGFwaVRlc3RzPWZhbHNlIC1EbW9kZWxUZXN0cz1mYWxzZSAtRHBhY2thZ2VOYW1lPVtkZWZhdWx0IG5hbWVzcGFjZV0gLS1za2lwLW92ZXJ3cml0ZWAKCi0gKioqQXV0b1Jlc3RDb2RlR2VuZXJhdG9yKioqIC0gR2VuZXJhdGVzIGEgc2luZ2xlIGZpbGUgQyMgUkVTVCBBUEkgQ2xpZW50IHVzaW5nICoqQXV0b1Jlc3QgdjMuMC4wLWJldGEuMjAyMTA1MDQuMioqIGZvciBPcGVuQVBJIHYzIGFuZCAqKkF1dG9SZXN0IHYyLjAuNDQxNyoqIGZvciBPcGVuQVBJIHYyLiAKVGhlIHJlc3VsdGluZyBmaWxlIGlzIHRoZSBlcXVpdmFsZW50IG9mIHVzaW5nIHRoZSBBdXRvUmVzdCBDTEkgdG9vbCB3aXRoOisKYCAtLWNzaGFycCAtLWlucHV0LWZpbGU9W3N3YWdnZXIgZmlsZV0gLS1vdXRwdXQtZmlsZT1bb3V0cHV0IGZpbGVdIC0tbmFtZXNwYWNlPVtkZWZhdWx0IG5hbWVzcGFjZV0gLS1hZGQtY3JlZGVudGlhbHNgCgotICoqKlJlZml0dGVyQ29kZUdlbmVyYXRvcioqKiAtIEdlbmVyYXRlcyBhIHNpbmdsZSBmaWxlIEMjIFJFU1QgQVBJIENsaWVudCBpbnRlZmFjZSBmb3IgW1JlZml0XShodHRwczovL2dpdGh1Yi5jb20vcmVhY3RpdmV1aS9yZWZpdCkgdXNpbmcgW1JlZml0dGVyLkNvcmVdKGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RpYW5oZWxsZS9yZWZpdHRlcikgW251Z2V0IHBhY2thZ2VdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9SZWZpdHRlci5Db3JlLykgKip2MC44LjYqKi4KVGhlIG91dHB1dCBmaWxlIGNvbnRhaW5zIGEgUmVmaXQgaW50ZXJmYWNlIGdlbmVyYXRlZCBieSBbUmVmaXR0ZXJdKGh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RpYW5oZWxsZS9yZWZpdHRlcikgYW5kIGNvbnRyYWN0cyBnZW5lcmF0ZWQgdXNpbmcgW05Td2FnLkNvZGVHZW5lcmF0aW9uLkNTaGFycF0oaHR0cHM6Ly9naXRodWIuY29tL1JTdXRlci9OU3dhZy93aWtpL0NTaGFycENsaWVudEdlbmVyYXRvcikgW251Z2V0IHBhY2thZ2VdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9OU3dhZy5Db2RlR2VuZXJhdGlvbi5DU2hhcnAvKQoKCiMjIyBEZXBlbmRlbmNpZXMKClRoZSBjdXN0b20gdG9vbCBjb2RlIGdlbmVyYXRvcnMgcGlnZ3kgYmFjayBvbiB0b3Agb2Ygd2VsbCBrbm93biBPcGVuIEFQSSBjbGllbnQgY29kZSBnZW5lcmF0b3JzIGxpa2UgKipBdXRvUmVzdCoqLCAqKk5Td2FnKiosICoqT3BlbkFQSSBHZW5lcmF0b3IqKiwgKipNaWNyb3NvZnQgS2lvdGEqKiwgKipSZWZpdHRlcioqLCBhbmQgKipTd2FnZ2VyIENvZGVnZW4gQ0xJKiouIFRoZXNlIHRvb2xzIHJlcXVpcmUgW05QTV0oaHR0cHM6Ly93d3cubnBtanMuY29tL2dldC1ucG0pIGFuZCB0aGUgW0phdmEgUnVudGltZSBFbnZpcm9ubWVudF0oaHR0cHM6Ly9qYXZhLmNvbS9lbi9kb3dubG9hZC9tYW51YWwuanNwKSB0byBiZSBpbnN0YWxsZWQgb24gdGhlIGRldmVsb3BlcnMgbWFjaGluZS4gQWx0ZXJuYXRpdmUgSmF2YSBTREsgaW1wbGVtZW50YXRpb25zIHN1Y2ggYXMgdGhlIFtPcGVuSkRLXShodHRwczovL2Fkb3B0b3Blbmpkay5uZXQpIHdvcmtzIGZpbmUgd2l0aCB0aGlzIGV4dGVuc2lvbi4gQnkgZGVmYXVsdCwgdGhlIHBhdGggdG8gKipqYXZhLmV4ZSoqIGlzIHJlYWQgZnJvbSB0aGUgKipKQVZBX0hPTUUqKiBlbnZpcm9ubWVudCB2YXJpYWJsZSwgYnV0IGlzIGFsc28gY29uZmlndXJhYmxlIGluIHRoZSBTZXR0aW5ncyBzY3JlZW4KClRoZSAqKlN3YWdnZXIgQ29kZWdlbiBDTEkqKiBhbmQgKipPcGVuQVBJIEdlbmVyYXRvcioqIGFyZSBkaXN0cmlidXRlZCBhcyBKQVIgZmlsZXMgYW5kIGFyZSBkb3dubG9hZGVkIG9uIGRlbWFuZCBidXQgcmVxdWlyZXMgdGhlIEphdmEgU0RLIHRvIGJlIGluc3RhbGxlZCBvbiB0aGUgbWFjaGluZS4gKipBdXRvUmVzdCoqIGlzIGluc3RhbGxlZCBvbi1kZW1hbmQgdmlhIFtOUE1dKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9nZXQtbnBtKSBhcyBhIGdsb2JhbCB0b29sIGFuZCB1c2VzIHRoZSBsYXRlc3QgYXZhaWxhYmxlIHZlcnNpb24uICoqTWljcm9zb2Z0IEtpb3RhKiogaXMgaW5zdGFsbGVkIG9uLWRlbWFuZCBhcyBhIC5ORVQgVG9vbCBhbmQgcmVxdWlyZXMgLk5FVCA3LjAuIFRoaXMgbWVhbnMgdGhhdCB1c2luZyB0aGVzZSBjdXN0b20gdG9vbHMgaGF2ZSBhbiBpbml0aWFsIGRlbGF5IHVwb24gZmlyc3QgdGltZSB1c2UuIAoKKipOU3dhZ1N0dWRpbyoqIGlzIHN0YW5kIGFsb25lIFVJIHRvb2wgZm9yIGVkaXRpbmcgYSAqKi5uc3dhZyoqIHNwZWNpZmljYXRpb24gZmlsZSBmb3IgZ2VuZXJhdGluZyBjb2RlLiBUaGlzIHRvb2wgaXMgb3B0aW9uYWwgdG8gaW5zdGFsbCBhbmQgb2ZmaWNpYWwgaW5zdGFsbGF0aW9uIGluc3RydWN0aW9ucyBhcmUgYXZhaWxhYmxlIG9uIHRoZSBbTlN3YWcgV2lraSBvbiBHaXRodWJdKGh0dHBzOi8vZ2l0aHViLmNvbS9SaWNvU3V0ZXIvTlN3YWcvd2lraS9OU3dhZ1N0dWRpbykuIElmICoqTlN3YWdTdHVkaW8qKiBpcyBub3QgaW5zdGFsbGVkIG9uIHRoZSBtYWNoaW5lIHRoZW4gdGhlIFZpc3VhbCBTdHVkaW8gRXh0ZW5zaW9uIHdpbGwgaW5zdGFsbCB0aGUgKipOU3dhZyBDTEkqKiB2aWEgW05QTV0oaHR0cHM6Ly93d3cubnBtanMuY29tL2dldC1ucG0pIGFzIGEgZ2xvYmFsIHRvb2wgdXNpbmcgdGhlIGxhdGVzdCBhdmFpbGFibGUgdmVyc2lvbi4gCgpUaGUgKipOU3dhZyoqIGNvZGUgZ2VuZXJhdG9yIHByb2R1Y2VzIGNvZGUgdGhhdCBkZXBlbmRzIG9uIHRoZSBbTmV3dG9uc29mdC5Kc29uXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTmV3dG9uc29mdC5Kc29uLzEzLjAuMykgTnVHZXQgcGFja2FnZQoKVGhlICoqUmVmaXR0ZXIqKiBjb2RlIGdlbmVyYXRvciBwcm9kdWNlcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGUgW1JlZml0XShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvUmVmaXQvNy4wLjApIE51R2V0IHBhY2thZ2UKClRoZSAqKk9wZW5BUEkgR2VuZXJhdG9yKiogY29kZSBnZW5lcmF0b3IgcHJvZHVjZXMgY29kZSB0aGF0IGRlcGVuZHMgb24gdGhlIGZvbGxvd2luZyBOdUdldCBwYWNrYWdlczoKLSBbUmVzdFNoYXJwXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvUmVzdFNoYXJwLzExMC4yLjApCi0gW0pzb25TdWJUeXBlc10oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL0pzb25TdWJUeXBlcy8yLjAuMSkKLSBbUG9sbHldKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9Qb2xseS84LjIuMCkKLSBbTmV3dG9uc29mdC5Kc29uXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTmV3dG9uc29mdC5Kc29uLzEzLjAuMykKClRoZSBwcm9qZWN0ICoqS2lvdGEqKiBjb2RlIGdlbmVyYXRvciBwcm9kdWNlcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGUgZm9sbG93aW5nIE51R2V0IHBhY2thZ2VzCi0gW01pY3Jvc29mdC5LaW90YS5BYnN0cmFjdGlvbnNdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9NaWNyb3NvZnQuS2lvdGEuQWJzdHJhY3Rpb25zKQotIFtNaWNyb3NvZnQuS2lvdGEuSHR0cC5IdHRwQ2xpZW50TGlicmFyeV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL01pY3Jvc29mdC5LaW90YS5IdHRwLkh0dHBDbGllbnRMaWJyYXJ5KQotIFtNaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5Gb3JtXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTWljcm9zb2Z0Lktpb3RhLlNlcmlhbGl6YXRpb24uRm9ybSkKLSBbTWljcm9zb2Z0Lktpb3RhLlNlcmlhbGl6YXRpb24uVGV4dF0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL01pY3Jvc29mdC5LaW90YS5TZXJpYWxpemF0aW9uLlRleHQpCi0gW01pY3Jvc29mdC5LaW90YS5TZXJpYWxpemF0aW9uLkpzb25dKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9NaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5Kc29uKQotIFtNaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5NdWx0aXBhcnRdKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9NaWNyb3NvZnQuS2lvdGEuU2VyaWFsaXphdGlvbi5NdWx0aXBhcnQpCi0gW01pY3Jvc29mdC5LaW90YS5BdXRoZW50aWNhdGlvbi5BenVyZV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL01pY3Jvc29mdC5LaW90YS5BdXRoZW50aWNhdGlvbi5BenVyZSkKLSBbQXp1cmUuSWRlbnRpdHldKGh0dHBzOi8vd3d3Lm51Z2V0Lm9yZy9wYWNrYWdlcy9BenVyZS5JZGVudGl0eSkKClRoZSAqKlN3YWdnZXIgQ29kZWdlbiBDTEkqKiBjb2RlIGdlbmVyYXRvciBwcm9kdWNlcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGUgW1Jlc3RTaGFycF0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL1Jlc3RTaGFycC8xMDUuMS4wKSBhbmQgW0pzb25TdWJUeXBlc10oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL0pzb25TdWJUeXBlcy8xLjIuMCkgTnVHZXQgcGFja2FnZXMKClRoZSAqKkF1dG9SZXN0KiogY29kZSBnZW5lcmF0b3IgcHJvZHVjZXMgY29kZSB0aGF0IGRlcGVuZHMgb24gdGhlIFtNaWNyb3NvZnQuUmVzdC5DbGllbnRSdW50aW1lXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTWljcm9zb2Z0LlJlc3QuQ2xpZW50UnVudGltZS8yLjMuMjQpIGFuZCBbTmV3dG9uc29mdC5Kc29uXShodHRwczovL3d3dy5udWdldC5vcmcvcGFja2FnZXMvTmV3dG9uc29mdC5Kc29uLzEzLjAuMykgTnVHZXQgcGFja2FnZXMKClRoaXMgVmlzdWFsIFN0dWRpbyBFeHRlbnNpb24gd2lsbCBhdXRvbWF0aWNhbGx5IGFkZCB0aGUgcmVxdWlyZWQgTnVHZXQgcGFja2FnZXMgdGhhdCB0aGUgZ2VuZXJhdGVkIGNvZGUgZGVwZW5kcyBvbgoKCiMjIFNjcmVlbnNob3RzCgohW0FkZCAtIEFQSSBDbGllbnQgZnJvbSBPcGVuQVBJIFNwZWNpZmljYXRpb25dKGltYWdlcy9hZGQtbmV3LW1lbnUucG5nKQoKIVtFbnRlciBVUkwgdG8gT3BlbkFQSSBTcGVjaWZpY2F0aW9uXShpbWFnZXMvYWRkLW5ldy1kaWFsb2cucG5nKQoKIVtTb2x1dGlvbiBFeHBsb3JlciBDb250ZXh0IE1lbnVzXShpbWFnZXMvc29sdXRpb24tZXhwbG9yZXItY29udGV4dC1tZW51LmpwZykKCiFbTlN3YWcgU3R1ZGlvIENvbnRleHQgTWVudV0oaW1hZ2VzL25zd2Fnc3R1ZGlvLWNvbnRleHQtbWVudS5qcGcpCgoKIyMjIFNldHRpbmdzCgpUaGlzIGV4dGVuc2lvbiB3aWxsIGJ5IGRlZmF1bHQgbWFrZSBzb21lIGFzc3VtcHRpb25zIG9uIHRoZSBpbnN0YWxsYXRpb24gcGF0aHMgZm9yICoqSmF2YSoqLCAqKk5Td2FnKiogYW5kICoqTlBNKiogYnV0IGFsc28gcHJvdmlkZXMgb3B0aW9uIHBhZ2VzIGZvciBjb25maWd1cmluZyB0aGlzLiBUaGUgKipTd2FnZ2VyIENvZGVnZW4gQ0xJKiogYW5kIHRoZSAqKk9wZW5BUEkgR2VuZXJhdG9yKiogSkFSIGZpbGVzIGFyZSBieSBkZWZhdWx0IGRvd25sb2FkZWQgdG8gdGhlIHVzZXIgVEVNUCBmb2xkZXIgYnV0IGl0IGlzIGFsc28gcG9zc2libGUgdG8gc3BlY2lmeSB0byB1c2UgZXhpc3RpbmcgSkFSIGZpbGVzCgohW09wdGlvbnMgLSBHZW5lcmFsXShpbWFnZXMvb3B0aW9ucy1nZW5lcmFsLnBuZykKClN1cHBvcnRzIGN1c3RvbWlzaW5nIGhvdyBBdXRvUmVzdCBnZW5lcmF0ZXMgY29kZSBiYXNlZCBvbiB0aGUgQyMgZ2VuZXJhdG9yIHNldHRpbmdzIHRoYXQgdGhlIEF1dG9SZXN0IENMSSB0b29sIHByb3ZpZGVzCgohW09wdGlvbnMgLSBBdXRvUmVzdF0oaW1hZ2VzL29wdGlvbnMtYXV0b3Jlc3QucG5nKQoKU3VwcG9ydHMgY3VzdG9taXNpbmcgaG93IE5Td2FnIGdlbmVyYXRlcyBjb2RlIHVzaW5nIHRoZSBwcm9wZXJ0aWVzIGV4cG9zZWQgYnkgdGhlIE5Td2FnIE51R2V0IHBhY2thZ2UKCiFbT3B0aW9ucyAtIE5Td2FnXShpbWFnZXMvb3B0aW9ucy1uc3dhZy5wbmcpCgpTdXBwb3J0cyBjdXN0b21pc2luZyBob3cgdGhlICoqLm5zd2FnKiogZmlsZSBpcyBnZW5lcmF0ZWQgdXNpbmcgYSBzdWJzZXQgb2YgdGhlIG9wdGlvbnMgYXZhaWxhYmxlIGluIE5Td2FnIFN0dWRpbwoKIVtPcHRpb25zIC0gTlN3YWcgU3R1ZGlvXShpbWFnZXMvb3B0aW9ucy1uc3dhZ3N0dWRpby5wbmcpCgpTdXBwb3J0cyBjdXN0b21pc2luZyBob3cgT3BlbkFQSSBHZW5lcmF0b3IgZ2VuZXJhdGVzIGNvZGUgdXNpbmcgdGhlIGFkZGl0aW9uYWwgb3B0aW9uYWwgcHJvcGVydGllcyB0aGF0IHRoZSBPcGVuQVBJIEdlbmVyYXRvciBDTEkgdG9vbCBwcm92aWRlcwoKIVtPcHRpb25zIC0gT3BlbkFQSSBHZW5lcmF0b3JdKGltYWdlcy9vcHRpb25zLW9wZW5hcGlnZW5lcmF0b3IucG5nKQoKU3VwcG9ydHMgY3VzdG9taXNpbmcgaG93IFJlZml0dGVyIGdlbmVyYXRlcyB0aGUgUmVmaXQgaW50ZXJmYWNlLiBUaGlzIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIHdoZXRoZXIgdG8gcmV0dXJuIHRoZSB0eXBlIGRpcmVjdGx5IG9yIHdyYXAgaXQgaW5zaWRlIGFuIGBJQXBpUmVzcG9uc2U8VD5gLiBZb3UgY2FuIGFsc28gZGlzYWJsZSBnZW5lcmF0aW5nIGNvbnRyYWN0cyBvciBYTUwgZG9jIHN0eWxlIGNvbW1lbnRzCgohW09wdGlvbnMgLSBSZWZpdHRlcl0oaW1hZ2VzL3JlZml0dGVyLW9wdGlvbnMucG5nKQoKVGhpcyBleHRlbnNpb24gY29sbGVjdHMgZXJyb3JzIGFuZCB0cmFja3MgZmVhdHVyZSB1c2FnZXMgdG8gYSBzZXJ2aWNlIGNhbGxlZCBbRXhjZXB0aW9ubGVzc10oaHR0cHM6Ly9leGNlcHRpb25sZXNzLmNvbSkgYW5kIFtBenVyZSBBcHBsaWNhdGlvbiBJbnNpZ2h0c10oaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2F6dXJlL2F6dXJlLW1vbml0b3IvYXBwL2FwcC1pbnNpZ2h0cy1vdmVydmlldz9XVC5tY19pZD1EVC1NVlAtNTAwNDgyMikuIFRoaXMgaXMgZG9uZSBhbm9ueW1vdXNseSB1c2luZyBhIHN1cHBvcnQga2V5IGFuZCBhIGdlbmVyYXRlZCBhbm9ueW1vdXMgaWRlbnRpdHkgYmFzZWQgb24gYSBzZWN1cmUgaGFzaCBvZiB1c2VybmFtZUBob3N0CgohW09wdGlvbnMgLSBBbmFseXRpY3NdKGltYWdlcy9zdXBwb3J0LWtleS5wbmcpCgoKIyMjIFZpc3VhbCBTdHVkaW8gZm9yIE1hYwoKIVtBZGQgLSBBUEkgQ2xpZW50IGZyb20gT3BlbkFQSSBTcGVjaWZpY2F0aW9uXShpbWFnZXMvdnNtYWMtYWRkLW5ldy1tZW51LnBuZykKCiFbRW50ZXIgVVJMIHRvIE9wZW5BUEkgU3BlY2lmaWNhdGlvbl0oaW1hZ2VzL3ZzbWFjLWFkZC1uZXctZGlhbG9nLnBuZykKCiFbU29sdXRpb24gRXhwbG9yZXIgQ29udGV4dCBNZW51c10oaW1hZ2VzL3ZzbWFjLWdlbmVyYXRlLWNvZGUucG5nKQoKIVtOU3dhZyBTdHVkaW8gQ29udGV4dCBNZW51XShpbWFnZXMvdnNtYWMtbnN3YWctc3R1ZGlvLnBuZykKCgojIEluc3RhbGxhdGlvbgoKVGhlIFZpc3VhbCBTdHVkaW8gZXh0ZW5zaW9uIGNhbiBiZSBpbnN0YWxsZWQgZGlyZWN0bHkgZnJvbSBWaXN1YWwgU3R1ZGlvIDIwMTkgYW5kIDIwMjIgdmlhIHRoZSAqKkV4dGVuc2lvbnMgRGlhbG9nIEJveCoqLiBUaGUgcHJvY2VzcyBpcyBiZXN0IGRlc2NyaWJlZCBpbiB0aGUgb2ZmaWNpYWwgTWljcm9zb2Z0IGRvY3VtZW50YXRpb24gZm9yIFtNYW5hZ2luZyBleHRlbnNpb25zIGZvciBWaXN1YWwgU3R1ZGlvXShodHRwczovL2RvY3MubWljcm9zb2Z0LmNvbS9lbi11cy92aXN1YWxzdHVkaW8vaWRlL2ZpbmRpbmctYW5kLXVzaW5nLXZpc3VhbC1zdHVkaW8tZXh0ZW5zaW9ucz92aWV3PXZzLTIwMTkmV1QubWNfaWQ9RFQtTVZQLTUwMDQ4MjIpCgojIyBWaXN1YWwgU3R1ZGlvIGZvciBNYWMKClRoaXMgaW5zdGFsbGF0aW9uIHByb2Nlc3MgZm9yICoqVmlzdWFsIFN0dWRpbyBmb3IgTWFjKiogaXMgY3VycmVudGx5IGEgYml0IHRyb3VibGVzb21lIGFzIHRoZSBNb25vRGV2ZWxvcCBBZGRpbiBSZXBvc2l0b3J5IGlzIGN1cnJlbnRseSBub3QgYWNjZXB0aW5nIG5ldyB1c2VycyBzbyBJIGNhbid0IHJlYWxseSByZWdpc3RlciBhbmQgc2V0dXAgbXkgZXh0ZW5zaW9uLgoKVGhlcmUgYXJlIDIgd2F5cyBvZiBpbnN0YWxsaW5nIG15IGV4dGVuc2lvbiBvbiBWaXN1YWwgU3R1ZGlvIGZvciBNYWM6IEFkZGluZyBhIGN1c3RvbSBleHRlbnNpb24gcmVwb3NpdG9yeSBvciBJbnN0YWxsaW5nIHRoZSAqKi5tcGFjayoqIGZpbGUgZGlyZWN0bHkgZnJvbSB0aGUgRXh0ZW5zaW9ucyBNYW5hZ2VyCgojIyMgQWRkaW5nIGEgbmV3IGV4dGVuc2lvbiByZXBvc2l0b3J5CgpIZXJlJ3Mgd2hhdCB5b3UgbmVlZCB0byBkbzoKCi0gT3BlbiB0aGUgVmlzdWFsIFN0dWRpbyBmb3IgTWFjICoqRXh0ZW5zaW9uIE1hbmFnZXIqKgotIFlvdSBjYW4gZG8gdGhpcyBmcm9tIHRoZSBtZW51ICoqVmlzdWFsIFN0dWRpbyoqIC0+ICoqRXh0ZW50aW9ucyoqCgohW09wZW4gRXh0ZW5zaW9ucyBEaWFsb2cgQm94XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1tZW51LnBuZykKCi0gU2VsZWN0IHRoZSAqKkdhbGxlcnkqKiBUYWIKLSBFeHBhbmQgdGhlIFJlcG9zaXRvcnkgZHJvcCBkb3duIGJveCBhbmQgc2VsZWN0ICoqTWFuYWdlIFJlcG9zaXRvcmllcyoqCgohW01hbmFnZSBSZXBvc2l0b3JpZXNdKGltYWdlcy92c21hYy1leHRlbnNpb25zLW1hbmFnZS1yZXBvc2l0b3JpZXMucG5nKQoKLSBQcmVzcyBvbiB0aGUgKipBZGQqKiBidXR0b24gdG8gYWRkIGEgbmV3IGN1c3RvbSBleHRlbnNpb24gcmVwb3NpdG9yeQoKIVtNYW5hZ2UgUmVwb3NpdG9yaWVzXShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1yZXBvc2l0b3JpZXMucG5nKQoKLSBSZWdpc3RlciBhbiBvbmxpbmUgcmVwb3NpdG9yeSBhdCAqKmh0dHBzOi8vY2hyaXN0aWFuaGVsbGUuY29tL3ZzbWFjL21haW4ubXJlcCoqCi0gQ2xpY2sgKipPSyoqCgohW0FkZCBSZXBvc2l0b3J5XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1hZGQtcmVwb3NpdG9yeS5wbmcpCgotIE5vdyBteSBleHRlbnNpb24gcmVwb3NpdG9yeSBpcyBhZGRlZCB0byB0aGUgbGlzdAotIE1ha2Ugc3VyZSB0aGF0IHRoaXMgaXMgZW5hYmxlZCAoaW5kaWNhdGVkIGJ5IGEgY2hlY2sgYm94KQoKIVtBZGQgUmVwb3NpdG9yeSBEaWFsb2ddKGltYWdlcy92c21hYy1leHRlbnNpb25zLWFkZGVkLXJlcG9zaXRvcnkucG5nKQoKLSBZb3Ugc2hvdWxkIG5vdyBiZSBhYmxlIHRvIHNlZSBteSBleHRlbnNpb25zIGZyb20gdGhlICoqR2FsbGVyeSoqIHRhYgoKIVtBZGRlZCBSZXBvc2l0b3J5XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1nYWxsZXJ5LnBuZykKCi0gQnkgYWRkaW5nIG15IGV4dGVuc2lvbiByZXBvc2l0b3J5IHlvdSB3aWxsIGJlIGFibGUgdG8gY29udmVuaWVudGx5IHVwZGF0ZSBteSBleHRlbnNpb24gdXNpbmcgdGhlIFZpc3VhbCBTdHVkaW8gZm9yIE1hYyBFeHRlbnNpb24gTWFuYWdlcgoKIVtBZGQgUmVwb3NpdG9yeV0oaW1hZ2VzL3ZzbWFjLXVwZGF0ZXMucG5nKQoKIVtBZGQgUmVwb3NpdG9yeV0oaW1hZ2VzL3ZzbWFjLXVwZGF0ZS1pbnN0YWxsLnBuZykKCiFbQWRkIFJlcG9zaXRvcnldKGltYWdlcy92c21hYy11cGRhdGUtaW5zdGFsbC1wcm9ncmVzcy5wbmcpCgojIyMgSW5zdGFsbGluZyB0aGUgKioubXBhY2sqKiBmaWxlIGRpcmVjdGx5CgpIZXJlJ3Mgd2hhdCB5b3UgbmVlZCB0byBkbzoKLSBEb3dubG9hZCB0aGUgbGF0ZXN0ICoqLm1wYWNrIGZpbGUqKiBmcm9tIHRoZSBbTGF0ZXN0IEdpdGh1YiBSZWxlYXNlXShodHRwczovL2dpdGh1Yi5jb20vY2hyaXN0aWFuaGVsbGUvYXBpY2xpZW50Y29kZWdlbi9yZWxlYXNlcy9sYXRlc3QpCi0gTm93IGZyb20gd2l0aGluIFZpc3VhbCBTdHVkaW8gZm9yIE1hYyB5b3UgbmVlZCB0byBsYXVuY2ggdGhlICoqRXh0ZW5zaW9ucyBEaWFsb2cgQm94KiouIFlvdSBjYW4gZG8gdGhpcyBmcm9tIHRoZSBtZW51ICoqVmlzdWFsIFN0dWRpbyoqIC0+ICoqRXh0ZW50aW9ucyoqCgohW09wZW4gRXh0ZW5zaW9ucyBEaWFsb2cgQm94XShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1tZW51LnBuZykKCi0gQ2xpY2sgb24gdGhlICoqSW5zdGFsbCBmcm9tIEZpbGUqKiBidXR0b24KCiFbTWFudWFsbHkgaW5zdGFsbCAubXBhY2sgZmlsZV0oaW1hZ2VzL3ZzbWFjLWV4dGVuc2lvbnMtaW5zdGFsbC5wbmcpCgotIEJyb3dzZSB0byB0aGUgLm1wYWNrIGZpbGUgYW5kIHNlbGVjdCBpdC4gWW91IHdpbGwgYmUgcHJvbXB0ZWQgd2l0aCBhIGNvbmZpcm1hdGlvbiBkaWFsb2cKCiFbQ29uZmlybSAubXBhY2sgZmlsZSBpbnN0YWxsXShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy1pbnN0YWxsLWNvbmZpcm0ucG5nKQoKLSBDbGljayAqKkluc3RhbGwqKiBhbmQgcmVzdGFydCBWaXN1YWwgU3R1ZGlvIGZvciBNYWMKLSBUbyBWZXJpZnkgdGhhdCB0aGUgQWRkLWluIHdhcyBpbnN0YWxsZWQgeW91IGNhbiByZS1vcGVuIHRoZSBFeHRlbnNpb25zIERpYWxvZyBCb3gsIHNlbGVjdCB0aGUgKipJbnN0YWxsZWQqKiB0YWIgYW5kIGV4cGFuZCB0aGUgKipJREUgRXh0ZW5zaW9ucyoqLiBZb3Ugc2hvdWxkIGJlIGFibGUgdG8gc2VlIHRoZSAqKlJFU1QgQVBJIENsaWVudCBDb2RlIEdlbmVyYXRvcioqLgoKLSBVbmluc3RhbGxpbmcgdGhlIEFkZC1pbiBpcyBkb25lIGluIHRoaXMgc2FtZSBkaWFsb2cgYm94IGJ5IGNsaWNraW5nIHRoZSAqKlVuaW5zdGFsbCoqIGJ1dHRvbgoKIVtNYW51YWxseSB1bmluc3RhbGwgQWRkLWluXShpbWFnZXMvdnNtYWMtZXh0ZW5zaW9ucy11bmluc3RhbGwucG5nKQoKCiMgQ3Jvc3MgUGxhdGZvcm0gQ29tbWFuZCBMaW5lIFRvb2wKQWxsIGN1c3RvbSB0b29scyBtZW50aW9uZWQgYWJvdmUgYXJlIGFsc28gaW1wbGVtZW50ZWQgaW4gYSBjcm9zcyBwbGF0Zm9ybSBjb21tYW5kIGxpbmUgYXBwbGljYXRpb24KCiMjIyMgUmVxdWlyZW1lbnRzCi0gLk5FVCA2LjAgcnVudGltZQotIEphdmEgUnVudGltZSBFbnZpcm9ubWVudAotIE5QTQoKIyMjIEluc3RhbGxhdGlvbgpUaGUgdG9vbCBjYW4gYmUgaW5zdGFsbGVkIGFzIGEgLk5FVCBDb3JlIGdsb2JhbCB0b29sIHRoYXQgeW91IGNhbiBjYWxsIGZyb20gdGhlIHNoZWxsIC8gY29tbWFuZCBsaW5lCmBgYApkb3RuZXQgdG9vbCBpbnN0YWxsIC0tZ2xvYmFsIHJhcGljZ2VuCmBgYApvciBieSBmb2xsb3dpbmcgdGhlIGluc3RydWN0aW9ucyBbaGVyZV0oaHR0cHM6Ly93d3cubnVnZXQub3JnL3BhY2thZ2VzL3JhcGljZ2VuKSB0byBpbnN0YWxsIGEgc3BlY2lmaWMgdmVyc2lvbiBvZiB0b29sCgojIyMgVXNhZ2UKU2luY2UgdGhlIHRvb2wgaXMgcHVibGlzaGVkIGFzIGEgLk5FVCBDb3JlIFRvb2wsIGl0IGNhbiBiZSBsYXVuY2hlZCBmcm9tIGFueXdoZXJlIHVzaW5nIGFueSBjb21tYW5kIGxpbmUgaW50ZXJmYWNlIGJ5IGNhbGxpbmcgKipyYXBpY2dlbioqLgpUaGUgaGVscCBpbmZvcm1hdGlvbiBpcyBkaXNwbGF5ZWQgd2hlbiBub3Qgc3BlY2lmeWluZyBhbnkgYXJndW1lbnRzIHRvICoqcmFwaWNnZW4qKgoKYGBgClVzYWdlOiByYXBpY2dlbiBbY29tbWFuZF0gW29wdGlvbnNdCgpPcHRpb25zOgogIC12fC0tdmVyYm9zZSAgICAgICBTaG93IHZlcmJvc2Ugb3V0cHV0CiAgLT98LWh8LS1oZWxwICAgICAgIFNob3cgaGVscCBpbmZvcm1hdGlvbi4KCkNvbW1hbmRzOgogIGNzaGFycCAgICAgICAgICAgICBHZW5lcmF0ZSBDIyBBUEkgY2xpZW50cwogIGptZXRlciAgICAgICAgICAgICBHZW5lcmF0ZSBBcGFjaGUgSk1ldGVyIHRlc3QgcGxhbnMKICBvcGVuYXBpLWdlbmVyYXRvciAgR2VuZXJhdGUgY29kZSB1c2luZyBPcGVuQVBJIEdlbmVyYXRvciAodjcuMS4wKS4KICAgICAgICAgICAgICAgICAgICAgU2VlIHN1cHBvcnRlZCBnZW5lcmF0b3JzIGF0IGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaC9kb2NzL2dlbmVyYXRvcnMvCiAgdHlwZXNjcmlwdCAgICAgICAgIEdlbmVyYXRlIFR5cGVTY3JpcHQgQVBJIGNsaWVudHMKClJ1biAncmFwaWNnZW4gW2NvbW1hbmRdIC0/fC1ofC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgYSBjb21tYW5kLgpgYGAKClNvbWUgaGVscCBpbmZvcm1hdGlvbiBpcyBhbHNvIHByb3ZpZGVkIHBlciBjb21tYW5kIGFuZCBjYW4gYmUgbGF1bmNoZWQgYnkgCgpgYGAKcmFwaWNnZW4gW2NvbW1hbmQgbmFtZV0gLT8KYGBgCgpvcgoKYGBgCnJhcGljZ2VuIFtjb21tYW5kIG5hbWVdIFtzdWIgY29tbWFuZCBuYW1lXSAtPwpgYGAKCkZvciBleGFtcGxlOgoKYGBgCnJhcGljZ2VuIGNzaGFycCAtPwpgYGAgCgp3aWxsIG91dHB1dCB0aGlzOgoKYGBgCkdlbmVyYXRlIEMjIEFQSSBjbGllbnRzCgpVc2FnZTogcmFwaWNnZW4gY3NoYXJwIFtjb21tYW5kXSBbb3B0aW9uc10KCk9wdGlvbnM6CiAgLT98LWh8LS1oZWxwICBTaG93IGhlbHAgaW5mb3JtYXRpb24uCgpDb21tYW5kczoKICBhdXRvcmVzdCAgICAgIEF1dG9SZXN0ICh2My4wLjAtYmV0YS4yMDIxMDUwNC4yKQogIGtpb3RhICAgICAgICAgTWljcm9zb2Z0IEtpb3RhICh2MS45LjEpCiAgbnN3YWcgICAgICAgICBOU3dhZyAodjEzLjIwLjApCiAgb3BlbmFwaSAgICAgICBPcGVuQVBJIEdlbmVyYXRvciAodjcuMS4wKQogIHJlZml0dGVyICAgICAgUmVmaXR0ZXIgKHYwLjguNikKICBzd2FnZ2VyICAgICAgIFN3YWdnZXIgQ29kZWdlbiBDTEkgKHYzLjAuMzQpCgpSdW4gJ2NzaGFycCBbY29tbWFuZF0gLT98LWh8LS1oZWxwJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBhIGNvbW1hbmQuCgpgYGAKCmFuZAoKYGBgCnJhcGljZ2VuIGNzaGFycCBhdXRvcmVzdCAtPwpgYGAKCndpbGwgb3V0cHV0IHRoaXM6CgpgYGAKR2VuZXJhdGUgU3dhZ2dlciAvIE9wZW4gQVBJIGNsaWVudCB1c2luZyBBdXRvUmVzdAoKVXNhZ2U6IHJ1biBhdXRvcmVzdCBbb3B0aW9uc10gPHN3YWdnZXJGaWxlPiA8bmFtZXNwYWNlPiA8b3V0cHV0RmlsZT4KCkFyZ3VtZW50czoKICBzd2FnZ2VyRmlsZSAgIFBhdGggdG8gdGhlIFN3YWdnZXIgLyBPcGVuIEFQSSBzcGVjaWZpY2F0aW9uIGZpbGUKICBuYW1lc3BhY2UgICAgIERlZmF1bHQgbmFtZXNwYWNlIHRvIGluIHRoZSBnZW5lcmF0ZWQgY29kZQogIG91dHB1dEZpbGUgICAgT3V0cHV0IGZpbGVuYW1lIHRvIHdyaXRlIHRoZSBnZW5lcmF0ZWQgY29kZSB0by4gRGVmYXVsdCBpcyB0aGUgc3dhZ2dlckZpbGUgLmNzCgpPcHRpb25zOgogIC0/fC1ofC0taGVscCAgU2hvdyBoZWxwIGluZm9ybWF0aW9uCmBgYAoKb3IgCgpgYGAKcmFwaWNnZW4gdHlwZXNjcmlwdCAtPwpgYGAKCndpbGwgb3V0cHV0IHRoaXM6CgpgYGAKR2VuZXJhdGUgVHlwZVNjcmlwdCBBUEkgY2xpZW50CgpVc2FnZTogcmFwaWNnZW4gdHlwZXNjcmlwdCBbb3B0aW9uc10gPGdlbmVyYXRvcj4gPHN3YWdnZXJGaWxlPiA8b3V0cHV0UGF0aD4KCkFyZ3VtZW50czoKICBnZW5lcmF0b3IgICAgICAgICBUaGUgdGVjaCBzdGFjayB0byB1c2UgZm9yIHRoZSBnZW5lcmF0ZWQgY2xpZW50IGxpYnJhcnkKICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHZhbHVlcyBhcmU6IEFuZ3VsYXIsIEF1cmVsaWEsIEF4aW9zLCBGZXRjaCwgSW52ZXJzaWZ5LCBKUXVlcnksIE5lc3RKUywgTm9kZSwgUmVkdXhRdWVyeSwKICAgICAgICAgICAgICAgICAgICBSeGpzLgogICAgICAgICAgICAgICAgICAgIERlZmF1bHQgdmFsdWUgaXM6IEFuZ3VsYXIuCiAgc3dhZ2dlckZpbGUgICAgICAgUGF0aCB0byB0aGUgU3dhZ2dlciAvIE9wZW4gQVBJIHNwZWNpZmljYXRpb24gZmlsZQogIG91dHB1dFBhdGggICAgICAgIE91dHB1dCBmb2xkZXIgdG8gd3JpdGUgdGhlIGdlbmVyYXRlZCBjb2RlIHRvCiAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCB2YWx1ZSBpczogdHlwZXNjcmlwdC1nZW5lcmF0ZWQtY29kZS4KCk9wdGlvbnM6CiAgLW5sfC0tbm8tbG9nZ2luZyAgRGlzYWJsZXMgQW5hbHl0aWNzIGFuZCBFcnJvciBSZXBvcnRpbmcKICAtP3wtaHwtLWhlbHAgICAgICBTaG93IGhlbHAgaW5mb3JtYXRpb24uCmBgYAoKIyMgVXNhZ2UgRXhhbXBsZXM6CgpMZXQncyBzYXkgd2UgaGF2ZSBhIE9wZW5BUEkgU3BlY2lmaWNhdGlvbnMgZG9jdW1lbnQgY2FsbGVkICoqU3dhZ2dlci5qc29uKioKCkZvciBzdGFydGVycywgd2UgY2FuIHVzZSB0aGUgU3dhZ2dlciBQZXRzdG9yZSBzcGVjLiBIZXJlJ3MgYW4gZXhhbXBsZSBwb3dlcnNoZWxsIHNjcmlwdCBmb3IgZG93bmxvYWRpbmcgaXQKCmBgYApJbnZva2UtV2ViUmVxdWVzdCAtVXJpIGh0dHBzOi8vcGV0c3RvcmUuc3dhZ2dlci5pby92My9zd2FnZ2VyLmpzb24gLU91dEZpbGUgU3dhZ2dlci5qc29uCmBgYAoKSW4gY2FzZSB5b3UgZG9uJ3QgaGF2ZSB0aGUgQ0xJIHRvb2wgaW5zdGFsbGVkIHlvdSBjYW4gaW5zdGFsbCBpdCBieQoKYGBgCmRvdG5ldCB0b29sIGluc3RhbGwgLS1nbG9iYWwgcmFwaWNnZW4KYGBgCgpIZXJlJ3MgYW4gZXhhbXBsZSBvZiBob3cgdG8gZ2VuZXJhdGUgY29kZSB1c2luZyAqKkF1dG9SZXN0KioKCmBgYApyYXBpY2dlbiBjc2hhcnAgYXV0b3Jlc3QgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9BdXRvUmVzdE91dHB1dC5jcwpgYGAKCkhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB0byBnZW5lcmF0ZSBjb2RlIHVzaW5nICoqS2lvdGEqKgoKYGBgCnJhcGljZ2VuIGNzaGFycCBraW90YSBTd2FnZ2VyLmpzb24gR2VuZXJhdGVkQ29kZSAuL09wZW5BcGlPdXRwdXQuY3MKYGBgCgpIZXJlJ3MgYW4gZXhhbXBsZSBvZiBob3cgdG8gZ2VuZXJhdGUgY29kZSB1c2luZyAqKk5Td2FnKioKCmBgYApyYXBpY2dlbiBjc2hhcnAgbnN3YWcgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9OU3dhZ091dHB1dC5jcwpgYGAKCkhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB0byBnZW5lcmF0ZSBjb2RlIHVzaW5nICoqU3dhZ2dlciBDb2RlZ2VuIENMSSoqCgpgYGAKcmFwaWNnZW4gY3NoYXJwIHN3YWdnZXIgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9Td2FnZ2VyT3V0cHV0LmNzCmBgYAoKSGVyZSdzIGFuIGV4YW1wbGUgb2YgaG93IHRvIGdlbmVyYXRlIGNvZGUgdXNpbmcgKipPcGVuQVBJIEdlbmVyYXRvcioqCgpgYGAKcmFwaWNnZW4gY3NoYXJwIG9wZW5hcGkgU3dhZ2dlci5qc29uIEdlbmVyYXRlZENvZGUgLi9PcGVuQXBpT3V0cHV0LmNzCmBgYAoKSGVyZSdzIGFuIGV4YW1wbGUgb2YgaG93IHRvIGdlbmVyYXRlIGNvZGUgKipKTWV0ZXIqKiB0ZXN0IHBsYW5zCgpgYGAKcmFwaWNnZW4gam1ldGVyIFN3YWdnZXIuanNvbgpgYGAKCkhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB0byBnZW5lcmF0ZSBjb2RlIGZvciAqKlR5cGVTY3JpcHQqKgoKYGBgCnJhcGljZ2VuIHR5cGVzY3JpcHQgQW5ndWxhciBTd2FnZ2VyLmpzb24KYGBgCgojCgpGb3IgdGlwcyBhbmQgdHJpY2tzIG9uIHNvZnR3YXJlIGRldmVsb3BtZW50LCBjaGVjayBvdXQgW215IGJsb2ddKGh0dHBzOi8vY2hyaXN0aWFuaGVsbGUuY29tKQoKSWYgeW91IGZpbmQgdGhpcyB1c2VmdWwgYW5kIGZlZWwgYSBiaXQgZ2VuZXJvdXMgdGhlbiBmZWVsIGZyZWUgdG8gW2J1eSBtZSBhIGNvZmZlZSDimJVdKGh0dHBzOi8vd3d3LmJ1eW1lYWNvZmZlZS5jb20vY2hyaXN0aWFuaGVsbGUpCgo= + readmeEtag: '"1e636ca217fb27d43c8ee3a5f7d68801680f37b18f91e7dd287f457bdc0675ac"' + readmeLastModified: Thu, 14 Dec 2023 23:09:47 GMT repositoryId: 166226127 description: >- A collection of Visual Studio custom tool code generators for Swagger / @@ -9379,7 +9379,7 @@ owner: christianhelle logo: https://avatars.githubusercontent.com/u/710400?v=4 license: GPL-3.0 - repoEtag: '"75354479227187446b934f83b35e07f9082b5cb4bdf0bb09195ce73ab2de17d2"' + repoEtag: '"27c911738bb034e8dd9d5ed469a484ef956deeae2d805f7d889a067981c2149c"' repoLastModified: Mon, 11 Dec 2023 06:03:45 GMT category: SDK foundInMaster: true @@ -9421,17 +9421,17 @@ repositoryId: 294444776 description: OpenAPI starter repository created: '2020-09-10T15:11:31Z' - updated: '2023-12-06T03:24:56Z' + updated: '2023-12-14T23:59:40Z' language: C# archived: false - stars: 120 + stars: 121 watchers: 22 - forks: 88 + forks: 89 owner: Redocly logo: https://avatars.githubusercontent.com/u/32099856?v=4 license: MIT - repoEtag: '"082733c141293a26d7c16cdfd9f4c6d1188ea9f09900c836226008e0c549dcd4"' - repoLastModified: Wed, 06 Dec 2023 03:24:56 GMT + repoEtag: '"9c7e0f22f512fff4874471b185c1a12afc512c753e4c42ba769601b1da14949f"' + repoLastModified: Thu, 14 Dec 2023 23:59:40 GMT foundInMaster: true v3_1: true category: Parsers @@ -9515,7 +9515,7 @@ owner: speakeasy-api logo: https://avatars.githubusercontent.com/u/91446104?v=4 license: NOASSERTION - repoEtag: '"d332a40f58685617ec014c434f620e48fb7c03ed8aac4c32a24e9ecd73d635fa"' + repoEtag: '"50a6da6baa7a8f4defd5af856d3925af94f6e7fa74eb601848071d76e63f1e62"' repoLastModified: Wed, 13 Dec 2023 04:58:25 GMT category: Parsers foundInMaster: true @@ -9650,11 +9650,11 @@ archived: true stars: 100 watchers: 5 - forks: 36 + forks: 37 owner: openapi4j logo: https://avatars.githubusercontent.com/u/39759775?v=4 license: Apache-2.0 - repoEtag: '"6ea53c73c60e7378ab2b4f7766d1148c275e0911277f98e88cfedf05c117b6f0"' + repoEtag: '"efa62439e6bc44dff9dcb4acbc34b86c835f3558b5f667476d91922c33ee2034"' repoLastModified: Sat, 18 Nov 2023 00:17:42 GMT foundInMaster: true id: c5b32630ea7cd375c61c41563e2a2f09 @@ -9696,17 +9696,17 @@ :key: Sample Spring boot application secured using JWT auth in custom header(X-Auth-Token). created: '2016-02-07T11:17:36Z' - updated: '2023-12-12T12:16:04Z' + updated: '2023-12-16T02:37:43Z' language: Java archived: false - stars: 94 + stars: 97 watchers: 6 - forks: 25 + forks: 26 owner: Nasruddin logo: https://avatars.githubusercontent.com/u/2290767?v=4 license: MIT - repoEtag: '"0b9017e13f2c37038ce801ca6469dbe21edbe859b91e1b5e5b9f9706ed4157c2"' - repoLastModified: Tue, 12 Dec 2023 12:16:04 GMT + repoEtag: '"85ad216822ff0aa2e468fe025a815bbffc6fc8d0189fbb4af70c1cfd39f394cb"' + repoLastModified: Sat, 16 Dec 2023 02:37:43 GMT foundInMaster: true category: Server Implementations id: bb56c80ba4c7463e50ddc2959f3113f1 @@ -9888,17 +9888,17 @@ repositoryId: 598846021 description: Refit Client API Generator for OpenAPI created: '2023-02-07T23:18:12Z' - updated: '2023-12-09T12:37:31Z' + updated: '2023-12-14T09:00:57Z' language: C# archived: false - stars: 83 + stars: 84 watchers: 6 forks: 22 owner: christianhelle logo: https://avatars.githubusercontent.com/u/710400?v=4 license: GPL-3.0 - repoEtag: '"90e79aeff06e76f5503651f6a9f6d9ae85d815c3d0c02900983a70e233769f64"' - repoLastModified: Sat, 09 Dec 2023 12:37:31 GMT + repoEtag: '"1b6e5a5c2e31ec880c7f24bd7f6337f392ae49ac470d145556ccb690d8545513"' + repoLastModified: Thu, 14 Dec 2023 09:00:57 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -9989,17 +9989,17 @@ repositoryId: 142623136 description: OpenApi 3.0.0 docs + Swagger UI for oatpp services created: '2018-07-27T20:59:35Z' - updated: '2023-12-09T21:23:21Z' + updated: '2023-12-16T01:09:18Z' language: C++ archived: false - stars: 79 + stars: 81 watchers: 8 - forks: 51 + forks: 52 owner: oatpp logo: https://avatars.githubusercontent.com/u/37167448?v=4 license: Apache-2.0 - repoEtag: '"c1eeb30c26085e44f887e3f69c756df14146c155ab236366f29e7a1015cd06e7"' - repoLastModified: Sat, 09 Dec 2023 21:23:21 GMT + repoEtag: '"541cdbf44550ff1b566206bae34cda92ad54543db75d3325b026ba50c8a21c6f"' + repoLastModified: Sat, 16 Dec 2023 01:09:18 GMT foundInMaster: true category: Low-level Tooling id: e2b5ed322cb3283e7ad1edd0b0634fc4 @@ -10038,9 +10038,9 @@ id: 5f88120dcd8e4bcd38a9215d0e1ec08b repositoryMetadata: base64Readme: >- - PHAgYWxpZ249ImNlbnRlciI+CiAgPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyIj4KICAgIDxwaWN0dXJlPgogICAgICA8c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9Imh0dHBzOi8vZ2l0aHViLmNvbS9tb2Nsb2plci9tb2Nsb2plci9yYXcvbWFpbi9kb2NzL2Fzc2V0cy9sb2dvLnBuZyI+CiAgICAgIDxpbWcgc3JjPSJodHRwczovL2dpdGh1Yi5jb20vbW9jbG9qZXIvbW9jbG9qZXIvcmF3L21haW4vZG9jcy9hc3NldHMvbG9nby5wbmciIGhlaWdodD0iMTI4Ij4KICAgIDwvcGljdHVyZT4KICAgIDxoMSBhbGlnbj0iY2VudGVyIj5tb2Nsb2plcjwvaDE+CiAgPC9hPgo8L3A+Cgo8cCBhbGlnbj0iY2VudGVyIj4KICA8YSBhcmlhLWxhYmVsPSJDTEFzIEFncmVlIiBocmVmPSJodHRwczovL2NsYS1hc3Npc3RhbnQuaW8vbW9jbG9qZXIvbW9jbG9qZXIiIHRhcmdldD0iX2JsYW5rIj4KICAgIDxpbWcgc3JjPSJodHRwczovL2ltZy5zaGllbGRzLmlvL2JhZGdlL0NMQXMtZmYwMDllLnN2Zz9zdHlsZT1mb3ItdGhlLWJhZGdlJmxhYmVsQ29sb3I9MDAwMDAwJmxhYmVsPWFncmVlIj4KICA8L2E+CiAgPGEgYXJpYS1sYWJlbD0iTGljZW5zZSIgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL2Jsb2IvbWFpbi9MSUNFTlNFIj4KICAgIDxpbWcgYWx0PSIiIHNyYz0iaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9iYWRnZS9NSVQtZmYwMDllLnN2Zz9zdHlsZT1mb3ItdGhlLWJhZGdlJmxhYmVsQ29sb3I9MDAwMDAwJmxhYmVsPUxJQ0VOU0UiPgogIDwvYT4KICA8YSBhcmlhLWxhYmVsPSJKb2luIHRoZSBjb21tdW5pdHkgb24gR2l0SHViIiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vbW9jbG9qZXIvbW9jbG9qZXIvZGlzY3Vzc2lvbnMiPgogICAgPGltZyBhbHQ9IiIgc3JjPSJodHRwczovL2ltZy5zaGllbGRzLmlvL2JhZGdlL0pvaW4lMjB0aGUlMjBjb21tdW5pdHktZmYwMDllLnN2Zz9zdHlsZT1mb3ItdGhlLWJhZGdlJmxhYmVsQ29sb3I9MDAwMDAwJmxhYmVsPURpc2N1c3Npb24iPgogIDwvYT4KCiAgPGltZyBzcmM9Imh0dHBzOi8vZ2l0aHViLmNvbS9tb2Nsb2plci9tb2Nsb2plci9hY3Rpb25zL3dvcmtmbG93cy9saW50ZXIueW1sL2JhZGdlLnN2Zz9icmFuY2g9bWFpbiIgYWx0PSJsaW50ZXIiPgoKICA8YSBhcmlhLWxhYmVsPSJDSSBUZXN0cyIgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL2FjdGlvbnMvd29ya2Zsb3dzL3Rlc3RzLnltbCI+CiAgICA8aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL2FjdGlvbnMvd29ya2Zsb3dzL3Rlc3RzLnltbC9iYWRnZS5zdmc/YnJhbmNoPW1haW4iIGFsdD0idGVzdHMiPgogIDwvYT4KCjwvcD4KClNpbXBsZSBhbmQgZWZmaWNpZW50IEhUVFAgbW9jayBzZXJ2ZXIgd2l0aCBzcGVjaWZpY2F0aW9uIHdyaXR0ZW4gaW4gYHlhbWxgLCBgZWRuYCBvciBgT3BlbkFQSWAuCgo+IPCfkr4gRG93bmxvYWQgdGhlIGAuamFyYCBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIG1vY2xvamVyIHRvIHRlc3Qgb24geW91ciBjb21wdXRlciBbaGVyZV0oaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL3JlbGVhc2VzL2xhdGVzdCkuCgpbKirwn5OWIFNlZSB0aGUgY29tcGxldGUgZG9jdW1lbnRhdGlvbiBmb3IgbW9jbG9qZXIgaGVyZSoqXShodHRwczovL2RvY3MubW9jbG9qZXIuY29tLyksIGlmIHlvdSB3YW50IHRvIGNvbnRyaWJ1dGUgKG9yIGNvbXBsZW1lbnQpIHRoZSBkb2N1bWVudGF0aW9uLCBpdCBpcyBbaGVyZV0oaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL3RyZWUvbWFpbi9kb2NzKS4KCioqYFlBTUxgIGV4YW1wbGUqKgoKYGBgeWFtbAojIFRoaXMgbW9jayByZWdpc3RlciByb3V0ZTogR0VUIC9oZWxsby86dXNlcm5hbWUKLSBlbmRwb2ludDoKICAgICMgTm90ZTogdGhlIG1ldGhvZCBjb3VsZCBiZSBvbWl0dGVkIGJlY2F1c2UgR0VUIGlzIHRoZSBkZWZhdWx0CiAgICBtZXRob2Q6IEdFVAogICAgcGF0aDogL2hlbGxvLzp1c2VybmFtZQogICAgcmVzcG9uc2U6CiAgICAgICMgTm90ZTogdGhlIHN0YXR1cyBjb3VsZCBiZSBvbWl0dGVkIGJlY2F1c2UgMjAwIGlzIHRoZSBkZWZhdWx0CiAgICAgIHN0YXR1czogMjAwCiAgICAgIGhlYWRlcnM6CiAgICAgICAgQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uCiAgICAgICMgTm90ZTogdGhlIGJvZHkgd2lsbCByZWNlaXZlIHRoZSB2YWx1ZSBwYXNzZWQgaW4gdGhlIHVybCB1c2luZyB0aGUKICAgICAgIyA6dXNlcm5hbWUgcGxhY2Vob2xkZXIKICAgICAgYm9keTogPgogICAgICAgIHsKICAgICAgICAgICJoZWxsbyI6ICJ7e3BhdGgtcGFyYW1zLnVzZXJuYW1lfX0hIgogICAgICAgIH0KYGBgCgojIyBkb2NrZXIKCiogKippbWFnZToqKiBgZ2hjci5pby9tb2Nsb2plci9tb2Nsb2plcjpsYXRlc3RgCiogKipwb3J0IF8oZGVmYXVsdClfOioqIGA4MDAwYF8sIGlmIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgcG9ydCBzZXQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGBQT1JUYF8KCmBgYHNoCmRvY2tlciBydW4gLWl0IFwKICAtcCA4MDAwOjgwMDAgLXYgJChwd2QpL21vY2xvamVyLnltbDovYXBwL21vY2xvamVyLnltbCBcCiAgZ2hjci5pby9tb2Nsb2plci9tb2Nsb2plcjpsYXRlc3QKYGBgCgoqKndlIFR3byBhdmFpbGFibGUgdmVyc2lvbnM6KioKCiogYGRldmA6IG1haW4gYnJhbmNoIGRvY2tlciBpbWFnZQoqIGBsYXRlc3RgOiBsYXRlc3Qgc3RhYmxlIHZlcnNpb24gaW1hZ2UKCiMjIG1hbnVhbCBpbnN0YWxsYXRpb24KCldlIGRpc3RyaWJ1dGUgdmlhIHRoZSBgLmphcmAgZmlsZSwgeW91IG5lZWQgdG8gaGF2ZSBKYXZhIGluc3RhbGxlZCBvbiB5b3VyIG9wZXJhdGluZyBzeXN0ZW0uCgpgYGBzaApiYXNoIDwgPChjdXJsIC1zIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tb2Nsb2plci9tb2Nsb2plci9tYWluL2luc3RhbGwuc2gpCmBgYAoKPiBJZiB5b3UgYXJlIHVzaW5nIExpbnV4IHlvdSBtYXliZSBuZWVkIGBzdWRvYC4KCiMjIENMSSBVc2FnZQoKKiBgY2xqIC1NOnJ1biBbT1BUSU9OU11gCiogYGphdmEgLWphciBtb2Nsb2plci5qYXIgW09QVElPTlNdYAoqIGBtb2Nsb2plcl9MaW51eCBbT1BUSU9OU11gCgojIyMgT3B0aW9ucwoKcGFyYW1ldGVyIHwgZGVzY3JpcHRpb24KLS0tIHwgLS0tCmAtYywgLS1jb25maWdgIHwgQ29uZmlnIHBhdGggb3IgdGhlIENPTkZJRyBlbnZpcm9ubWVudCB2YXJpYWJsZS4gXFsqKmRlZmF1bHQ6KiogYH4vLmNvbmZpZy9tb2Nsb2plci55bWxgXF0KYC1tLCAtLW1vY2tzYCB8IE9wZW5BUEkgdjMgbW9ja3MgcGF0aCBvciB0aGUgTU9DS1MgZW52aXJvbm1lbnQgdmFyaWFibGUuCmAtaCwgLS1oZWxwYCB8IFNob3cgaGVscCBpbmZvcm1hdGlvbgpgLXYsIC0tdmVyc2lvbmAgfCBTaG93IHZlcnNpb24gaW5mb3JtYXRpb24KCj4gKipDb25maWcqKiB1c2VzIGBYREdfQ09ORklHX0hPTUVgIHRvIGZldGNoIHRoZSBkZWZhdWx0IG1vY2xvamVyIGNvbmZpZ3VyYXRpb24gZmlsZSwgaWYgeW91IHdhbnQgdG8gc2V0IGEgZGlmZmVyZW50IGRpcmVjdG9yeSB5b3UgbXVzdCB1c2UgdGhlIGAtY2Agb3IgZW52aXJvbm1lbnQgdmFyaWFibGUgYENPTkZJR2AKCiMjIPCfkrsgZGV2IGVudmlyb25tZW50Cgptb2Nsb2plciBpcyB3cml0dGVuIGluICoqQ2xvanVyZSoqLCB0byBydW4gdGhlIGNvbW1hbmRzIGJlbG93IHdlIGFzc3VtZSB5b3UgaGF2ZSBjbG9qdXJlIF9pbnN0YWxsZWRfIG9uIHlvdXIgb3BlcmF0aW5nIHN5c3RlbS4KCioqcnVuOioqCgpgYGBzaApjbGogLU06cnVuCmBgYAoKKip0ZXN0OioqCgpgYGBzaApjbGogLU06dGVzdApgYGAKCj4gX2lmIHlvdSB3YW50IHRvIHJ1biBhIHNwZWNpZmljIHRlc3Q6XyBgY2xqIC1NOnRlc3QgLW4gY29tLm1vY2xvamVyLmV4dGVybmFsLWJvZHkuZXhjZWwtdGVzdGAKCioqYG1vY2xvamVyLmphcmAgZ2VuZXJhdGU6KioKCmBgYHNoCmNsaiAtQTpkZXYgLU0gLS1yZXBvcnQgc3RkZXJyIC1tIGNvbS5tb2Nsb2plci5idWlsZApgYGAKCiMjIGZyYW1ld29yayBpbnRlZ3JhdGlvbnMKCldlIGFyZSB1bmFibGUgdG8gZGlzdHJpYnV0ZSAqKm1vY2xvamVyKiogdmlhIGNsb2phcnMgYmVjYXVzZSBpdCBpcyBsYXJnZXIgdGhhbiBgMjBNQmAsIGlmIHlvdSBuZWVkIHRvIHVzZSAqKm1vY2xvamVyKiogYXMgYSBmcmFtZXdvcmsgd2UgcmVjb21tZW5kIGluc3RhbGxpbmcgaXQgdmlhIFtgZ2l0YF0oaHR0cHM6Ly9jbG9qdXJlLm9yZy9ndWlkZXMvZGVwc19hbmRfY2xpI191c2luZ19naXRfbGlicmFyaWVzKSBpbiBgZGVwcy5lZG5gOgoKYGBgZWRuCns6ZGVwcwoge2NvbS5tb2Nsb2plci9tb2Nsb2plciB7OmdpdC91cmwgImh0dHBzOi8vZ2l0aHViLmNvbS9tb2Nsb2plci9tb2Nsb2plci5naXQiCiAgICAgICAgICAgICAgICAgICAgICAgICA6Z2l0L3RhZyAidjAuMy4wIgogICAgICAgICAgICAgICAgICAgICAgICAgOmdpdC9zaGEgIjhiZGIxYjhkZGNmNzZjNTI3ZmVhMDA1ZGRhNTA1MzRlYzA4ZDNhZTMifX19CmBgYAoKKipleGFtcGxlIG9mIHVzZToqKgoKYGBgY2xqCihucyBteS1hcHAuY29yZQogICg6cmVxdWlyZSBbY29tLm1vY2xvamVyLmFkYXB0ZXJzIDphcyBhZGFwdGVyc10KICAgICAgICAgICAgW2NvbS5tb2Nsb2plci5zZXJ2ZXIgOmFzIHNlcnZlcl0pKQoKKGRlZiAqcm91dGVyCiAgImNyZWF0ZSBhIHJvdXRlciBmcm9tIGEgY29uZmlnIG1hcCIKICAoYWRhcHRlcnMvZ2VuZXJhdGUtcm91dGVzCiAgIFt7OmVuZHBvaW50CiAgICAgezptZXRob2QgIkdFVCIKICAgICAgOnBhdGggIi9leGFtcGxlIgogICAgICA6cmVzcG9uc2UgezpzdGF0dXMgMjAwCiAgICAgICAgICAgICAgICAgOmhlYWRlcnMgezpDb250ZW50LVR5cGUgImFwcGxpY2F0aW9uL2pzb24ifQogICAgICAgICAgICAgICAgIDpib2R5IHs6aWQgMTIzfX19fV0pKQoKKGRlZm4gLW1haW4KICAic3RhcnQgdGhlIHNlcnZlciIKICBbJiBhcmdzXQogIChzZXJ2ZXIvc3RhcnQtc2VydmVyISAqcm91dGVyKSkKYGBgCg== - readmeEtag: '"3eeac373745d48db058d214963c7c7a76ab8d5ec5d08616d0944a93454820995"' - readmeLastModified: Sun, 10 Dec 2023 21:57:40 GMT + PHAgYWxpZ249ImNlbnRlciI+CiAgPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyIj4KICAgIDxwaWN0dXJlPgogICAgICA8c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9Imh0dHBzOi8vZ2l0aHViLmNvbS9tb2Nsb2plci9tb2Nsb2plci9yYXcvbWFpbi9kb2NzL2Fzc2V0cy9sb2dvLnBuZyI+CiAgICAgIDxpbWcgc3JjPSJodHRwczovL2dpdGh1Yi5jb20vbW9jbG9qZXIvbW9jbG9qZXIvcmF3L21haW4vZG9jcy9hc3NldHMvbG9nby5wbmciIGhlaWdodD0iMTI4Ij4KICAgIDwvcGljdHVyZT4KICAgIDxoMSBhbGlnbj0iY2VudGVyIj5tb2Nsb2plcjwvaDE+CiAgPC9hPgo8L3A+Cgo8cCBhbGlnbj0iY2VudGVyIj4KICA8YSBhcmlhLWxhYmVsPSJDTEFzIEFncmVlIiBocmVmPSJodHRwczovL2NsYS1hc3Npc3RhbnQuaW8vbW9jbG9qZXIvbW9jbG9qZXIiIHRhcmdldD0iX2JsYW5rIj4KICAgIDxpbWcgc3JjPSJodHRwczovL2ltZy5zaGllbGRzLmlvL2JhZGdlL0NMQXMtZmYwMDllLnN2Zz9zdHlsZT1mb3ItdGhlLWJhZGdlJmxhYmVsQ29sb3I9MDAwMDAwJmxhYmVsPWFncmVlIj4KICA8L2E+CiAgPGEgYXJpYS1sYWJlbD0iTGljZW5zZSIgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL2Jsb2IvbWFpbi9MSUNFTlNFIj4KICAgIDxpbWcgYWx0PSIiIHNyYz0iaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9iYWRnZS9NSVQtZmYwMDllLnN2Zz9zdHlsZT1mb3ItdGhlLWJhZGdlJmxhYmVsQ29sb3I9MDAwMDAwJmxhYmVsPUxJQ0VOU0UiPgogIDwvYT4KICA8YSBhcmlhLWxhYmVsPSJKb2luIHRoZSBjb21tdW5pdHkgb24gR2l0SHViIiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vbW9jbG9qZXIvbW9jbG9qZXIvZGlzY3Vzc2lvbnMiPgogICAgPGltZyBhbHQ9IiIgc3JjPSJodHRwczovL2ltZy5zaGllbGRzLmlvL2JhZGdlL0pvaW4lMjB0aGUlMjBjb21tdW5pdHktZmYwMDllLnN2Zz9zdHlsZT1mb3ItdGhlLWJhZGdlJmxhYmVsQ29sb3I9MDAwMDAwJmxhYmVsPURpc2N1c3Npb24iPgogIDwvYT4KCiAgPGltZyBzcmM9Imh0dHBzOi8vZ2l0aHViLmNvbS9tb2Nsb2plci9tb2Nsb2plci9hY3Rpb25zL3dvcmtmbG93cy9saW50ZXIueW1sL2JhZGdlLnN2Zz9icmFuY2g9bWFpbiIgYWx0PSJsaW50ZXIiPgoKICA8YSBhcmlhLWxhYmVsPSJDSSBUZXN0cyIgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL2FjdGlvbnMvd29ya2Zsb3dzL3Rlc3RzLnltbCI+CiAgICA8aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL2FjdGlvbnMvd29ya2Zsb3dzL3Rlc3RzLnltbC9iYWRnZS5zdmc/YnJhbmNoPW1haW4iIGFsdD0idGVzdHMiPgogIDwvYT4KCjwvcD4KClNpbXBsZSBhbmQgZWZmaWNpZW50IEhUVFAgbW9jayBzZXJ2ZXIgd2l0aCBzcGVjaWZpY2F0aW9uIHdyaXR0ZW4gaW4gYHlhbWxgLCBgZWRuYCBvciBgT3BlbkFQSWAuCgo+IPCfkr4gRG93bmxvYWQgdGhlIGAuamFyYCBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIG1vY2xvamVyIHRvIHRlc3Qgb24geW91ciBjb21wdXRlciBbaGVyZV0oaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL3JlbGVhc2VzL2xhdGVzdCkuCgpbKirwn5OWIFNlZSB0aGUgY29tcGxldGUgZG9jdW1lbnRhdGlvbiBmb3IgbW9jbG9qZXIgaGVyZSoqXShodHRwczovL2RvY3MubW9jbG9qZXIuY29tLyksIGlmIHlvdSB3YW50IHRvIGNvbnRyaWJ1dGUgKG9yIGNvbXBsZW1lbnQpIHRoZSBkb2N1bWVudGF0aW9uLCBpdCBpcyBbaGVyZV0oaHR0cHM6Ly9naXRodWIuY29tL21vY2xvamVyL21vY2xvamVyL3RyZWUvbWFpbi9kb2NzKS4KCioqYFlBTUxgIGV4YW1wbGUqKgoKYGBgeWFtbAojIFRoaXMgbW9jayByZWdpc3RlciByb3V0ZTogR0VUIC9oZWxsby86dXNlcm5hbWUKLSBlbmRwb2ludDoKICAgICMgTm90ZTogdGhlIG1ldGhvZCBjb3VsZCBiZSBvbWl0dGVkIGJlY2F1c2UgR0VUIGlzIHRoZSBkZWZhdWx0CiAgICBtZXRob2Q6IEdFVAogICAgcGF0aDogL2hlbGxvLzp1c2VybmFtZQogICAgcmVzcG9uc2U6CiAgICAgICMgTm90ZTogdGhlIHN0YXR1cyBjb3VsZCBiZSBvbWl0dGVkIGJlY2F1c2UgMjAwIGlzIHRoZSBkZWZhdWx0CiAgICAgIHN0YXR1czogMjAwCiAgICAgIGhlYWRlcnM6CiAgICAgICAgQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uCiAgICAgICMgTm90ZTogdGhlIGJvZHkgd2lsbCByZWNlaXZlIHRoZSB2YWx1ZSBwYXNzZWQgaW4gdGhlIHVybCB1c2luZyB0aGUKICAgICAgIyA6dXNlcm5hbWUgcGxhY2Vob2xkZXIKICAgICAgYm9keTogPgogICAgICAgIHsKICAgICAgICAgICJoZWxsbyI6ICJ7e3BhdGgtcGFyYW1zLnVzZXJuYW1lfX0hIgogICAgICAgIH0KYGBgCgojIyBkb2NrZXIKCiogKippbWFnZToqKiBgZ2hjci5pby9tb2Nsb2plci9tb2Nsb2plcjpsYXRlc3RgCiogKipwb3J0IF8oZGVmYXVsdClfOioqIGA4MDAwYF8sIGlmIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgcG9ydCBzZXQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGBQT1JUYF8KCmBgYHNoCmRvY2tlciBydW4gLWl0IFwKICAtcCA4MDAwOjgwMDAgLXYgJChwd2QpL21vY2xvamVyLnltbDovYXBwL21vY2xvamVyLnltbCBcCiAgZ2hjci5pby9tb2Nsb2plci9tb2Nsb2plcjpsYXRlc3QKYGBgCgoqKndlIFR3byBhdmFpbGFibGUgdmVyc2lvbnM6KioKCiogYGRldmA6IG1haW4gYnJhbmNoIGRvY2tlciBpbWFnZQoqIGBsYXRlc3RgOiBsYXRlc3Qgc3RhYmxlIHZlcnNpb24gaW1hZ2UKCiMjIG1hbnVhbCBpbnN0YWxsYXRpb24KCldlIGRpc3RyaWJ1dGUgdmlhIHRoZSBgLmphcmAgZmlsZSwgeW91IG5lZWQgdG8gaGF2ZSBKYXZhIGluc3RhbGxlZCBvbiB5b3VyIG9wZXJhdGluZyBzeXN0ZW0uCgpgYGBzaApiYXNoIDwgPChjdXJsIC1zIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tb2Nsb2plci9tb2Nsb2plci9tYWluL2luc3RhbGwuc2gpCmBgYAoKPiBJZiB5b3UgYXJlIHVzaW5nIExpbnV4IHlvdSBtYXliZSBuZWVkIGBzdWRvYC4KCiMjIENMSSBVc2FnZQoKKiBgY2xqIC1NOnJ1biBbT1BUSU9OU11gCiogYGphdmEgLWphciBtb2Nsb2plci5qYXIgW09QVElPTlNdYAoqIGBtb2Nsb2plcl9MaW51eCBbT1BUSU9OU11gCgojIyMgT3B0aW9ucwoKcGFyYW1ldGVyIHwgZGVzY3JpcHRpb24KLS0tIHwgLS0tCmAtYywgLS1jb25maWdgIHwgQ29uZmlnIHBhdGggb3IgdGhlIENPTkZJRyBlbnZpcm9ubWVudCB2YXJpYWJsZS4gXFsqKmRlZmF1bHQ6KiogYH4vLmNvbmZpZy9tb2Nsb2plci55bWxgXF0KYC1tLCAtLW1vY2tzYCB8IE9wZW5BUEkgdjMgbW9ja3MgcGF0aCBvciB0aGUgTU9DS1MgZW52aXJvbm1lbnQgdmFyaWFibGUuCmAtaCwgLS1oZWxwYCB8IFNob3cgaGVscCBpbmZvcm1hdGlvbgpgLXYsIC0tdmVyc2lvbmAgfCBTaG93IHZlcnNpb24gaW5mb3JtYXRpb24KCj4gKipDb25maWcqKiB1c2VzIGBYREdfQ09ORklHX0hPTUVgIHRvIGZldGNoIHRoZSBkZWZhdWx0IG1vY2xvamVyIGNvbmZpZ3VyYXRpb24gZmlsZSwgaWYgeW91IHdhbnQgdG8gc2V0IGEgZGlmZmVyZW50IGRpcmVjdG9yeSB5b3UgbXVzdCB1c2UgdGhlIGAtY2Agb3IgZW52aXJvbm1lbnQgdmFyaWFibGUgYENPTkZJR2AKCiMjIPCfkrsgZGV2IGVudmlyb25tZW50Cgptb2Nsb2plciBpcyB3cml0dGVuIGluICoqQ2xvanVyZSoqLCB0byBydW4gdGhlIGNvbW1hbmRzIGJlbG93IHdlIGFzc3VtZSB5b3UgaGF2ZSBjbG9qdXJlIF9pbnN0YWxsZWRfIG9uIHlvdXIgb3BlcmF0aW5nIHN5c3RlbS4KCioqcnVuOioqCgpgYGBzaApjbGogLU06cnVuCmBgYAoKKip0ZXN0OioqCgpgYGBzaApjbGogLU06dGVzdApgYGAKCj4gX2lmIHlvdSB3YW50IHRvIHJ1biBhIHNwZWNpZmljIHRlc3Q6XyBgY2xqIC1NOnRlc3QgLW4gY29tLm1vY2xvamVyLmV4dGVybmFsLWJvZHkuZXhjZWwtdGVzdGAKCioqYG1vY2xvamVyLmphcmAgZ2VuZXJhdGU6KioKCmBgYHNoCmNsaiAtQTpkZXYgLU0gLS1yZXBvcnQgc3RkZXJyIC1tIGNvbS5tb2Nsb2plci5idWlsZApgYGAKCiMjIGZyYW1ld29yayBpbnRlZ3JhdGlvbnMKCldlIGFyZSB1bmFibGUgdG8gZGlzdHJpYnV0ZSAqKm1vY2xvamVyKiogdmlhIGNsb2phcnMgYmVjYXVzZSBpdCBpcyBsYXJnZXIgdGhhbiBgMjBNQmAsIGlmIHlvdSBuZWVkIHRvIHVzZSAqKm1vY2xvamVyKiogYXMgYSBmcmFtZXdvcmsgd2UgcmVjb21tZW5kIGluc3RhbGxpbmcgaXQgdmlhIFtgZ2l0YF0oaHR0cHM6Ly9jbG9qdXJlLm9yZy9ndWlkZXMvZGVwc19hbmRfY2xpI191c2luZ19naXRfbGlicmFyaWVzKSBpbiBgZGVwcy5lZG5gOgoKYGBgZWRuCns6ZGVwcwoge2NvbS5tb2Nsb2plci9tb2Nsb2plciB7OmdpdC91cmwgImh0dHBzOi8vZ2l0aHViLmNvbS9tb2Nsb2plci9tb2Nsb2plci5naXQiCiAgICAgICAgICAgICAgICAgICAgICAgICA6Z2l0L3RhZyAidjAuMy4wIgogICAgICAgICAgICAgICAgICAgICAgICAgOmdpdC9zaGEgIjRjYzViMDllNTQ2YTBjNDE0YzIyZTBlMzY5OGY5N2QzZGQ5Mzg0OTIifX19CmBgYAoKKipleGFtcGxlIG9mIHVzZToqKgoKYGBgY2xqCihucyBteS1hcHAuY29yZQogICg6cmVxdWlyZSBbY29tLm1vY2xvamVyLmFkYXB0ZXJzIDphcyBhZGFwdGVyc10KICAgICAgICAgICAgW2NvbS5tb2Nsb2plci5zZXJ2ZXIgOmFzIHNlcnZlcl0pKQoKKGRlZiAqcm91dGVyCiAgImNyZWF0ZSBhIHJvdXRlciBmcm9tIGEgY29uZmlnIG1hcCIKICAoYWRhcHRlcnMvZ2VuZXJhdGUtcm91dGVzCiAgIFt7OmVuZHBvaW50CiAgICAgezptZXRob2QgIkdFVCIKICAgICAgOnBhdGggIi9leGFtcGxlIgogICAgICA6cmVzcG9uc2UgezpzdGF0dXMgMjAwCiAgICAgICAgICAgICAgICAgOmhlYWRlcnMgezpDb250ZW50LVR5cGUgImFwcGxpY2F0aW9uL2pzb24ifQogICAgICAgICAgICAgICAgIDpib2R5IHs6aWQgMTIzfX19fV0pKQoKKGRlZm4gLW1haW4KICAic3RhcnQgdGhlIHNlcnZlciIKICBbJiBhcmdzXQogIChzZXJ2ZXIvc3RhcnQtc2VydmVyISAqcm91dGVyKSkKYGBgCg== + readmeEtag: '"ad2fd85cd3bb19c29b1b76944e45fe156c3899ff86c8530b7eb211b1222e2282"' + readmeLastModified: Fri, 15 Dec 2023 23:18:35 GMT repositoryId: 462693523 description: >- Simple and efficient HTTP mock server with specification in yaml, edn or @@ -10055,7 +10055,7 @@ owner: moclojer logo: https://avatars.githubusercontent.com/u/103039458?v=4 license: MIT - repoEtag: '"2dab729c606e082401a705f45f7639bbb2b50a47c88cb9c5dec9d31d1e42ea0c"' + repoEtag: '"7c6be170237721545909bcd64cf49ae97f7e080e5410ce488c6eb518b57c59ce"' repoLastModified: Fri, 01 Dec 2023 03:58:04 GMT category: Testing foundInMaster: true @@ -10157,17 +10157,17 @@ repositoryId: 673944158 description: This repository contains the specification files for PayPal REST APIs. created: '2023-08-02T19:26:26Z' - updated: '2023-12-13T16:44:10Z' + updated: '2023-12-14T08:34:48Z' language: null archived: false - stars: 76 + stars: 77 watchers: 12 - forks: 77 + forks: 80 owner: paypal logo: https://avatars.githubusercontent.com/u/476675?v=4 license: Apache-2.0 - repoEtag: '"e7aff620d601806589276ce7956fc40dff6970ab6d72439b343d2e549a6df295"' - repoLastModified: Wed, 13 Dec 2023 16:44:10 GMT + repoEtag: '"63e78633d65232ec4798cab1cd6ef549f234fa57debc491bbecb4ee9a290c5cb"' + repoLastModified: Thu, 14 Dec 2023 08:34:48 GMT category: Code Generators foundInMaster: true - source: openapi3 tags @@ -10245,7 +10245,7 @@ owner: OAI logo: https://avatars.githubusercontent.com/u/16343502?v=4 license: CC-BY-4.0 - repoEtag: '"0eda2c5115c3c7e1d14af03ac8f31ae8a98ef09e75e619bf67a32236a14067bc"' + repoEtag: '"793f2fea21bbddf574eeee2bc00e238039a7d157922265a23e04f4a8dda02e8b"' repoLastModified: Fri, 17 Nov 2023 09:27:58 GMT category: Parsers oldLocations: @@ -10487,7 +10487,7 @@ owner: hh-h logo: https://avatars.githubusercontent.com/u/8166963?v=4 license: Apache-2.0 - repoEtag: '"c8ec004115acccda6252dbcdb75f934c79d39b21d814b2ce7da9783eb6195419"' + repoEtag: '"ce59c34afb0dbb8284e1f437613c85b28bcf5965a6bd0136179a706c6e0ad6eb"' repoLastModified: Tue, 21 Nov 2023 04:54:30 GMT foundInMaster: true category: Server Implementations @@ -10506,16 +10506,16 @@ A collection of open-source and commercial tools for creating your APIs with OpenAPI - Sourced from and published for the community created: '2022-01-14T19:24:14Z' - updated: '2023-12-11T17:14:01Z' + updated: '2023-12-15T03:44:22Z' language: JavaScript archived: false - stars: 57 + stars: 58 watchers: 8 - forks: 15 + forks: 16 owner: OAI logo: https://avatars.githubusercontent.com/u/16343502?v=4 - repoEtag: '"7d1679f8ddcbe03f5a31d9bd66c15229171286968eb79cce4b0eda894901ef67"' - repoLastModified: Mon, 11 Dec 2023 17:14:01 GMT + repoEtag: '"c5225010cd8489d34ba2e7f5ed572d350e50b3dc39c1839c09f9925db3569237"' + repoLastModified: Fri, 15 Dec 2023 03:44:22 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -10579,17 +10579,17 @@ repositoryId: 171639126 description: Rack middlewares to create OpenAPI based HTTP APIs created: '2019-02-20T09:11:47Z' - updated: '2023-12-05T14:05:32Z' + updated: '2023-12-15T08:56:59Z' language: Ruby archived: false - stars: 54 + stars: 55 watchers: 3 - forks: 7 + forks: 8 owner: ahx logo: https://avatars.githubusercontent.com/u/8669?v=4 license: MIT - repoEtag: '"c21ce6ba703e9e4a49cf829706bea20127b8449dfd830949295cd13761cc9885"' - repoLastModified: Tue, 05 Dec 2023 14:05:32 GMT + repoEtag: '"2ac6640bc21dd08b84738b06c3c6652c09f05761f3ad3e648281f9e78363fa03"' + repoLastModified: Fri, 15 Dec 2023 08:56:59 GMT foundInMaster: true category: - Data Validators @@ -10827,7 +10827,7 @@ forks: 10 owner: swagger-api logo: https://avatars.githubusercontent.com/u/7658037?v=4 - repoEtag: '"bf3bff5d064863bafaf3624ac8cf6fc56892b669d4707e379dc19420f0171d2b"' + repoEtag: '"5514f0f5d5685f0468deb715a9e62c91568956ab434c03b90f6b5eec48433bb6"' repoLastModified: Thu, 30 Nov 2023 10:09:52 GMT category: Parsers foundInMaster: true @@ -10978,17 +10978,17 @@ repositoryId: 261799480 description: SwaggerHub CLI created: '2020-05-06T15:21:34Z' - updated: '2023-11-10T09:47:22Z' + updated: '2023-12-16T01:13:03Z' language: JavaScript archived: false - stars: 40 + stars: 41 watchers: 30 forks: 10 owner: SmartBear logo: https://avatars.githubusercontent.com/u/1644671?v=4 license: Apache-2.0 - repoEtag: '"c42ef77d176badd7b3c28ddfdfd83eb821f6966e1b46fb140ae0951936feb41b"' - repoLastModified: Fri, 10 Nov 2023 09:47:22 GMT + repoEtag: '"145a4876ffd1c8fbce4286ee552248843891a108d5f18d842b7727045c3e85d0"' + repoLastModified: Sat, 16 Dec 2023 01:13:03 GMT foundInMaster: true category: Code Generators id: 4921a5a6c94697cd438f25deccf95ab6 @@ -11065,7 +11065,7 @@ forks: 26 owner: piomin logo: https://avatars.githubusercontent.com/u/2892502?v=4 - repoEtag: '"d7799f0d8bc7ea147ca72086a32b49c346f9df03acfd985045afbd861dd32de9"' + repoEtag: '"91174d801fc2f448e16103e6c20cb4e9df53f3461e7556a2cac37a75da8df092"' repoLastModified: Mon, 02 Oct 2023 00:55:50 GMT foundInMaster: true category: SDK @@ -11082,17 +11082,17 @@ repositoryId: 609666398 description: ChatGPT for Openapi created: '2023-03-04T21:34:21Z' - updated: '2023-11-30T10:53:16Z' + updated: '2023-12-15T14:33:58Z' language: Python archived: false - stars: 39 + stars: 38 watchers: 2 forks: 4 owner: egeucak logo: https://avatars.githubusercontent.com/u/15627365?v=4 license: MIT - repoEtag: '"b56d0e47a63414e51534e722314343b0cf96646dd7f356e0ec34151463a3ff2e"' - repoLastModified: Thu, 30 Nov 2023 10:53:16 GMT + repoEtag: '"8d6c4a16e2e6181175ba474c835d1ab20c345d4fd99d3e7b8aa9c300c64f1d6c"' + repoLastModified: Fri, 15 Dec 2023 14:33:58 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -11227,7 +11227,7 @@ owner: Backbase logo: https://avatars.githubusercontent.com/u/1914334?v=4 license: NOASSERTION - repoEtag: '"78cc185c04162e9fae9000be16df11b89e778ef90828222155e175dd3cf938b8"' + repoEtag: '"59c6ebb0aaec99ba70eaf7e75a65f579aa761da9f3fbf6d90ebb2b7c563f83fe"' repoLastModified: Fri, 20 Oct 2023 12:33:10 GMT foundInMaster: true category: SDK @@ -11413,17 +11413,17 @@ repositoryId: 591235475 description: A typed fetch client for openapi-typescript for use with SvelteKit created: '2023-01-20T08:55:39Z' - updated: '2023-11-02T13:57:53Z' + updated: '2023-12-14T20:31:44Z' language: TypeScript archived: false - stars: 33 + stars: 37 watchers: 0 forks: 1 owner: cocreators-ee logo: https://avatars.githubusercontent.com/u/25827530?v=4 license: MIT - repoEtag: '"dd3773f62e66d2d71c1dfef441ca8031d64c3518b910f7690987bc3605efdd04"' - repoLastModified: Thu, 02 Nov 2023 13:57:53 GMT + repoEtag: '"97a2e27604c0eeea2a71c23455822858b0b798c09fc494da2818b8a20f97c43a"' + repoLastModified: Thu, 14 Dec 2023 20:31:44 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -11549,7 +11549,7 @@ owner: quantmind logo: https://avatars.githubusercontent.com/u/144099?v=4 license: BSD-3-Clause - repoEtag: '"03828d896302880694ec6bcea224f828fd98d4bf09d0f3b0ecb658c5d38fae2a"' + repoEtag: '"89375128c5c86a9cec32c3bd6c755c666a9d1ef90781419230b3e21c2e644277"' repoLastModified: Fri, 16 Jun 2023 06:44:28 GMT foundInMaster: true category: Server Implementations @@ -11592,16 +11592,16 @@ repositoryId: 512335029 description: 'OpenAPI Specification & Swagger Tools : Zero To Master - Code Examples' created: '2022-07-10T03:25:03Z' - updated: '2023-12-09T13:44:33Z' + updated: '2023-12-14T12:26:55Z' language: Java archived: false - stars: 31 + stars: 32 watchers: 4 - forks: 60 + forks: 59 owner: eazybytes logo: https://avatars.githubusercontent.com/u/79041235?v=4 - repoEtag: '"3d143ba35aa680e4ffd9340a7f23ba39c8ecc37dd8129078acb85e462e628816"' - repoLastModified: Sat, 09 Dec 2023 13:44:33 GMT + repoEtag: '"deabe3e4239f3606144c2d464f06bf0126aed442521798bb523f0d2cd1631b88"' + repoLastModified: Thu, 14 Dec 2023 12:26:55 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -11686,7 +11686,7 @@ owner: openapi-processor logo: https://avatars.githubusercontent.com/u/66728774?v=4 license: Apache-2.0 - repoEtag: '"7fe028b8c95727c1e37642d802bcacfc0e9d4db03461c553986049fe9f20dbf3"' + repoEtag: '"e17085c84e1abbe6062992e426e8fa821c08772d77526ac55485c5a388c2d4e3"' repoLastModified: Mon, 04 Dec 2023 07:55:33 GMT foundInMaster: true id: 544de493e48dbce482dd3fcfc87ad568 @@ -11713,7 +11713,7 @@ owner: kstasik logo: https://avatars.githubusercontent.com/u/676617?v=4 license: MIT - repoEtag: '"ebbb25e03dbf1dd6cf8fbb3457d1eb2b87369eb33bbb0de4d91a86b621d73556"' + repoEtag: '"4deb81a88fcb98dbffda71b8258d00c5f4bb5b6f06e7ea7021eb4bf2c7da1e65"' repoLastModified: Fri, 24 Nov 2023 12:49:53 GMT category: Parsers foundInMaster: true @@ -11739,7 +11739,7 @@ owner: kota65535 logo: https://avatars.githubusercontent.com/u/10975834?v=4 license: MIT - repoEtag: '"465f5f02f007cacbf670df16c15f00508cbf3fbaa9d320126f822f92a7c2c89d"' + repoEtag: '"58069735eba2d2e8fc36e79249b631350b110251fd3c7cb177ab411ce0c485f3"' repoLastModified: Tue, 21 Nov 2023 07:20:45 GMT category: Parsers foundInMaster: true @@ -11766,7 +11766,7 @@ owner: data-fair logo: https://avatars.githubusercontent.com/u/83776320?v=4 license: AGPL-3.0 - repoEtag: '"1d090780e943beb99997a954816e67483d9d0356f598269943297ed17312c24f"' + repoEtag: '"2ebb1b640a9278c74ffae474fe16f7e4430d07c08c394021d01044bb088a7b12"' repoLastModified: Wed, 06 Dec 2023 04:10:05 GMT foundInMaster: true category: @@ -11996,17 +11996,17 @@ repositoryId: 506151512 description: 'A client generator from openapi for python. ' created: '2022-06-22T07:56:40Z' - updated: '2023-12-01T23:51:03Z' + updated: '2023-12-14T16:03:51Z' language: Python archived: false - stars: 27 + stars: 28 watchers: 2 forks: 16 owner: MarcoMuellner logo: https://avatars.githubusercontent.com/u/13886384?v=4 license: MIT - repoEtag: '"a0c961b70b2fcac2240a48b58e26e8c4b645b58ae43e9ee98c4861d623ec7d85"' - repoLastModified: Fri, 01 Dec 2023 23:51:03 GMT + repoEtag: '"4cecc9802a326b1d19cb013157036b841a0caee45e357bbe24be4ab9cb094294"' + repoLastModified: Thu, 14 Dec 2023 16:03:51 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -12349,7 +12349,7 @@ owner: hei-school logo: https://avatars.githubusercontent.com/u/88576095?v=4 license: MIT - repoEtag: '"9c40627d97d206dfb77325fd7dea661d927a67e1e0c2b62250f0752e5e809e38"' + repoEtag: '"b6ee1b50f3ad043ef71c0b2cafa056de77cab15853ba3cc72f8fd36a4448a187"' repoLastModified: Fri, 08 Dec 2023 07:47:37 GMT foundInMaster: true category: Code Generators @@ -12481,7 +12481,7 @@ forks: 2 owner: stackql logo: https://avatars.githubusercontent.com/u/95105302?v=4 - repoEtag: '"c427200c24644a83c42852d6ed4282364e4613669d6b44af324163ec0805893c"' + repoEtag: '"d8b5bc88598b7cb12a058e06119c3eaf33d87e1f19bad58d97e1aa32bb169487"' repoLastModified: Thu, 28 Sep 2023 11:34:22 GMT category: Server Implementations foundInMaster: true @@ -12588,7 +12588,7 @@ forks: 16 owner: ShipEngine logo: https://avatars.githubusercontent.com/u/42709242?v=4 - repoEtag: '"2809ca133cbdd9a5a19162876656a2544d275a5745222f490ee66175760fcc0c"' + repoEtag: '"9a20d410f475913db9380b7d869a02db5f1fb57f026dabf4f8331e1b3b9edc51"' repoLastModified: Wed, 18 Oct 2023 19:30:48 GMT foundInMaster: true category: Parsers @@ -12741,7 +12741,7 @@ owner: dkackman logo: https://avatars.githubusercontent.com/u/5160233?v=4 license: Apache-2.0 - repoEtag: '"d8e60e13a178ce3d8516e277602c5eba909291dbaeea463e9f90b2c497c47458"' + repoEtag: '"a182a02e0a0419edd5268a7e47f62edfe7f9d8fcc5dedb84b4330dd652077d1c"' repoLastModified: Fri, 25 Aug 2023 17:29:34 GMT foundInMaster: true category: Server @@ -12793,7 +12793,7 @@ owner: eikek logo: https://avatars.githubusercontent.com/u/701128?v=4 license: MIT - repoEtag: '"c290fececd0b10b905f8ebb07858eacb05d0e1077bcbfefdc98c9ccfa64ef403"' + repoEtag: '"fc2619ac7e38ab87043cf3b11df217d550349d0b60d50de57223bc87cb406ec8"' repoLastModified: Sat, 25 Nov 2023 15:31:43 GMT foundInMaster: true category: Parsers @@ -12838,11 +12838,11 @@ archived: false stars: 19 watchers: 3 - forks: 9 + forks: 8 owner: mikekonan logo: https://avatars.githubusercontent.com/u/36304777?v=4 license: MIT - repoEtag: '"3abf6346d504841c1adf5fed94d8dc9e38fa70972d515304110df842754e9cbc"' + repoEtag: '"722b33b730eb72c18635379189277a860eb6cc87ea2fd1ec691945faea0f2f4a"' repoLastModified: Mon, 09 Oct 2023 11:02:18 GMT foundInMaster: true category: Parsers @@ -12994,16 +12994,16 @@ Spring Boot and Swagger 3 example - configuration for API description / response example - Swagger annotations with OpenAPI 3 created: '2023-03-15T03:33:57Z' - updated: '2023-11-17T08:41:41Z' + updated: '2023-12-14T13:45:55Z' language: Java archived: false - stars: 18 + stars: 20 watchers: 2 forks: 18 owner: bezkoder logo: https://avatars.githubusercontent.com/u/52996966?v=4 - repoEtag: '"ccfaea5b570d87dcdf18fbbef45419462a9d9fe50ded8d1a52e661404b468c05"' - repoLastModified: Fri, 17 Nov 2023 08:41:41 GMT + repoEtag: '"9e76f15e201258ca42cc60ef2ee3e6835afc22d001156772aef0d654c341929a"' + repoLastModified: Thu, 14 Dec 2023 13:45:55 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -13264,11 +13264,11 @@ archived: false stars: 17 watchers: 2 - forks: 9 + forks: 8 owner: mikekonan logo: https://avatars.githubusercontent.com/u/36304777?v=4 license: MIT - repoEtag: '"41451f6539581e96555f4810ec74580945179d57c5b59783de5fbb96fdd20532"' + repoEtag: '"8054429e3c9ce1d9b037b3c0935106e4e1010e00b97a42ac16434d754ce25754"' repoLastModified: Fri, 20 Oct 2023 02:07:11 GMT foundInMaster: true category: Low-level Tooling @@ -13483,7 +13483,7 @@ owner: elixir-cloud-aai logo: https://avatars.githubusercontent.com/u/60704687?v=4 license: Apache-2.0 - repoEtag: '"1e5d1bb2a453cba949699f37cba8e4a75c1a032506257b1bd972ceb9a21b2bdc"' + repoEtag: '"c9a3021fece24696715cba504ffdd5cbdb05b14ef2cdb8d20b9ff613c54c09d7"' repoLastModified: Fri, 08 Dec 2023 22:51:07 GMT category: Server Implementations foundInMaster: true @@ -13803,7 +13803,7 @@ owner: pb33f logo: https://avatars.githubusercontent.com/u/104016643?v=4 license: NOASSERTION - repoEtag: '"44cf2c6524fd1a0f05b81a46d33b034c39e68e066741eecc9a9c41978a66a9be"' + repoEtag: '"63eec605839522794606f56803f676155c366308118d89740800f2d473e32604"' repoLastModified: Sun, 10 Dec 2023 23:51:21 GMT category: Parsers foundInMaster: true @@ -13883,12 +13883,12 @@ language: Shell archived: false stars: 13 - watchers: 10 + watchers: 9 forks: 0 owner: bcgov logo: https://avatars.githubusercontent.com/u/916280?v=4 license: Apache-2.0 - repoEtag: '"1d36c40e584c239b9e64f75d192a38b075db44771a69cc7ca141982ae48bd65a"' + repoEtag: '"299171b3aa2f4f22f919dcbf191ea7aadc3d2247dd0c26793f587fffa881188b"' repoLastModified: Wed, 04 Oct 2023 21:10:59 GMT category: Documentation foundInMaster: true @@ -14420,9 +14420,9 @@ id: 2d252e6d912a2772d88fd6f022fff74f repositoryMetadata: base64Readme: >- - IyBSZWRvY2x5IENMSSBDb29rYm9vawoKQSBjb21tdW5pdHkgY29sbGVjdGlvbiBvZiBydWxlc2V0cywgY29uZmlndXJhdGlvbiwgY3VzdG9tIHBsdWdpbnMgYW5kIG90aGVyIGFkZGl0aW9ucyBmb3IgW1JlZG9jbHkgQ0xJXShodHRwczovL2dpdGh1Yi5jb20vUmVkb2NseS9yZWRvY2x5LWNsaSkuIFdlIGtub3cgb3VyIHVzZXJzIGhhdmUgc29tZSBncmVhdCB0aXBzLCBleGFtcGxlcywgYW5kIGNvZGUgdG8gc2hhcmUsIGFuZCB0aGlzIGlzIHRoZSBwbGFjZSB0byBkbyBqdXN0IHRoYXQuIFdlIHdvdWxkIGxvdmUgdG8gaGF2ZSB5b3VyIFtjb250cmlidXRpb25zXSgjY29udHJpYnV0aW5nKSBoZXJlIHRvbyEKCj4gWyFJTVBPUlRBTlRdCj4gUmVkb2NseSBhcmUgdGhlIHJlcG9zaXRvcnkgbWFpbnRhaW5lcnMsIGJ1dCB3ZSBjYW4ndCB0aG9yb3VnaGx5IHRlc3QgZXZlcnl0aGluZyBoZXJlLiBQbGVhc2UgYnJvd3NlLCBzaGFyZSwgYW5kIHVzZSB3aGF0IHlvdSBmaW5kIGF0IHlvdXIgb3duIHJpc2suCgpJZiB5b3UncmUgbmV3IHRvIFJlZG9jbHkgQ0xJLCBzdGFydCB3aXRoIHRoZSBbZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9yZWRvY2x5LmNvbS9kb2NzL2NsaS8pIHRvIGdldCB1cCBhbmQgcnVubmluZywgdGhlbiBjb21lIGJhY2sgaGVyZSB0byBwaWNrIG91dCBhbnkgZWxlbWVudHMgeW91IHdvdWxkIGxpa2UgdG8gcmUtdXNlIHlvdXJzZWxmLiBUbyBrZWVwIHVwIHdpdGggbmV3IGRldmVsb3BtZW50cywgZWl0aGVyIHN1YnNjcmliZSB0byB0aGUgcHJvamVjdCByZXBvc2l0b3J5LCBvciBbc2lnbiB1cCBmb3IgdGhlIFJlZG9jbHkgcHJvZHVjdCBuZXdzbGV0dGVyXShodHRwczovL3JlZG9jbHkuY29tL3Byb2R1Y3QtdXBkYXRlcy8pLgoKIyMgVXNhZ2UKClVzZSB0aGUgY29udGVudCBoZXJlIGFzIGEgc3RhcnRpbmcgcG9pbnQgZm9yIHlvdXIgb3duIHdvcmsuCgoxLiBUYWtlIGEgbG9vayBhdCB3aGF0J3MgYXZhaWxhYmxlIGluIGVhY2ggY2F0ZWdvcnksIGFuZCBwaWNrIGFueSB0aGF0IHlvdSB0aGluayBhcHBseSB0byB5b3VyIHNpdHVhdGlvbi4KCjIuIEVhY2ggc2VjdGlvbiBsaW5rcyB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhhdCBmZWF0dXJlLCBpbmNhc2UgeW91IG5lZWQgYW4gaW50cm9kdWN0aW9uIG9yIHJlZnJlc2hlci4KCjMuIENvcHkgYW5kIHBhc3RlIHRoZSBleGFtcGxlcyB5b3Ugd2FudCB0byB1c2UgaW50byB5b3VyIG93biBzZXR1cCwgdGhlbiBlZGl0IHRoZW0gdG8gZml0IHlvdXIgb3duIG5lZWRzLgoKSWYgeW91IGNvbWUgdXAgd2l0aCBzb21ldGhpbmcgbmV3LCBwbGVhc2UgY29uc2lkZXIgc2hhcmluZyBpdCBoZXJlIGJ5IG9wZW5pbmcgYSBwdWxsIHJlcXVlc3QuCgojIyBDYXRlZ29yaWVzCgojIyMgUnVsZXNldHMKCkNvbWJpbmUgZXhpc3RpbmcgW2J1aWx0LWluIHJ1bGVzXShodHRwczovL3JlZG9jbHkuY29tL2RvY3MvY2xpL3J1bGVzL2J1aWx0LWluLXJ1bGVzLykgaW4gd2F5cyB0aGF0IHNlcnZlIGEgc3BlY2lmaWMgcHVycG9zZSwgYW5kIG1ha2UgYSBbcmVzdWFibGUgcnVsZXNldF0oaHR0cHM6Ly9yZWRvY2x5LmNvbS9kb2NzL2NsaS9ndWlkZXMvY29uZmlndXJlLXJ1bGVzLyNjcmVhdGUtYS1yZXVzYWJsZS1ydWxlc2V0KS4KCi0gW1NwZWMtY29tcGxpYW50IHJ1bGVzZXRdKHJ1bGVzZXRzL3NwZWMtY29tcGxpYW50LykKCiMjIyBDb25maWd1cmFibGUgcnVsZXMKClRoZXJlIGFyZSBzb21lIGZhbnRhc3RpYyBleGFtcGxlcyBvZiBbY29uZmlndXJhYmxlIHJ1bGVzXShodHRwczovL3JlZG9jbHkuY29tL2RvY3MvY2xpL3J1bGVzL2NvbmZpZ3VyYWJsZS1ydWxlcy8pIGluIHRoZSB3aWxkLCB3ZSBob3BlIHRoZSBsaXN0IGhlcmUgaW5zcGlyZXMgeW91IHRvIHNoYXJlIG1vcmUgb2YgeW91ciBvd24hCgotIFtCYW4gY2VydGFpbiB3b3JkcyBmcm9tIGRlc2NyaXB0aW9uc10oY29uZmlndXJhYmxlLXJ1bGVzL2Rlc2NyaXB0aW9uLWJhbm5lZC13b3Jkcy8pCi0gW1JlcXVpcmUgYGl0ZW1zYCBmaWVsZCBmb3Igc2NoZW1hcyBvZiB0eXBlIGBhcnJheWBdKGNvbmZpZ3VyYWJsZS1ydWxlcy9yZXF1aXJlZC1pdGVtcy1mb3ItYXJyYXktc2NoZW1hcy8pCi0gW0Vuc3VyZSBzZW50ZW5jZSBjYXNlIGluIG9wZXJhdGlvbiBzdW1tYXJpZXNdKGNvbmZpZ3VyYWJsZS1ydWxlcy9vcGVyYXRpb24tc3VtbWFyeS1zZW50ZW5jZS1jYXNlKQotIFtgUE9TVGAgU0hPVUxEIGRlZmluZSBgcmVxdWVzdEJvZHlgIHNjaGVtYV0oY29uZmlndXJhYmxlLXJ1bGVzL29wZXJhdGlvbi1wb3N0LXNob3VsZC1kZWZpbmUtcmVxdWVzdC1ib2R5LykKLSBbYEdFVGAgU0hPVUxEIE5PVCBkZWZpbmUgYHJlcXVlc3RCb2R5YCBzY2hlbWFdKGNvbmZpZ3VyYWJsZS1ydWxlcy9vcGVyYXRpb24tZ2V0LXNob3VsZC1ub3QtZGVmaW5lLXJlcXVlc3RCb2R5LykKLSBbYERFTEVURWAgU0hPVUxEIE5PVCBkZWZpbmUgYHJlcXVlc3RCb2R5YCBzY2hlbWFdKGNvbmZpZ3VyYWJsZS1ydWxlcy9vcGVyYXRpb24tZGVsZXRlLXNob3VsZC1ub3QtZGVmaW5lLXJlcXVlc3RCb2R5LykKLSBbSW5mbyBzZWN0aW9uIG11c3QgaGF2ZSBhIGRlc2NyaXB0aW9uXShjb25maWd1cmFibGUtcnVsZXMvaW5mby1kZXNjcmlwdGlvbikKCiMjIyBDdXN0b20gcGx1Z2lucwoKVGhlIFtjdXN0b20gcGx1Z2luXShodHRwczovL3JlZG9jbHkuY29tL2RvY3MvY2xpL2N1c3RvbS1wbHVnaW5zLykgaXMgdGhlIHVsdGltYXRlIGluIGV4dGVuc2liaWxpdHksIGJ1dCBpdCdzIGFuIGFkdmFuY2VkIGZlYXR1cmUuIFRyeSB0aGVzZSBwbHVnaW5zIGZvciBpbnNwaXJhdGlvbiBhbmQgdG8gZ2V0IHlvdSBzdGFydGVkLiBSYXRoZXIgdGhhbiBpbmNsdWRpbmcgdGhlIHdob2xlIHBsdWdpbiwgdGhlcmUgYXJlIGFsc28gc2VjdGlvbnMgZm9yIGluZGl2aWR1YWwgcnVsZXMgYW5kIGRlY29yYXRvcnMgZnVydGhlciBkb3duLgoKIyMjIyBEZWNvcmF0b3JzIChmb3IgY3VzdG9tIHBsdWdpbnMpCgotIFtUYWcgc29ydGluZ10oLi9jdXN0b20tcGx1Z2luLWRlY29yYXRvcnMvdGFnLXNvcnRpbmcpIC0gcHV0IHlvdXIgdGFncyBsaXN0IGluIGFscGhhYmV0aWNhbCBvcmRlci4KCi0gW1N1YnN0aXR1dGUgZGF0ZXRpbWUgcGxhY2Vob2xkZXJzIGluIGFuIEFQSSBkZXNjcmlwdGlvbl0oLi9jdXN0b20tcGx1Z2luLWRlY29yYXRvcnMvdXBkYXRlLWV4YW1wbGUtZGF0ZXMpIC0gdXBkYXRlIGRhdGVzIGluIGV4YW1wbGVzIHRvIHRoZSBjdXJyZW50IGRhdGUuCgotIFtPcGVuQUkgaXNDb25zZXF1ZW50aWFsXSguL2N1c3RvbS1wbHVnaW4tZGVjb3JhdG9ycy9vcGVuYWktaXMtY29uc2VxdWVudGlhbCkgLSBhZGQgYHgtb3BlbmFpLWlzQ29uc2VxdWVudGlhbDogdHJ1ZWAgc3BlY2lmaWNhdGlvbiBleHRlbnNpb24gdG8gR0VUIG9wZXJhdGlvbnMuCgojIyMjIFJ1bGVzIChmb3IgY3VzdG9tIHBsdWdpbnMpCgotIFtWYWxpZGF0ZSBNYXJrZG93bl0oLi9jdXN0b20tcGx1Z2luLXJ1bGVzL21hcmtkb3duLXZhbGlkYXRvcikgLSBjaGVjayBNYXJrZG93biBpbiBkZXNjcmlwdGlvbiBmaWVsZHMgaXMgdmFsaWQuCgojIyMgTWlzY2VsbGFuZW91cyAoaW5jbHVkaW5nIHRpcHMgYW5kIHRyaWNrcykKClNoYXJlIGFueXRoaW5nIHRoYXQgZGlkbid0IGZpdCB0aGUgZXhpc3RpbmcgY2F0ZWdvcmllcyBoZXJlLgoKIyMgQ29udHJpYnV0aW5nCgpQbGVhc2Ugc2hhcmUgeW91ciBiZXN0IFJlZG9jbHkgQ0xJIHVzYWdlIHdpdGggdXMhIEVhY2ggaXRlbSBzaG91bGQgYmUgc2hhcmVkIGluIGl0cyBvd24gcHVsbCByZXF1ZXN0LCBmb2xsb3dpbmcgdGhlIGV4aXN0aW5nIGRpcmVjdG9yeSBzdHJ1Y3R1cmUgYW5kIGluY2x1ZGluZyB0aGUgW1JFQURNRSB0ZW1wbGF0ZV0ocmVhZG1lLXRlbXBsYXRlLm1kKSBjb3BpZWQgaW50byBlYWNoIGZvbGRlci4gRnVsbCBpbnN0cnVjdGlvbnMgYXJlIGluIHRoZSBbQ09OVFJJQlVUSU5HIGZpbGVdKENPTlRSSUJVVElORy5tZCkuCgojIyBSZXF1ZXN0cwoKSWYgdGhlcmUncyBzb21ldGhpbmcgeW91IHRoaW5rIHNob3VsZCBiZSBpbiB0aGUgY29sbGVjdGlvbiBhbmQgaXQgaXNuJ3QsIGxldCB1cyBrbm93ISBPcGVuIGFuIGlzc3VlLCBhbmQgZGVzY3JpYmUgdGhlIHByb2JsZW0geW91J2QgbGlrZSB0byBzZWUgc29sdmVkIHdpdGggUmVkb2NseSBDTEkuIFdlIGNhbid0IG1ha2UgcHJvbWlzZXMsIGJ1dCB3ZSBhcmUgcHJldHR5IHN1cmUgc29tZW9uZSBvdXQgdGhlcmUgd2lsbCBrbm93IHRoZSBhbnN3ZXIuCg== - readmeEtag: '"dc0135dfe55a974a5c67dee69cbfdf54a41f0aee6e3caa6b4cbe9387486115e2"' - readmeLastModified: Mon, 04 Dec 2023 17:38:56 GMT + IyBSZWRvY2x5IENMSSBDb29rYm9vawoKQSBjb21tdW5pdHkgY29sbGVjdGlvbiBvZiBydWxlc2V0cywgY29uZmlndXJhdGlvbiwgY3VzdG9tIHBsdWdpbnMgYW5kIG90aGVyIGFkZGl0aW9ucyBmb3IgW1JlZG9jbHkgQ0xJXShodHRwczovL2dpdGh1Yi5jb20vUmVkb2NseS9yZWRvY2x5LWNsaSkuIFdlIGtub3cgb3VyIHVzZXJzIGhhdmUgc29tZSBncmVhdCB0aXBzLCBleGFtcGxlcywgYW5kIGNvZGUgdG8gc2hhcmUsIGFuZCB0aGlzIGlzIHRoZSBwbGFjZSB0byBkbyBqdXN0IHRoYXQuIFdlIHdvdWxkIGxvdmUgdG8gaGF2ZSB5b3VyIFtjb250cmlidXRpb25zXSgjY29udHJpYnV0aW5nKSBoZXJlIHRvbyEKCj4gWyFJTVBPUlRBTlRdCj4gUmVkb2NseSBhcmUgdGhlIHJlcG9zaXRvcnkgbWFpbnRhaW5lcnMsIGJ1dCB3ZSBjYW4ndCB0aG9yb3VnaGx5IHRlc3QgZXZlcnl0aGluZyBoZXJlLiBQbGVhc2UgYnJvd3NlLCBzaGFyZSwgYW5kIHVzZSB3aGF0IHlvdSBmaW5kIGF0IHlvdXIgb3duIHJpc2suCgpJZiB5b3UncmUgbmV3IHRvIFJlZG9jbHkgQ0xJLCBzdGFydCB3aXRoIHRoZSBbZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9yZWRvY2x5LmNvbS9kb2NzL2NsaS8pIHRvIGdldCB1cCBhbmQgcnVubmluZywgdGhlbiBjb21lIGJhY2sgaGVyZSB0byBwaWNrIG91dCBhbnkgZWxlbWVudHMgeW91IHdvdWxkIGxpa2UgdG8gcmUtdXNlIHlvdXJzZWxmLiBUbyBrZWVwIHVwIHdpdGggbmV3IGRldmVsb3BtZW50cywgZWl0aGVyIHN1YnNjcmliZSB0byB0aGUgcHJvamVjdCByZXBvc2l0b3J5LCBvciBbc2lnbiB1cCBmb3IgdGhlIFJlZG9jbHkgcHJvZHVjdCBuZXdzbGV0dGVyXShodHRwczovL3JlZG9jbHkuY29tL3Byb2R1Y3QtdXBkYXRlcy8pLgoKIyMgVXNhZ2UKClVzZSB0aGUgY29udGVudCBoZXJlIGFzIGEgc3RhcnRpbmcgcG9pbnQgZm9yIHlvdXIgb3duIHdvcmsuCgoxLiBUYWtlIGEgbG9vayBhdCB3aGF0J3MgYXZhaWxhYmxlIGluIGVhY2ggY2F0ZWdvcnksIGFuZCBwaWNrIGFueSB0aGF0IHlvdSB0aGluayBhcHBseSB0byB5b3VyIHNpdHVhdGlvbi4KCjIuIEVhY2ggc2VjdGlvbiBsaW5rcyB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhhdCBmZWF0dXJlLCBpbmNhc2UgeW91IG5lZWQgYW4gaW50cm9kdWN0aW9uIG9yIHJlZnJlc2hlci4KCjMuIENvcHkgYW5kIHBhc3RlIHRoZSBleGFtcGxlcyB5b3Ugd2FudCB0byB1c2UgaW50byB5b3VyIG93biBzZXR1cCwgdGhlbiBlZGl0IHRoZW0gdG8gZml0IHlvdXIgb3duIG5lZWRzLgoKSWYgeW91IGNvbWUgdXAgd2l0aCBzb21ldGhpbmcgbmV3LCBwbGVhc2UgY29uc2lkZXIgc2hhcmluZyBpdCBoZXJlIGJ5IG9wZW5pbmcgYSBwdWxsIHJlcXVlc3QuCgojIyBDYXRlZ29yaWVzCgojIyMgUnVsZXNldHMKCkNvbWJpbmUgZXhpc3RpbmcgW2J1aWx0LWluIHJ1bGVzXShodHRwczovL3JlZG9jbHkuY29tL2RvY3MvY2xpL3J1bGVzL2J1aWx0LWluLXJ1bGVzLykgaW4gd2F5cyB0aGF0IHNlcnZlIGEgc3BlY2lmaWMgcHVycG9zZSwgYW5kIG1ha2UgYSBbcmVzdWFibGUgcnVsZXNldF0oaHR0cHM6Ly9yZWRvY2x5LmNvbS9kb2NzL2NsaS9ndWlkZXMvY29uZmlndXJlLXJ1bGVzLyNjcmVhdGUtYS1yZXVzYWJsZS1ydWxlc2V0KS4KCi0gW1NwZWMtY29tcGxpYW50IHJ1bGVzZXRdKHJ1bGVzZXRzL3NwZWMtY29tcGxpYW50LykKCiMjIyBDb25maWd1cmFibGUgcnVsZXMKClRoZXJlIGFyZSBzb21lIGZhbnRhc3RpYyBleGFtcGxlcyBvZiBbY29uZmlndXJhYmxlIHJ1bGVzXShodHRwczovL3JlZG9jbHkuY29tL2RvY3MvY2xpL3J1bGVzL2NvbmZpZ3VyYWJsZS1ydWxlcy8pIGluIHRoZSB3aWxkLCB3ZSBob3BlIHRoZSBsaXN0IGhlcmUgaW5zcGlyZXMgeW91IHRvIHNoYXJlIG1vcmUgb2YgeW91ciBvd24hCgotIFtCYW4gY2VydGFpbiB3b3JkcyBmcm9tIGRlc2NyaXB0aW9uc10oY29uZmlndXJhYmxlLXJ1bGVzL2Rlc2NyaXB0aW9uLWJhbm5lZC13b3Jkcy8pCi0gW1JlcXVpcmUgYGl0ZW1zYCBmaWVsZCBmb3Igc2NoZW1hcyBvZiB0eXBlIGBhcnJheWBdKGNvbmZpZ3VyYWJsZS1ydWxlcy9yZXF1aXJlZC1pdGVtcy1mb3ItYXJyYXktc2NoZW1hcy8pCi0gW0Vuc3VyZSBzZW50ZW5jZSBjYXNlIGluIG9wZXJhdGlvbiBzdW1tYXJpZXNdKGNvbmZpZ3VyYWJsZS1ydWxlcy9vcGVyYXRpb24tc3VtbWFyeS1zZW50ZW5jZS1jYXNlKQotIFtgUE9TVGAgU0hPVUxEIGRlZmluZSBgcmVxdWVzdEJvZHlgIHNjaGVtYV0oY29uZmlndXJhYmxlLXJ1bGVzL29wZXJhdGlvbi1wb3N0LXNob3VsZC1kZWZpbmUtcmVxdWVzdC1ib2R5LykKLSBbYEdFVGAgU0hPVUxEIE5PVCBkZWZpbmUgYHJlcXVlc3RCb2R5YCBzY2hlbWFdKGNvbmZpZ3VyYWJsZS1ydWxlcy9vcGVyYXRpb24tZ2V0LXNob3VsZC1ub3QtZGVmaW5lLXJlcXVlc3RCb2R5LykKLSBbYERFTEVURWAgU0hPVUxEIE5PVCBkZWZpbmUgYHJlcXVlc3RCb2R5YCBzY2hlbWFdKGNvbmZpZ3VyYWJsZS1ydWxlcy9vcGVyYXRpb24tZGVsZXRlLXNob3VsZC1ub3QtZGVmaW5lLXJlcXVlc3RCb2R5LykKLSBbSW5mbyBzZWN0aW9uIG11c3QgaGF2ZSBhIGRlc2NyaXB0aW9uXShjb25maWd1cmFibGUtcnVsZXMvaW5mby1kZXNjcmlwdGlvbikKLSBbTm8gYDxzY3JpcHQ+YCB0YWdzIGluIGRlc2NyaXB0aW9uc10oY29uZmlndXJhYmxlLXJ1bGVzL25vLXNjcmlwdCkKCiMjIyBDdXN0b20gcGx1Z2lucwoKVGhlIFtjdXN0b20gcGx1Z2luXShodHRwczovL3JlZG9jbHkuY29tL2RvY3MvY2xpL2N1c3RvbS1wbHVnaW5zLykgaXMgdGhlIHVsdGltYXRlIGluIGV4dGVuc2liaWxpdHksIGJ1dCBpdCdzIGFuIGFkdmFuY2VkIGZlYXR1cmUuIFRyeSB0aGVzZSBwbHVnaW5zIGZvciBpbnNwaXJhdGlvbiBhbmQgdG8gZ2V0IHlvdSBzdGFydGVkLiBSYXRoZXIgdGhhbiBpbmNsdWRpbmcgdGhlIHdob2xlIHBsdWdpbiwgdGhlcmUgYXJlIGFsc28gc2VjdGlvbnMgZm9yIGluZGl2aWR1YWwgcnVsZXMgYW5kIGRlY29yYXRvcnMgZnVydGhlciBkb3duLgoKIyMjIyBEZWNvcmF0b3JzIChmb3IgY3VzdG9tIHBsdWdpbnMpCgotIFtUYWcgc29ydGluZ10oLi9jdXN0b20tcGx1Z2luLWRlY29yYXRvcnMvdGFnLXNvcnRpbmcpIC0gcHV0IHlvdXIgdGFncyBsaXN0IGluIGFscGhhYmV0aWNhbCBvcmRlci4KCi0gW1N1YnN0aXR1dGUgZGF0ZXRpbWUgcGxhY2Vob2xkZXJzIGluIGFuIEFQSSBkZXNjcmlwdGlvbl0oLi9jdXN0b20tcGx1Z2luLWRlY29yYXRvcnMvdXBkYXRlLWV4YW1wbGUtZGF0ZXMpIC0gdXBkYXRlIGRhdGVzIGluIGV4YW1wbGVzIHRvIHRoZSBjdXJyZW50IGRhdGUuCgotIFtPcGVuQUkgaXNDb25zZXF1ZW50aWFsXSguL2N1c3RvbS1wbHVnaW4tZGVjb3JhdG9ycy9vcGVuYWktaXMtY29uc2VxdWVudGlhbCkgLSBhZGQgYHgtb3BlbmFpLWlzQ29uc2VxdWVudGlhbDogdHJ1ZWAgc3BlY2lmaWNhdGlvbiBleHRlbnNpb24gdG8gR0VUIG9wZXJhdGlvbnMuCgojIyMjIFJ1bGVzIChmb3IgY3VzdG9tIHBsdWdpbnMpCgotIFtWYWxpZGF0ZSBNYXJrZG93bl0oLi9jdXN0b20tcGx1Z2luLXJ1bGVzL21hcmtkb3duLXZhbGlkYXRvcikgLSBjaGVjayBNYXJrZG93biBpbiBkZXNjcmlwdGlvbiBmaWVsZHMgaXMgdmFsaWQuCgojIyMgTWlzY2VsbGFuZW91cyAoaW5jbHVkaW5nIHRpcHMgYW5kIHRyaWNrcykKClNoYXJlIGFueXRoaW5nIHRoYXQgZGlkbid0IGZpdCB0aGUgZXhpc3RpbmcgY2F0ZWdvcmllcyBoZXJlLgoKIyMgQ29udHJpYnV0aW5nCgpQbGVhc2Ugc2hhcmUgeW91ciBiZXN0IFJlZG9jbHkgQ0xJIHVzYWdlIHdpdGggdXMhIEVhY2ggaXRlbSBzaG91bGQgYmUgc2hhcmVkIGluIGl0cyBvd24gcHVsbCByZXF1ZXN0LCBmb2xsb3dpbmcgdGhlIGV4aXN0aW5nIGRpcmVjdG9yeSBzdHJ1Y3R1cmUgYW5kIGluY2x1ZGluZyB0aGUgW1JFQURNRSB0ZW1wbGF0ZV0ocmVhZG1lLXRlbXBsYXRlLm1kKSBjb3BpZWQgaW50byBlYWNoIGZvbGRlci4gRnVsbCBpbnN0cnVjdGlvbnMgYXJlIGluIHRoZSBbQ09OVFJJQlVUSU5HIGZpbGVdKENPTlRSSUJVVElORy5tZCkuCgojIyBSZXF1ZXN0cwoKSWYgdGhlcmUncyBzb21ldGhpbmcgeW91IHRoaW5rIHNob3VsZCBiZSBpbiB0aGUgY29sbGVjdGlvbiBhbmQgaXQgaXNuJ3QsIGxldCB1cyBrbm93ISBPcGVuIGFuIGlzc3VlLCBhbmQgZGVzY3JpYmUgdGhlIHByb2JsZW0geW91J2QgbGlrZSB0byBzZWUgc29sdmVkIHdpdGggUmVkb2NseSBDTEkuIFdlIGNhbid0IG1ha2UgcHJvbWlzZXMsIGJ1dCB3ZSBhcmUgcHJldHR5IHN1cmUgc29tZW9uZSBvdXQgdGhlcmUgd2lsbCBrbm93IHRoZSBhbnN3ZXIuCg== + readmeEtag: '"276492c1a056f9bc64d1cb491c5f59c755eb36321b4e2da74608249654242800"' + readmeLastModified: Fri, 15 Dec 2023 17:49:05 GMT repositoryId: 697834648 description: >- A community-created collection of configuration, plugins and techniques @@ -14437,7 +14437,7 @@ owner: Redocly logo: https://avatars.githubusercontent.com/u/32099856?v=4 license: MIT - repoEtag: '"e9325058d0644bb2979f92e38f60cdf15f1b893de67099d753d0b86a307dc4e1"' + repoEtag: '"56c373bffdb3e434170dc514c2f609b27bfc80472a579484acec9057d5cb5c95"' repoLastModified: Sun, 10 Dec 2023 21:14:56 GMT category: Server Implementations foundInMaster: true @@ -14859,7 +14859,7 @@ owner: commonism logo: https://avatars.githubusercontent.com/u/164513?v=4 license: BSD-3-Clause - repoEtag: '"0bdc11f5bd2e6ca990c865ccbda7867bee2ec0e9a8291bb076632a9189717196"' + repoEtag: '"8152feb5f4831aa364a19bf21a8296fac5a5e89400600a4e229a5197a8495acc"' repoLastModified: Sat, 25 Nov 2023 21:23:41 GMT foundInMaster: true id: f7fe65d08545a563279e1526fe797380 @@ -15427,17 +15427,17 @@ repositoryId: 714590129 description: Generate .http files from OpenAPI (Swagger) specifications created: '2023-11-05T10:19:39Z' - updated: '2023-12-12T08:30:57Z' + updated: '2023-12-14T07:27:47Z' language: C# archived: false - stars: 10 + stars: 11 watchers: 2 - forks: 0 + forks: 1 owner: christianhelle logo: https://avatars.githubusercontent.com/u/710400?v=4 license: MIT - repoEtag: '"75a98e12a282e98eec68a2ad92cd2eea6554b21f9a7dc96ebd355072b353c3c8"' - repoLastModified: Tue, 12 Dec 2023 08:30:57 GMT + repoEtag: '"11c47e3a46d5707a79acfb5ea9708c532bb2fa6bde2f882b2e6366f040bb84c1"' + repoLastModified: Thu, 14 Dec 2023 07:27:47 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -15750,7 +15750,7 @@ owner: danicc097 logo: https://avatars.githubusercontent.com/u/71724149?v=4 license: Apache-2.0 - repoEtag: '"9d59ac60bdf1c0189e64c4ef649595cd3eaaf969220a3fb3758e8357a5f3c599"' + repoEtag: '"d43bc8cd6431056793078e260d8ccf430a08e226a984c1886dca361507258e0b"' repoLastModified: Sat, 11 Nov 2023 00:21:23 GMT category: Parsers foundInMaster: true @@ -15826,7 +15826,7 @@ owner: mchangrh logo: https://avatars.githubusercontent.com/u/15132783?v=4 license: GPL-3.0 - repoEtag: '"5bd803e906c4f8fab852feb8fd73ceef7b3c27bebb10c50d26826d3b854d08c0"' + repoEtag: '"cfb49d144eb5e6e6fbd57ba6750e00624a81725ad70764e5a6e8ed85fe669cdf"' repoLastModified: Sat, 28 Oct 2023 05:14:45 GMT foundInMaster: true category: Documentation @@ -15903,7 +15903,7 @@ owner: welthee logo: https://avatars.githubusercontent.com/u/78427472?v=4 license: MIT - repoEtag: '"6589b8d2007798dc7da740958839cbf80ce56bcf7fd595911e31c706075b87f7"' + repoEtag: '"c67e1282826a8bb489f9a3de0ebc4045935952ed8441d19c81ef2e661a6987d2"' repoLastModified: Fri, 14 Jul 2023 18:34:39 GMT foundInMaster: true category: @@ -16449,16 +16449,16 @@ Spring Boot 3.1 & Spring Security 6 : Token Based Authentication example with JWT, Authorization, Spring Data & PostgreSQL created: '2023-06-27T10:15:47Z' - updated: '2023-11-28T08:00:25Z' + updated: '2023-12-15T22:25:36Z' language: Java archived: false - stars: 6 + stars: 8 watchers: 3 forks: 1 owner: MossaabFrifita logo: https://avatars.githubusercontent.com/u/34568592?v=4 - repoEtag: '"4ea6f190d2dac87fc1148b075fe6cabaf40d308bd0e39eddf1a70af65979bb39"' - repoLastModified: Tue, 28 Nov 2023 08:00:25 GMT + repoEtag: '"560a86236ea90a6795944696fc3f4c75e4afefb4f2fa313ab8c694e753f5eb72"' + repoLastModified: Fri, 15 Dec 2023 22:25:36 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -16494,9 +16494,9 @@ id: 9f3eecc809978e3f45543f2ae1e80852 repositoryMetadata: base64Readme: >- - IyBzdGFja3FsLXJlZ2lzdHJ5LWRvY3MKClRoaXMgcmVwb3NpdG9yeSBjb250YWlucyBkb2N1bWVudGF0aW9uIGZvciBTdGFja1FMIHByb3ZpZGVycywgd2hpY2ggaXMgcHVibGlzaGVkIHRvIFtyZWdpc3RyeS5zdGFja3FsLmlvXShodHRwczovL3JlZ2lzdHJ5LnN0YWNrcWwuaW8pLiAgVGhpcyB3ZWJzaXRlIGlzIGJ1aWx0IHVzaW5nIFtEb2N1c2F1cnVzIDJdKGh0dHBzOi8vZG9jdXNhdXJ1cy5pby8pLCBhIG1vZGVybiBzdGF0aWMgd2Vic2l0ZSBnZW5lcmF0b3IuICAKCiMjIEJ1aWxkIGFuZCBEZXBsb3kgU3RhdHVzCgp8IFR5cGUgfCBTdGF0dXMgfCBMaW5rIHwKfCAtLS0gfCAtLS0gfCAtLSB8CnwgR2l0SHViIEFjdGlvbnMgQnVpbGQgfCBbIVtHaXRIdWIgQWN0aW9uc10oaHR0cHM6Ly9naXRodWIuY29tL3N0YWNrcWwvc3RhY2txbC1yZWdpc3RyeS1kb2NzL2FjdGlvbnMvd29ya2Zsb3dzL2J1aWxkLWRvY3MueWFtbC9iYWRnZS5zdmc/YnJhbmNoPW1haW4pXShodHRwczovL2dpdGh1Yi5jb20vc3RhY2txbC9zdGFja3FsLXJlZ2lzdHJ5LWRvY3MvYWN0aW9ucy93b3JrZmxvd3MvYnVpbGQtZG9jcy55YW1sKSB8IFtzdGFja3FsLXJlZ2lzdHJ5LWRvY3MvYWN0aW9uc10oaHR0cHM6Ly9naXRodWIuY29tL3N0YWNrcWwvc3RhY2txbC1yZWdpc3RyeS1kb2NzL2FjdGlvbnMpIHwKfCBOZXRsaWZ5IERlcGxveSBCYXNlIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvNzVmODM4YTktNzllYS00MWRjLTk2ZjktYTQwZGZmNTBjZmNhL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLXJlZ2lzdHJ5LWRvY3MvZGVwbG95cykgfCBbcmVnaXN0cnkuc3RhY2txbC5pb10oaHR0cHM6Ly9yZWdpc3RyeS5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgQVdTIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvZWYxNjFjNGEtNjNlYS00YmNjLWE1Y2ItNWVhZWQzMGVkNTVmL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLWF3cy1kb2NzL2RlcGxveXMpIHwgW2F3cy1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vYXdzLWRvY3Muc3RhY2txbC5pbyk8YnIvPlthd3Muc3RhY2txbC5pb10oaHR0cHM6Ly9hd3Muc3RhY2txbC5pbykgfAp8IE5ldGxpZnkgRGVwbG95IEF6dXJlIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvNWUyY2NlMmQtM2M1MS00NGRmLWJiMTQtNGVlOWM2MjZjYTAyL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLWF6dXJlLWRvY3MvZGVwbG95cykgfCBbYXp1cmUtZG9jcy5zdGFja3FsLmlvXShodHRwczovL2F6dXJlLWRvY3Muc3RhY2txbC5pbyk8YnIvPlthenVyZS5zdGFja3FsLmlvXShodHRwczovL2F6dXJlLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBBenVyZSBFeHRyYXMgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy8yMThkZmM1MC1lMWVmLTQ3NDItYmQ5NS0xOTljNjdmNGVhOTUvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtYXp1cmUtZXh0cmFzLWRvY3MvZGVwbG95cykgfCBbYXp1cmUtZXh0cmFzLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9henVyZS1leHRyYXMtZG9jcy5zdGFja3FsLmlvKTxici8+W2F6dXJlLWV4dHJhcy5zdGFja3FsLmlvXShodHRwczovL2F6dXJlLWV4dHJhcy5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgRmlyZWJhc2UgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy82ZDhmZWM0Mi1mYmEyLTRkNjItYWZlZi0zMGE4MjE4NjMzMTQvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtZmlyZWJhc2UtZG9jcy9kZXBsb3lzKSB8IFtmaXJlYmFzZS1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vZmlyZWJhc2UtZG9jcy5zdGFja3FsLmlvKTxici8+W2ZpcmViYXNlLnN0YWNrcWwuaW9dKGh0dHBzOi8vZmlyZWJhc2Uuc3RhY2txbC5pbykgfCAgCnwgTmV0bGlmeSBEZXBsb3kgR2l0SHViIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvNjI1ZDdkMzgtMzdhOS00MjI0LWE5YzgtNmVlNTgxNDFiMTA5L2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLWdpdGh1Yi1kb2NzL2RlcGxveXMpIHwgW2dpdGh1Yi1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vZ2l0aHViLWRvY3Muc3RhY2txbC5pbyk8YnIvPltnaXRodWIuc3RhY2txbC5pb10oaHR0cHM6Ly9naXRodWIuc3RhY2txbC5pbykgfAp8IE5ldGxpZnkgRGVwbG95IEdvb2dsZSB8IFshW05ldGxpZnkgU3RhdHVzXShodHRwczovL2FwaS5uZXRsaWZ5LmNvbS9hcGkvdjEvYmFkZ2VzLzAyOGUwZDMxLTYwNGItNDg1Mi04YjliLTc3YTcxZWFkNmI5My9kZXBsb3ktc3RhdHVzKV0oaHR0cHM6Ly9hcHAubmV0bGlmeS5jb20vc2l0ZXMvc3RhY2txbC1nb29nbGUtZG9jcy9kZXBsb3lzKSB8IFtnb29nbGUtZG9jcy5zdGFja3FsLmlvXShodHRwczovL2dvb2dsZS1kb2NzLnN0YWNrcWwuaW8pPGJyLz5bZ29vZ2xlLnN0YWNrcWwuaW9dKGh0dHBzOi8vZ29vZ2xlLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBLOFMgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy9kMTFlYTZjNS03YTQzLTQyZDUtYWM3Ni01NTUxMTIyOTViOWIvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtazhzLWRvY3MvZGVwbG95cykgfCBbazhzLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9rOHMtZG9jcy5zdGFja3FsLmlvKTxici8+W2s4cy5zdGFja3FsLmlvXShodHRwczovL2s4cy5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgTmV0bGlmeSB8IFshW05ldGxpZnkgU3RhdHVzXShodHRwczovL2FwaS5uZXRsaWZ5LmNvbS9hcGkvdjEvYmFkZ2VzLzdkODFlNTlmLWUxZGUtNDgwZi1hNmQ1LTVhNTJmODNkZWI0MC9kZXBsb3ktc3RhdHVzKV0oaHR0cHM6Ly9hcHAubmV0bGlmeS5jb20vc2l0ZXMvc3RhY2txbC1uZXRsaWZ5LWRvY3MvZGVwbG95cykgfCBbbmV0bGlmeS1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vbmV0bGlmeS1kb2NzLnN0YWNrcWwuaW8pPGJyLz5bbmV0bGlmeS5zdGFja3FsLmlvXShodHRwczovL25ldGxpZnkuc3RhY2txbC5pbykgfAp8IE5ldGxpZnkgRGVwbG95IE9rdGEgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy84M2QzNzg4ZC1iYmNmLTQwNjMtYTJlNy02NTU3N2UzZjEzZjUvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtb2t0YS1kb2NzL2RlcGxveXMpIHwgW29rdGEtZG9jcy5zdGFja3FsLmlvXShodHRwczovL29rdGEtZG9jcy5zdGFja3FsLmlvKTxici8+W29rdGEuc3RhY2txbC5pb10oaHR0cHM6Ly9va3RhLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBTdW1vbG9naWMgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy82Yzg2NDc3NC04NDk0LTQxYmUtOGUyYy00NDFiNmQxZTM2OGMvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtc3Vtb2xvZ2ljLWRvY3MvZGVwbG95cykgfCBbc3Vtb2xvZ2ljLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9zdW1vbG9naWMtZG9jcy5zdGFja3FsLmlvKTxici8+W3N1bW9sb2dpYy5zdGFja3FsLmlvXShodHRwczovL3N1bW9sb2dpYy5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgRGlnaXRhbCBPY2VhbiB8IFshW05ldGxpZnkgU3RhdHVzXShodHRwczovL2FwaS5uZXRsaWZ5LmNvbS9hcGkvdjEvYmFkZ2VzL2ViY2FiNGVmLWQ2MTAtNDg4OC1hNDJmLTMxNDk0MmQ2OGMzMi9kZXBsb3ktc3RhdHVzKV0oaHR0cHM6Ly9hcHAubmV0bGlmeS5jb20vc2l0ZXMvc3RhY2txbC1kaWdpdGFsb2NlYW4tZG9jcy9kZXBsb3lzKSB8IFtkaWdpdGFsb2NlYW4tZG9jcy5zdGFja3FsLmlvXShodHRwczovL2RpZ2l0YWxvY2Vhbi1kb2NzLnN0YWNrcWwuaW8pPGJyLz5bZGlnaXRhbG9jZWFuLnN0YWNrcWwuaW9dKGh0dHBzOi8vZGlnaXRhbG9jZWFuLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBMaW5vZGUgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy9kMGI1NzNiZS0zZGZiLTQ5NWMtYTBjZS00NzhlYzdhY2VjZDgvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtbGlub2RlLWRvY3MvZGVwbG95cykgfCBbbGlub2RlLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9saW5vZGUtZG9jcy5zdGFja3FsLmlvKTxici8+W2xpbm9kZS5zdGFja3FsLmlvXShodHRwczovL2xpbm9kZS5zdGFja3FsLmlvKSB8CgojIyBBZGRpbmcgRG9jcyBmb3IgYSBOZXcgUHJvdmlkZXIKCkFkZGluZyBkb2NzIGZvciBhIG5ldyBwcm92aWRlciByZXF1aXJlcyBjcmVhdGluZyBhIG5ldyB3ZWIgcHJvcGVydHkgKHN1YmRvbWFpbikgYW5kIHdpbGwgZm9yY2UgYW4gdXBkYXRlIHRvIHRoZSByb290L2Jhc2Ugc2l0ZSBhbmQgYWxsIG90aGVyIHByb3ZpZGVycy4gIFRoZSBzdGVwcyBhcmU6ICAKCi0gWyBdIHVwZGF0ZSBgc2NyaXB0cy9kb2NnZW4vcHJvdmlkZXJfZGF0YS5weWAgd2l0aCBtZXRhZGF0YSBmb3IgbmV3IHByb3ZpZGVyCi0gWyBdIGdlbmVyYXRlIGRvY3MgZm9yIHByb3ZpZGVyIHVzaW5nIGBzaCBzY3JpcHRzL2RvY2dlbi5zaCB7cHJvdmlkZXJ9YAotIFsgXSBwdWJsaXNoIGRvY3MgZm9yIHByb3ZpZGVyIHVzaW5nIGBzaCBzY3JpcHRzL3B1Ymxpc2guc2gge3Byb3ZpZGVyfWAKLSBbeF0gYWRkIHRoZSBuZXcgcHJvdmlkZXIgZG9jcyB0byBgZG9jcy97cHJvdmlkZXJ9LWRvY3NgIChmb2xsb3dpbmcgZGlyZWN0b3J5IHN0cnVjdHVyZSBvZiBleGlzdGluZyBwcm92aWRlcnMpIChkb25lIGF1dG9tYXRpY2FsbHkgYnkgYHNjcmlwdHMvcHVibGlzaC5zaGApCi0gW3hdIHVwZGF0ZSBmcm9udG1hdHRlciBpbiB0aGUgYGluZGV4Lm1kYCBhdCB0aGUgcm9vdCBvZiB0aGUgbmV3IHByb3ZpZGVycyBkb2NzLCBzZXQgYHNsdWdgIHRvIGAvcHJvdmlkZXJzL3twcm92aWRlcn1gIGFuZCBgaWRgIHRvIGB7cHJvdmlkZXJ9LWRvY2AgKGRvbmUgYXV0b21hdGljYWxseSBieSBgc2NyaXB0cy9kb2NnZW4uc2hgKQotIFt4XSB1cGRhdGUgYHN0YWNrcWwtcHJvdmlkZXItcmVnaXN0cnkubWR4YCBpbiB0aGUgcm9vdCBvZiB0aGUgbmV3IHByb3ZpZGVyIHRvIGFkZCB0aGUgYGN1cnJlbnRQcm92aWRlcmAgcHJvcCwgZS5nLiBgPFJlZ2lzdHJ5UGFnZSBjdXJyZW50UHJvdmlkZXI9Im9rdGEiIC8+YCAoZG9uZSBhdXRvbWF0aWNhbGx5IGJ5IGBzY3JpcHRzL2RvY2dlbi5zaGApCi0gWyBdIGNyZWF0ZSBhIG5ldyBuZXRsaWZ5IHNpdGUgKGBzdGFja3FsLXtwcm92aWRlcn0tZG9jc2ApIC0gdXNlIGB5YXJuIGJ1aWxkOntwcm92aWRlcn1gIGFzIHRoZSBgYnVpbGQgY29tbWFuZGAKLSBbIF0gc3RvcCBhdXRvbWF0aWMgYnVpbGRzIGZvciBzaXRlIGluIE5ldGxpZnkKLSBbIF0gYWRkIGBORVRMSUZZYCByZWNvcmQgaW4gTmV0bGlmeSBETlMgKG1hcHBpbmcgYHtwcm92aWRlcn0tZG9jcy5zdGFja3FsLmlvYCAoUHJpbWFyeSBEb21haW4pIGFuZCBge3Byb3ZpZGVyfS5zdGFja3FsLmlvYCAoRG9tYWluIEFsaWFzKSB0byBgc3RhY2txbC17cHJvdmlkZXJ9LWRvY3MubmV0bGlmeS5hcHBgKSwgc2VsZWN0IGBGb3JjZSBIVFRQU2AKLSBbIF0gYWRkIEdpdEh1YiBBY3Rpb25zIHNlY3JldCBmb3IgbmV0bGlmeSBzaXRlIGlkIC0gYE5FVExJRllfU0lURV9JRF97UFJPVklERVJ9YAotIFsgXSBhZGQgdGhlIE5ldGxpZnkgZGVwbG95IHN0YXR1cyBiYWRnZSB0byB0aGUgdGFibGUgaW4gdGhpcyBgUkVBRE1FYCAoc2VlIGFib3ZlKQotIFsgXSB1cGRhdGUgdGhlIGBwcm92aWRlcnNgIGFycmF5IGluIGBzaWRlYmFycy5qc2Agd2l0aCB0aGUgbmV3IHByb3ZpZGVyCi0gWyBdIHVwZGF0ZSB0aGUgYHByb3ZpZGVyc2AgYXJyYXkgYHNyYy9jb25maWdzL3Byb3ZpZGVycy50c2Agd2l0aCB0aGUgbmV3IHByb3ZpZGVyCi0gWyBdIHVwZGF0ZSBgcGFja2FnZS5qc29uYCB3aXRoIG5ldyBgc3RhcnRgIGFuZCBgYnVpbGRgIHNjcmlwdHMKLSBbIF0gdXBkYXRlIGBhbGxQcm92aWRlcnNgIGluIGBjaS1zY3JpcHRzL2dldC1wcm92aWRlcnMtdG8tZGVwbG95LmpzYCB3aXRoIHRoZSBuZXcgcHJvdmlkZXIKLSBbIF0gYWRkIHRoZSByb290IHNpdGUgcmVkaXJlY3RzIGZvciBwcm92aWRlciB2YW5pdHkgdXJscyB0byBgLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQtZG9jcy55YW1sYCB0byB0aGUgYGFkZCByZWRpcmVjdHMgdG8gcm9vdCBzaXRlYCBzdGVwIG9mIHRoZSBgZGVwbG95LXRvLW5ldGxpZnlgIGpvYgoKIyMgVXBkYXRpbmcgRXhpc3RpbmcgUHJvdmlkZXIgRG9jcwoKVG8gdXBkYXRlIHRoZSBkb2NzIGZvciBhbiBleGlzdGluZyBwcm92aWRlciwgZWRpdCB0aGUgY29ycmVzcG9uZGluZyBtYXJrZG93biBmaWxlIG9yIGZpbGVzIGluIHRoZSBge3Byb3ZpZGVyfS1kb2NzYCBkaXJlY3RvcnkuICBSYWlzZSBhIHB1bGwgcmVxdWVzdCBpbnRvIHRoZSBgbWFpbmAgYnJhbmNoLiAgT25jZSBtZXJnZWQsIHRoZSB1cGRhdGVkIGRvY3Mgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHB1Ymxpc2hlZC4gIAoKIyMjIFJ1bm5pbmcgTG9jYWxseQoKSW5zdGFsbCBwYWNrYWdlczogIAoKYGBgYmFzaAp5YXJuCmBgYAoKVG8gYnVpbGQgYSBtaWNyb3NpdGUgbG9jYWxseSwgdXNlIGB5YXJuIGJ1aWxkOntwcm92aWRlcn1gLiAgRm9yIGV4YW1wbGUsIHRvIGJ1aWxkIHRoZSBBV1MgbWljcm9zaXRlIGxvY2FsbHksIHJ1bjoKCmBgYApleHBvcnQgTk9ERV9PUFRJT05TPS0tbWF4X29sZF9zcGFjZV9zaXplPTQwOTYKeWFybiBydW4gYnVpbGQ6YXdzCmBgYAoKVG8gcnVuIGEgbWljcm9zaXRlIGxvY2FsbHksIHVzZSBgeWFybiBzdGFydDp7cHJvdmlkZXJ9YC4gIEZvciBleGFtcGxlLCB0byBydW4gdGhlIEFXUyBtaWNyb3NpdGUgbG9jYWxseSwgcnVuOiAgCgpgYGBiYXNoCnlhcm4gc3RhcnQ6YXdzCmBgYA== - readmeEtag: '"4005ef5708a0782d7b45cafb7f678952f57567b651f9ae18d50daf9b31a82d02"' - readmeLastModified: Fri, 10 Nov 2023 09:52:24 GMT + IyBzdGFja3FsLXJlZ2lzdHJ5LWRvY3MKClRoaXMgcmVwb3NpdG9yeSBjb250YWlucyBkb2N1bWVudGF0aW9uIGZvciBTdGFja1FMIHByb3ZpZGVycywgd2hpY2ggaXMgcHVibGlzaGVkIHRvIFtyZWdpc3RyeS5zdGFja3FsLmlvXShodHRwczovL3JlZ2lzdHJ5LnN0YWNrcWwuaW8pLiAgVGhpcyB3ZWJzaXRlIGlzIGJ1aWx0IHVzaW5nIFtEb2N1c2F1cnVzIDJdKGh0dHBzOi8vZG9jdXNhdXJ1cy5pby8pLCBhIG1vZGVybiBzdGF0aWMgd2Vic2l0ZSBnZW5lcmF0b3IuICAKCiMjIEJ1aWxkIGFuZCBEZXBsb3kgU3RhdHVzCgp8IFR5cGUgfCBTdGF0dXMgfCBMaW5rIHwKfCAtLS0gfCAtLS0gfCAtLSB8CnwgR2l0SHViIEFjdGlvbnMgQnVpbGQgfCBbIVtHaXRIdWIgQWN0aW9uc10oaHR0cHM6Ly9naXRodWIuY29tL3N0YWNrcWwvc3RhY2txbC1yZWdpc3RyeS1kb2NzL2FjdGlvbnMvd29ya2Zsb3dzL2J1aWxkLWRvY3MueWFtbC9iYWRnZS5zdmc/YnJhbmNoPW1haW4pXShodHRwczovL2dpdGh1Yi5jb20vc3RhY2txbC9zdGFja3FsLXJlZ2lzdHJ5LWRvY3MvYWN0aW9ucy93b3JrZmxvd3MvYnVpbGQtZG9jcy55YW1sKSB8IFtzdGFja3FsLXJlZ2lzdHJ5LWRvY3MvYWN0aW9uc10oaHR0cHM6Ly9naXRodWIuY29tL3N0YWNrcWwvc3RhY2txbC1yZWdpc3RyeS1kb2NzL2FjdGlvbnMpIHwKfCBOZXRsaWZ5IERlcGxveSBCYXNlIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvNzVmODM4YTktNzllYS00MWRjLTk2ZjktYTQwZGZmNTBjZmNhL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLXJlZ2lzdHJ5LWRvY3MvZGVwbG95cykgfCBbcmVnaXN0cnkuc3RhY2txbC5pb10oaHR0cHM6Ly9yZWdpc3RyeS5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgQVdTIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvZWYxNjFjNGEtNjNlYS00YmNjLWE1Y2ItNWVhZWQzMGVkNTVmL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLWF3cy1kb2NzL2RlcGxveXMpIHwgW2F3cy1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vYXdzLWRvY3Muc3RhY2txbC5pbyk8YnIvPlthd3Muc3RhY2txbC5pb10oaHR0cHM6Ly9hd3Muc3RhY2txbC5pbykgfAp8IE5ldGxpZnkgRGVwbG95IEF6dXJlIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvNWUyY2NlMmQtM2M1MS00NGRmLWJiMTQtNGVlOWM2MjZjYTAyL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLWF6dXJlLWRvY3MvZGVwbG95cykgfCBbYXp1cmUtZG9jcy5zdGFja3FsLmlvXShodHRwczovL2F6dXJlLWRvY3Muc3RhY2txbC5pbyk8YnIvPlthenVyZS5zdGFja3FsLmlvXShodHRwczovL2F6dXJlLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBBenVyZSBFeHRyYXMgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy8yMThkZmM1MC1lMWVmLTQ3NDItYmQ5NS0xOTljNjdmNGVhOTUvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtYXp1cmUtZXh0cmFzLWRvY3MvZGVwbG95cykgfCBbYXp1cmUtZXh0cmFzLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9henVyZS1leHRyYXMtZG9jcy5zdGFja3FsLmlvKTxici8+W2F6dXJlLWV4dHJhcy5zdGFja3FsLmlvXShodHRwczovL2F6dXJlLWV4dHJhcy5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgRmlyZWJhc2UgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy82ZDhmZWM0Mi1mYmEyLTRkNjItYWZlZi0zMGE4MjE4NjMzMTQvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtZmlyZWJhc2UtZG9jcy9kZXBsb3lzKSB8IFtmaXJlYmFzZS1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vZmlyZWJhc2UtZG9jcy5zdGFja3FsLmlvKTxici8+W2ZpcmViYXNlLnN0YWNrcWwuaW9dKGh0dHBzOi8vZmlyZWJhc2Uuc3RhY2txbC5pbykgfCAgCnwgTmV0bGlmeSBEZXBsb3kgR2l0SHViIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvNjI1ZDdkMzgtMzdhOS00MjI0LWE5YzgtNmVlNTgxNDFiMTA5L2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLWdpdGh1Yi1kb2NzL2RlcGxveXMpIHwgW2dpdGh1Yi1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vZ2l0aHViLWRvY3Muc3RhY2txbC5pbyk8YnIvPltnaXRodWIuc3RhY2txbC5pb10oaHR0cHM6Ly9naXRodWIuc3RhY2txbC5pbykgfAp8IE5ldGxpZnkgRGVwbG95IEdvb2dsZSB8IFshW05ldGxpZnkgU3RhdHVzXShodHRwczovL2FwaS5uZXRsaWZ5LmNvbS9hcGkvdjEvYmFkZ2VzLzAyOGUwZDMxLTYwNGItNDg1Mi04YjliLTc3YTcxZWFkNmI5My9kZXBsb3ktc3RhdHVzKV0oaHR0cHM6Ly9hcHAubmV0bGlmeS5jb20vc2l0ZXMvc3RhY2txbC1nb29nbGUtZG9jcy9kZXBsb3lzKSB8IFtnb29nbGUtZG9jcy5zdGFja3FsLmlvXShodHRwczovL2dvb2dsZS1kb2NzLnN0YWNrcWwuaW8pPGJyLz5bZ29vZ2xlLnN0YWNrcWwuaW9dKGh0dHBzOi8vZ29vZ2xlLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBLOFMgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy9kMTFlYTZjNS03YTQzLTQyZDUtYWM3Ni01NTUxMTIyOTViOWIvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtazhzLWRvY3MvZGVwbG95cykgfCBbazhzLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9rOHMtZG9jcy5zdGFja3FsLmlvKTxici8+W2s4cy5zdGFja3FsLmlvXShodHRwczovL2s4cy5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgTmV0bGlmeSB8IFshW05ldGxpZnkgU3RhdHVzXShodHRwczovL2FwaS5uZXRsaWZ5LmNvbS9hcGkvdjEvYmFkZ2VzLzdkODFlNTlmLWUxZGUtNDgwZi1hNmQ1LTVhNTJmODNkZWI0MC9kZXBsb3ktc3RhdHVzKV0oaHR0cHM6Ly9hcHAubmV0bGlmeS5jb20vc2l0ZXMvc3RhY2txbC1uZXRsaWZ5LWRvY3MvZGVwbG95cykgfCBbbmV0bGlmeS1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vbmV0bGlmeS1kb2NzLnN0YWNrcWwuaW8pPGJyLz5bbmV0bGlmeS5zdGFja3FsLmlvXShodHRwczovL25ldGxpZnkuc3RhY2txbC5pbykgfAp8IE5ldGxpZnkgRGVwbG95IE9rdGEgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy84M2QzNzg4ZC1iYmNmLTQwNjMtYTJlNy02NTU3N2UzZjEzZjUvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtb2t0YS1kb2NzL2RlcGxveXMpIHwgW29rdGEtZG9jcy5zdGFja3FsLmlvXShodHRwczovL29rdGEtZG9jcy5zdGFja3FsLmlvKTxici8+W29rdGEuc3RhY2txbC5pb10oaHR0cHM6Ly9va3RhLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBTdW1vbG9naWMgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy82Yzg2NDc3NC04NDk0LTQxYmUtOGUyYy00NDFiNmQxZTM2OGMvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtc3Vtb2xvZ2ljLWRvY3MvZGVwbG95cykgfCBbc3Vtb2xvZ2ljLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9zdW1vbG9naWMtZG9jcy5zdGFja3FsLmlvKTxici8+W3N1bW9sb2dpYy5zdGFja3FsLmlvXShodHRwczovL3N1bW9sb2dpYy5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBEZXBsb3kgRGlnaXRhbCBPY2VhbiB8IFshW05ldGxpZnkgU3RhdHVzXShodHRwczovL2FwaS5uZXRsaWZ5LmNvbS9hcGkvdjEvYmFkZ2VzL2ViY2FiNGVmLWQ2MTAtNDg4OC1hNDJmLTMxNDk0MmQ2OGMzMi9kZXBsb3ktc3RhdHVzKV0oaHR0cHM6Ly9hcHAubmV0bGlmeS5jb20vc2l0ZXMvc3RhY2txbC1kaWdpdGFsb2NlYW4tZG9jcy9kZXBsb3lzKSB8IFtkaWdpdGFsb2NlYW4tZG9jcy5zdGFja3FsLmlvXShodHRwczovL2RpZ2l0YWxvY2Vhbi1kb2NzLnN0YWNrcWwuaW8pPGJyLz5bZGlnaXRhbG9jZWFuLnN0YWNrcWwuaW9dKGh0dHBzOi8vZGlnaXRhbG9jZWFuLnN0YWNrcWwuaW8pIHwKfCBOZXRsaWZ5IERlcGxveSBMaW5vZGUgfCBbIVtOZXRsaWZ5IFN0YXR1c10oaHR0cHM6Ly9hcGkubmV0bGlmeS5jb20vYXBpL3YxL2JhZGdlcy9kMGI1NzNiZS0zZGZiLTQ5NWMtYTBjZS00NzhlYzdhY2VjZDgvZGVwbG95LXN0YXR1cyldKGh0dHBzOi8vYXBwLm5ldGxpZnkuY29tL3NpdGVzL3N0YWNrcWwtbGlub2RlLWRvY3MvZGVwbG95cykgfCBbbGlub2RlLWRvY3Muc3RhY2txbC5pb10oaHR0cHM6Ly9saW5vZGUtZG9jcy5zdGFja3FsLmlvKTxici8+W2xpbm9kZS5zdGFja3FsLmlvXShodHRwczovL2xpbm9kZS5zdGFja3FsLmlvKSB8CnwgTmV0bGlmeSBWZXJjZWwgTGlub2RlIHwgWyFbTmV0bGlmeSBTdGF0dXNdKGh0dHBzOi8vYXBpLm5ldGxpZnkuY29tL2FwaS92MS9iYWRnZXMvOTFjYzMxYjctMGMyNS00NDNmLWJiMmYtNzE5MjFlZjcwODRlL2RlcGxveS1zdGF0dXMpXShodHRwczovL2FwcC5uZXRsaWZ5LmNvbS9zaXRlcy9zdGFja3FsLXZlcmNlbC1kb2NzL2RlcGxveXMpIHwgW3ZlcmNlbC1kb2NzLnN0YWNrcWwuaW9dKGh0dHBzOi8vdmVyY2VsLWRvY3Muc3RhY2txbC5pbyk8YnIvPlt2ZXJjZWwuc3RhY2txbC5pb10oaHR0cHM6Ly92ZXJjZWwuc3RhY2txbC5pbykgfAoKCiMjIEFkZGluZyBEb2NzIGZvciBhIE5ldyBQcm92aWRlcgoKQWRkaW5nIGRvY3MgZm9yIGEgbmV3IHByb3ZpZGVyIHJlcXVpcmVzIGNyZWF0aW5nIGEgbmV3IHdlYiBwcm9wZXJ0eSAoc3ViZG9tYWluKSBhbmQgd2lsbCBmb3JjZSBhbiB1cGRhdGUgdG8gdGhlIHJvb3QvYmFzZSBzaXRlIGFuZCBhbGwgb3RoZXIgcHJvdmlkZXJzLiAgVGhlIHN0ZXBzIGFyZTogIAoKLSBbIF0gdXBkYXRlIGBzY3JpcHRzL2RvY2dlbi9wcm92aWRlcl9kYXRhLnB5YCB3aXRoIG1ldGFkYXRhIGZvciBuZXcgcHJvdmlkZXIKLSBbIF0gZ2VuZXJhdGUgZG9jcyBmb3IgcHJvdmlkZXIgdXNpbmcgYGNkIHNjcmlwdHM7IHNoIGRvY2dlbi5zaCB7cHJvdmlkZXJ9YAotIFsgXSBwdWJsaXNoIGRvY3MgZm9yIHByb3ZpZGVyIHVzaW5nIGBjZCBzY3JpcHRzOyBzaCBwdWJsaXNoLnNoIHtwcm92aWRlcn1gCi0gW3hdIGFkZCB0aGUgbmV3IHByb3ZpZGVyIGRvY3MgdG8gYGRvY3Mve3Byb3ZpZGVyfS1kb2NzYCAoZm9sbG93aW5nIGRpcmVjdG9yeSBzdHJ1Y3R1cmUgb2YgZXhpc3RpbmcgcHJvdmlkZXJzKSAoZG9uZSBhdXRvbWF0aWNhbGx5IGJ5IGBzY3JpcHRzL3B1Ymxpc2guc2hgKQotIFt4XSB1cGRhdGUgZnJvbnRtYXR0ZXIgaW4gdGhlIGBpbmRleC5tZGAgYXQgdGhlIHJvb3Qgb2YgdGhlIG5ldyBwcm92aWRlcnMgZG9jcywgc2V0IGBzbHVnYCB0byBgL3Byb3ZpZGVycy97cHJvdmlkZXJ9YCBhbmQgYGlkYCB0byBge3Byb3ZpZGVyfS1kb2NgIChkb25lIGF1dG9tYXRpY2FsbHkgYnkgYHNjcmlwdHMvZG9jZ2VuLnNoYCkKLSBbeF0gdXBkYXRlIGBzdGFja3FsLXByb3ZpZGVyLXJlZ2lzdHJ5Lm1keGAgaW4gdGhlIHJvb3Qgb2YgdGhlIG5ldyBwcm92aWRlciB0byBhZGQgdGhlIGBjdXJyZW50UHJvdmlkZXJgIHByb3AsIGUuZy4gYDxSZWdpc3RyeVBhZ2UgY3VycmVudFByb3ZpZGVyPSJva3RhIiAvPmAgKGRvbmUgYXV0b21hdGljYWxseSBieSBgc2NyaXB0cy9kb2NnZW4uc2hgKQotIFsgXSBjcmVhdGUgYSBuZXcgbmV0bGlmeSBzaXRlIChgc3RhY2txbC17cHJvdmlkZXJ9LWRvY3NgKSAtIHVzZSBgeWFybiBidWlsZDp7cHJvdmlkZXJ9YCBhcyB0aGUgYGJ1aWxkIGNvbW1hbmRgCi0gWyBdIHN0b3AgYXV0b21hdGljIGJ1aWxkcyBmb3Igc2l0ZSBpbiBOZXRsaWZ5Ci0gWyBdIGFkZCBgTkVUTElGWWAgcmVjb3JkIGluIE5ldGxpZnkgRE5TIChtYXBwaW5nIGB7cHJvdmlkZXJ9LWRvY3Muc3RhY2txbC5pb2AgKFByaW1hcnkgRG9tYWluKSBhbmQgYHtwcm92aWRlcn0uc3RhY2txbC5pb2AgKERvbWFpbiBBbGlhcykgdG8gYHN0YWNrcWwte3Byb3ZpZGVyfS1kb2NzLm5ldGxpZnkuYXBwYCksIHNlbGVjdCBgRm9yY2UgSFRUUFNgCi0gWyBdIGFkZCBHaXRIdWIgQWN0aW9ucyBzZWNyZXQgZm9yIG5ldGxpZnkgc2l0ZSBpZCAtIGBORVRMSUZZX1NJVEVfSURfe1BST1ZJREVSfWAKLSBbIF0gYWRkIHRoZSBOZXRsaWZ5IGRlcGxveSBzdGF0dXMgYmFkZ2UgdG8gdGhlIHRhYmxlIGluIHRoaXMgYFJFQURNRWAgKHNlZSBhYm92ZSkKLSBbIF0gdXBkYXRlIHRoZSBgcHJvdmlkZXJzYCBhcnJheSBpbiBgc2lkZWJhcnMuanNgIHdpdGggdGhlIG5ldyBwcm92aWRlcgotIFsgXSB1cGRhdGUgdGhlIGBwcm92aWRlcnNgIGFycmF5IGBzcmMvY29uZmlncy9wcm92aWRlcnMudHNgIHdpdGggdGhlIG5ldyBwcm92aWRlcgotIFsgXSB1cGRhdGUgYHBhY2thZ2UuanNvbmAgd2l0aCBuZXcgYHN0YXJ0YCBhbmQgYGJ1aWxkYCBzY3JpcHRzCi0gWyBdIHVwZGF0ZSBgYWxsUHJvdmlkZXJzYCBpbiBgY2ktc2NyaXB0cy9nZXQtcHJvdmlkZXJzLXRvLWRlcGxveS5qc2Agd2l0aCB0aGUgbmV3IHByb3ZpZGVyCi0gWyBdIGFkZCB0aGUgcm9vdCBzaXRlIHJlZGlyZWN0cyBmb3IgcHJvdmlkZXIgdmFuaXR5IHVybHMgdG8gYC5naXRodWIvd29ya2Zsb3dzL2J1aWxkLWRvY3MueWFtbGAgdG8gdGhlIGBhZGQgcmVkaXJlY3RzIHRvIHJvb3Qgc2l0ZWAgc3RlcCBvZiB0aGUgYGRlcGxveS10by1uZXRsaWZ5YCBqb2IKCiMjIFVwZGF0aW5nIEV4aXN0aW5nIFByb3ZpZGVyIERvY3MKClRvIHVwZGF0ZSB0aGUgZG9jcyBmb3IgYW4gZXhpc3RpbmcgcHJvdmlkZXIsIGVkaXQgdGhlIGNvcnJlc3BvbmRpbmcgbWFya2Rvd24gZmlsZSBvciBmaWxlcyBpbiB0aGUgYHtwcm92aWRlcn0tZG9jc2AgZGlyZWN0b3J5LiAgUmFpc2UgYSBwdWxsIHJlcXVlc3QgaW50byB0aGUgYG1haW5gIGJyYW5jaC4gIE9uY2UgbWVyZ2VkLCB0aGUgdXBkYXRlZCBkb2NzIHdpbGwgYmUgYXV0b21hdGljYWxseSBwdWJsaXNoZWQuICAKCiMjIyBSdW5uaW5nIExvY2FsbHkKCkluc3RhbGwgcGFja2FnZXM6ICAKCmBgYGJhc2gKeWFybgpgYGAKClRvIGJ1aWxkIGEgbWljcm9zaXRlIGxvY2FsbHksIHVzZSBgeWFybiBidWlsZDp7cHJvdmlkZXJ9YC4gIEZvciBleGFtcGxlLCB0byBidWlsZCB0aGUgQVdTIG1pY3Jvc2l0ZSBsb2NhbGx5LCBydW46CgpgYGAKZXhwb3J0IE5PREVfT1BUSU9OUz0tLW1heF9vbGRfc3BhY2Vfc2l6ZT00MDk2Cnlhcm4gcnVuIGJ1aWxkOmF3cwpgYGAKClRvIHJ1biBhIG1pY3Jvc2l0ZSBsb2NhbGx5LCB1c2UgYHlhcm4gc3RhcnQ6e3Byb3ZpZGVyfWAuICBGb3IgZXhhbXBsZSwgdG8gcnVuIHRoZSBBV1MgbWljcm9zaXRlIGxvY2FsbHksIHJ1bjogIAoKYGBgYmFzaAp5YXJuIHN0YXJ0OmF3cwpgYGA= + readmeEtag: '"262cd09d521dc8aaf69d367f9c02b8e83267eef6909f073c12b8f943f39a44f6"' + readmeLastModified: Thu, 14 Dec 2023 19:27:53 GMT repositoryId: 566164202 description: >- StackQL provider documentation for cloud and SaaS providers available in @@ -16510,7 +16510,7 @@ forks: 0 owner: stackql logo: https://avatars.githubusercontent.com/u/95105302?v=4 - repoEtag: '"404abdeb151e593313bb44c4e038740926a52d80929f4e7ce54465c63e668f30"' + repoEtag: '"024a0b7b2ad93f27c84506fe45fa9ab3ca6ab0373445d91f545bff0b786d9b11"' repoLastModified: Tue, 25 Jul 2023 15:04:03 GMT category: Server Implementations foundInMaster: true @@ -16614,7 +16614,7 @@ owner: Aptori-dev logo: https://avatars.githubusercontent.com/u/140379261?v=4 license: MIT - repoEtag: '"916cfa0a98c6c91c54f8d9256b741695cfc272fad4f702791544c0653ae3693b"' + repoEtag: '"f409e4ef552eb135c19b103abd048fe51342f3e9f6bca97617c1eeb97e3c2676"' repoLastModified: Mon, 06 Nov 2023 17:57:04 GMT category: Server Implementations foundInMaster: true @@ -16912,7 +16912,7 @@ owner: meabed logo: https://avatars.githubusercontent.com/u/45731?v=4 license: MIT - repoEtag: '"903fa8a8284b0808ddddc0296a66d9476f90bb222c9b76fad26b1af95dcd90bf"' + repoEtag: '"283ea7cd0aebba64f0790e77f16c81a0a5b4c36ba7b225646a844f1b194f5003"' repoLastModified: Sun, 02 Apr 2023 20:55:39 GMT foundInMaster: true category: @@ -17146,7 +17146,7 @@ owner: Tomboyo logo: https://avatars.githubusercontent.com/u/3467385?v=4 license: GPL-3.0 - repoEtag: '"10de27fbe2aa2ef63387a7dc6b32e0d7b4149003caf9cb06c4b83441e0eea8be"' + repoEtag: '"b64ab0de9e73d4fb6dcb1e57133fa7ca6cec92d739b10290d579e127b2e04343"' repoLastModified: Mon, 05 Jun 2023 14:50:02 GMT foundInMaster: true category: Testing @@ -17279,7 +17279,7 @@ owner: cerberauth logo: https://avatars.githubusercontent.com/u/127022998?v=4 license: MIT - repoEtag: '"e65cbaa6f56a9c724d87eb382b9c5a66cb6309680c7ee887dc148a57018e9c27"' + repoEtag: '"d6ddcca4651f323a8b42a35fa1897c5af29f7cc6de78241d66786ea2277f6f0e"' repoLastModified: Sun, 05 Nov 2023 17:08:23 GMT category: Parsers foundInMaster: true @@ -17742,7 +17742,7 @@ forks: 9 owner: u21 logo: https://avatars.githubusercontent.com/u/40812212?v=4 - repoEtag: '"aa588bc96fd79e6b1ce21ca5e38fe4599dbb4995939b7a434979dfda52d4fdb9"' + repoEtag: '"add70f1b09d518405322389e0a319e4b781e325e52c372012f9fc8722188974c"' repoLastModified: Thu, 09 Feb 2023 19:26:42 GMT foundInMaster: true category: Testing @@ -18024,7 +18024,7 @@ owner: criteria-labs logo: https://avatars.githubusercontent.com/u/88253836?v=4 license: MIT - repoEtag: '"80934ebeb84f7f738e9918ddf722b27564dc4f6289d041848b811c8607acf1b7"' + repoEtag: '"5d439e8cb8c6b2fa9392226e9301317f7d4b5d8580a8edaff4a1e23b19f871cc"' repoLastModified: Sun, 03 Dec 2023 02:13:25 GMT foundInMaster: true - source: openapi3 tags @@ -18099,7 +18099,7 @@ owner: ruiaraujo012 logo: https://avatars.githubusercontent.com/u/16304685?v=4 license: MIT - repoEtag: '"0f7f994f91d603206e48355092a56225c6dad970049bc59dcd57922fd3c4da3b"' + repoEtag: '"76903a4c6271257277a1ea420ee7e6df12a7a3e0238696ba987ef161df771791"' repoLastModified: Wed, 25 Oct 2023 22:29:05 GMT category: Parsers foundInMaster: true @@ -18190,16 +18190,16 @@ repositoryId: 683452181 description: Convert OpenAPI to PDF. created: '2023-08-26T16:09:46Z' - updated: '2023-11-27T11:27:29Z' + updated: '2023-12-14T12:10:15Z' language: TypeScript archived: false - stars: 4 - watchers: 1 + stars: 5 + watchers: 2 forks: 0 owner: curvednebula logo: https://avatars.githubusercontent.com/u/1443238?v=4 - repoEtag: '"07b4aac7f12f3d285ad9fff506f100550c53a6bff1981bfe3cdb2f479d093359"' - repoLastModified: Mon, 27 Nov 2023 11:27:29 GMT + repoEtag: '"5e2e06cd66ddd9b3145983e2cd0d7404639ba077f773bb5fcb0823fa9880f88c"' + repoLastModified: Thu, 14 Dec 2023 12:10:15 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -18301,7 +18301,7 @@ owner: aereal logo: https://avatars.githubusercontent.com/u/87649?v=4 license: MIT - repoEtag: '"4d96507b8359968e96b316f57e2c8cc6e1d918cc38396fbb26a40ea02143eb3c"' + repoEtag: '"d61f1e2c8b8084c7c5c40c53e4b15545c7118ec3f832db4949afefa814096b8c"' repoLastModified: Tue, 01 Aug 2023 19:43:43 GMT foundInMaster: true category: Data Validators @@ -18347,11 +18347,11 @@ archived: false stars: 4 watchers: 3 - forks: 3 + forks: 4 owner: Vect0rPro logo: https://avatars.githubusercontent.com/u/87179257?v=4 license: Apache-2.0 - repoEtag: '"9098e6708bd746ac6c0c4cc0dd6d73ebed0018da2dd216c2d116ffc559fc7671"' + repoEtag: '"83d8a6cefda2c1c5aae635975483c3b17fbf23071ce16fc2b9c250dede2f31b6"' repoLastModified: Thu, 06 Jul 2023 10:34:44 GMT foundInMaster: true category: SDK @@ -18712,7 +18712,7 @@ forks: 0 owner: karatelabs logo: https://avatars.githubusercontent.com/u/91312095?v=4 - repoEtag: '"bc6025fa278fc81c494afea156421d1405bc413ee11b602020f0f4313537c6c2"' + repoEtag: '"22ffada31be6b5e88a43e920ff586638dce50b475ae67dc1a217b799ce0e38f9"' repoLastModified: Thu, 17 Aug 2023 08:33:23 GMT category: Testing foundInMaster: true @@ -20063,13 +20063,13 @@ id: 0812df37e319298aadaf68398b59b2d5 repositoryMetadata: base64Readme: >- - IyBERVBMT1kuQ2FjaG9ycm8uQXBpCgohW0ltYWdlbSBwcm9qZXRvIGFwaSBkZSBjYWNob3Jyb10oLi9kb2NzL2ltZ3JlYWRtZTEucG5nKQoKWyFbUXVhbGl0eSBnYXRlXShodHRwczovL3NvbmFyY2xvdWQuaW8vYXBpL3Byb2plY3RfYmFkZ2VzL3F1YWxpdHlfZ2F0ZT9wcm9qZWN0PWZlbGlwZW1lbnRlbF9ERVBMT1kuQ2FjaG9ycm8uQXBpKV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL3N1bW1hcnkvbmV3X2NvZGU/aWQ9ZmVsaXBlbWVudGVsX0RFUExPWS5DYWNob3Jyby5BcGkpCgojIENvbmZpZ3VyYcOnw6NvIGxvY2FsIGRvIEdpdAoKYGBgCmdpdCBjb25maWcgLS1sb2NhbCAtLWxpc3QKYGBgCgpgYGAKZ2l0IGNvbmZpZyAtLWxvY2FsIHVzZXIubmFtZSAiRmVsaXBlIEF1Z3VzdG8iCmBgYAoKYGBgCmdpdCBjb25maWcgLS1sb2NhbCB1c2VyLmVtYWlsIGZlbGlwZW1lbnRlbEBob3RtYWlsLmNvbQpgYGAKClByb2pldG8gZWR1Y2FjaW9uYWwsIGNyaWFkbyBlIG1hbnRpZG8gYXRyYXbDqXMgZG8gY2FuYWwgREVQTE9ZIG5vIFlvdVR1YmUuCgo+IFBhcmEgY3JpYXIgYSBpbWFnZW0sIGEgcGFydGlyIGRvIGRpcmV0w7NyaW8gcm9vdCBkYSBhcGxpY2HDp8OjbyAocGFzdGEgcXVlIGNvbnRlbSBvIGFycXVpdm8gc2xuKQoKYGBgCmRvY2tlciBidWlsZCAtZiAuL0RFUExPWS5DYWNob3Jyby5BcGkvRG9ja2VyZmlsZSAgLXQgY3JjYW5hbGRlcGxveWRldi5henVyZWNyLmlvL2NhY2hvcnJvLmFwaTowLjQgLgpgYGAKCj4gUGFyYSBleGVjdXRhciBvIHByb2pldG8gbG9jYWwsIHV0aWxpemFuZG8gZG9ja2VyCgpgYGAKZG9ja2VyIGNvbnRhaW5lciBydW4gLS1ybSAtcCA4MDg4OjgwIC1lIENvbm5lY3Rpb25zU3RyaW5nX19BcHBsaWNhdGlvbkluc2lnaHRzPSJ4eHh4IiAtZSBBcHBsaWNhdGlvbkluc2lnaHRzX19BcGlLZXk9Inl5eSIgZmVsaXBlbWVudGVsL2NhY2hvcnJvLWFwaTowLjMKYGBgCgojIFRlc3RlcyBkZSB1bmlkYWRlCgpUZWNub2xvZ2lhOiBYVW5pdAoKMC4gUHJlIHJlcXVpc2l0bwogICBTZXLDoSBuZWNlc3PDoXJpbyBpbnN0YWxhciBvcyBkb2lzIHBhY290ZXMgYWJhaXhvIHBhcmEgdGVyIHN1Y2Vzc28gYW8gZXhlY3V0YXIgb3MgY29tYW5kb3MgZGVzY3JpdG9zIG5lc3NlIGFycXVpdm8uCgpgYGAKZG90bmV0IHRvb2wgaW5zdGFsbCAtLWdsb2JhbCBkb3RuZXQtcmVwb3J0Z2VuZXJhdG9yLWdsb2JhbHRvb2wKYGBgCgpgYGAKZG90bmV0IHRvb2wgaW5zdGFsbCAtLWdsb2JhbCBkb3RuZXQtY292ZXJhZ2UKYGBgCgoxLiBDb21vIEV4ZWN1dGFyOgogICAxLjEgQSBwYXJ0aXIgZGEgcGFzdGEgc3JjIGV4ZWN1dGUgbyBjb21hbmRvOgoKYGBgCmRvdG5ldCB0ZXN0CmBgYAoKMi4gR2VyYcOnw6NvIGRlIHJlbGF0w7NyaW8gZGUgdGVzdGVzCiAgIDEuMSBBIHBhcnRpciBkYSBwYXN0YSBzcmMgZXhlY3V0ZSBvIGNvbWFuZG86CgpgYGAKZG90bmV0IHRlc3QgLS1jb2xsZWN0OiJYUGxhdCBDb2RlIENvdmVyYWdlIiAtLWxvZ2dlciAiY29uc29sZTt2ZXJib3NpdHk9ZGV0YWlsZWQiCmBgYAoKb3UKCmBgYApkb3RuZXQtY292ZXJhZ2UgY29sbGVjdCAiZG90bmV0IHRlc3QiIC1mIHhtbCAtbyAiY292ZXJhZ2UueG1sIgpgYGAKCjEuMiBBIHBhcnRpciBkYSBwYXN0YSBzcmMgZXhlY3V0ZSBvIGNvbWFuZG86CgpgYGAKcmVwb3J0Z2VuZXJhdG9yIC1yZXBvcnRzOkM6L1Byb2ovREVQTE9ZL0RFUExPWS5DYWNob3Jyby9zcmMvREVQTE9ZLkNhY2hvcnJvLkFwaS5UZXN0cy9UZXN0UmVzdWx0cy8qKi8qY29iZXJ0dXJhLnhtbCAtdGFyZ2V0ZGlyOkM6L1Byb2ovREVQTE9ZL0RFUExPWS5DYWNob3Jyby9zcmMvREVQTE9ZLkNhY2hvcnJvLkFwaS5UZXN0cy9jb3ZlcmFnZXJlcG9ydCAtcmVwb3J0dHlwZXM6Ikh0bWw7U29uYXJRdWJlO0pzb25TdW1tYXJ5O0JhZGdlcyIgLXZlcmJvc2l0eTpWZXJib3NlIC10aXRsZTpDYWNob3Jyby5BUEkgLXRhZzpjYW5hbC1kZXBsb3kKYGBgCgotLS0KCiMgRW50aXR5RnJhbWV3b3JrIENvbW1hbmRzCgpgYGAKZG90bmV0IHRvb2wgaW5zdGFsbCAtLWdsb2JhbCBkb3RuZXQtZWYKYGBgCgpgYGAKZG90bmV0IGVmIG1pZ3JhdGlvbnMgYWRkIEluaXREYXRhYmFzZUFQSSAtcyBERVBMT1kuQ2FjaG9ycm8uQXBpIC1wIERFUExPWS5DYWNob3Jyby5SZXBvc2l0b3J5IC1jIERFUExPWS5DYWNob3Jyby5SZXBvc2l0b3J5LkNhY2hvcnJvRGJDb250ZXh0IC0tb3V0cHV0LWRpciBNaWdyYXRpb25zL0FQSSAtdgpgYGAKCmBgYApkb3RuZXQgZWYgZGF0YWJhc2UgdXBkYXRlIEluaXREYXRhYmFzZUFQSSAtLXN0YXJ0dXAtcHJvamVjdCBERVBMT1kuQ2FjaG9ycm8uQXBpIC0tcHJvamVjdCBERVBMT1kuQ2FjaG9ycm8uUmVwb3NpdG9yeSAtLWNvbnRleHQgREVQTE9ZLkNhY2hvcnJvLlJlcG9zaXRvcnkuQ2FjaG9ycm9EYkNvbnRleHQgLS12ZXJib3NlCmBgYAoKQ29ubmVjdGlvbiBTdHJpbmcKCmBgYApEYXRhIFNvdXJjZT0xMjcuMC4wLjEsMTQzMztJbml0aWFsIENhdGFsb2c9Q2FjaG9ycm87VXNlciBJZD1zYTtQYXNzd29yZD1BYmNkMTIzNCU7SW50ZWdyYXRlZCBTZWN1cml0eT1GYWxzZTtNdWx0aXBsZUFjdGl2ZVJlc3VsdFNldHM9VHJ1ZTtUcnVzdFNlcnZlckNlcnRpZmljYXRlPXRydWU7CmBgYAoKPGJyLz4KPGJyLz4KPGJyLz4KPGJyLz4KPGJyLz4KCiMgTGluayBkZSBkb2N1bWVudGHDp8O1ZXMgY2l0YWRhcyBkdXJhbnRlIGEgY3JpYcOnYW8gZG8gcHJvamV0bwoKYGBgCmh0dHBzOi8vbGVhcm4ubWljcm9zb2Z0LmNvbS9lbi11cy9hc3BuZXQvY29yZS9mdW5kYW1lbnRhbHMvbG9nZ2luZy8/dmlldz1hc3BuZXRjb3JlLTcuMApgYGAKCmBgYApodHRwczovL2xlYXJuLm1pY3Jvc29mdC5jb20vZW4tdXMvYXNwbmV0L2NvcmUvc2VjdXJpdHkvYXBwLXNlY3JldHM/dmlldz1hc3BuZXRjb3JlLTcuMCZ0YWJzPXdpbmRvd3MKYGBgCgpJTG9nZ2VyCgpgYGAKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2FzcG5ldC9jb3JlL2Z1bmRhbWVudGFscy9sb2dnaW5nLz92aWV3PWFzcG5ldGNvcmUtNy4wCmBgYAoKYGBgCmh0dHBzOi8vbGVhcm4ubWljcm9zb2Z0LmNvbS9lbi11cy9henVyZS9henVyZS1tb25pdG9yL2FwcC9pbG9nZ2VyP3RhYnM9ZG90bmV0NgpgYGAKCkFwcGxpY2F0aW9uIEluc2lnaHRzCgpgYGAKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL3B0LWJyL2F6dXJlL2F6dXJlLW1vbml0b3IvYXBwL2FzcC1uZXQtY29yZT90YWJzPW5ldGNvcmVuZXclMkNuZXRjb3JlNgpgYGAKCkxpdmUgU3RyZWFtIC8gTGl2ZSBNZXRyaWNzCgpgYGAKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2F6dXJlL2F6dXJlLW1vbml0b3IvYXBwL2xpdmUtc3RyZWFtP3RhYnM9ZG90bmV0NgpgYGAKCkNvbmZpZ3VyYXRpb25zCgpgYGAKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2FzcG5ldC9jb3JlL2Z1bmRhbWVudGFscy9jb25maWd1cmF0aW9uLz92aWV3PWFzcG5ldGNvcmUtNy4wCmBgYAo= - readmeEtag: '"4b465b0e38c66d88f80592b43b2c4fcaa144482f1ae64ab13da185e2c48c5b50"' - readmeLastModified: Wed, 29 Nov 2023 00:32:44 GMT + IyBERVBMT1kuQ2FjaG9ycm8uQXBpCgohW0ltYWdlbSBwcm9qZXRvIGFwaSBkZSBjYWNob3Jyb10oLi9kb2NzL2ltZ3JlYWRtZTEucG5nKQoKWyFbUXVhbGl0eSBnYXRlXShodHRwczovL3NvbmFyY2xvdWQuaW8vYXBpL3Byb2plY3RfYmFkZ2VzL3F1YWxpdHlfZ2F0ZT9wcm9qZWN0PWZlbGlwZW1lbnRlbF9ERVBMT1kuQ2FjaG9ycm8uQXBpKV0oaHR0cHM6Ly9zb25hcmNsb3VkLmlvL3N1bW1hcnkvbmV3X2NvZGU/aWQ9ZmVsaXBlbWVudGVsX0RFUExPWS5DYWNob3Jyby5BcGkpCgojIENvbmZpZ3VyYcOnw6NvIGxvY2FsIGRvIEdpdAoKYGBgCmdpdCBjb25maWcgLS1sb2NhbCAtLWxpc3QKYGBgCgpgYGAKZ2l0IGNvbmZpZyAtLWxvY2FsIHVzZXIubmFtZSAiRmVsaXBlIEF1Z3VzdG8iCmBgYAoKYGBgCmdpdCBjb25maWcgLS1sb2NhbCB1c2VyLmVtYWlsIGZlbGlwZW1lbnRlbEBob3RtYWlsLmNvbQpgYGAKClByb2pldG8gZWR1Y2FjaW9uYWwsIGNyaWFkbyBlIG1hbnRpZG8gYXRyYXbDqXMgZG8gY2FuYWwgREVQTE9ZIG5vIFlvdVR1YmUuCgo+IFBhcmEgY3JpYXIgYSBpbWFnZW0sIGEgcGFydGlyIGRvIGRpcmV0w7NyaW8gcm9vdCBkYSBhcGxpY2HDp8OjbyAocGFzdGEgcXVlIGNvbnRlbSBvIGFycXVpdm8gc2xuKQoKIyBwcmUtcmVxdWlzaXRvcyBwYXJhIGV4ZWN1dGFyIG8gcHJvamV0bwoKMS4gRG9ja2VyCjIuIFVtIGNvbnRhIG5vIEF6dXJlIHBhcmEgY3JpYXIgcmVjdXJzb3MKCj4gUGFyYSBleGVjdXRhciBvIHByb2pldG8gbG9jYWw6Cgpkb3RuZXQgcnVuIC0tcHJvamVjdCAuL3NyYy9ERVBMT1kuQ2FjaG9ycm8uQXBpL0RFUExPWS5DYWNob3Jyby5BcGkuY3Nwcm9qIEFTUE5FVENPUkVfRU5WSVJPTk1FTlQ9YWFhIENvbm5lY3Rpb25TdHJpbmdzOkFwcGxpY2F0aW9uSW5zaWdodHM9ImJiYiIgQ29ubmVjdGlvblN0cmluZ3M6RGVmYXVsdENvbm5lY3Rpb249ImNjYyIgQ29ubmVjdGlvblN0cmluZ3M6QXBwQ29uZmlndXJhdGlvbj0iZGRkIgpBcHBsaWNhdGlvbkluc2lnaHRzOkFwaUtleT0iZWVlIiBLZXlWYXVsdDpWYXVsdFVyaT0iZmZmIgoKPiBQYXJhIGV4ZWN1dGFyIG8gcHJvamV0byBsb2NhbCwgdXRpbGl6YW5kbyBkb2NrZXIKCmBgYApkb2NrZXIgY29udGFpbmVyIHJ1biAtLXJtIC1wIDgwODg6ODAgXAotZSBBU1BORVRDT1JFX0VOVklST05NRU5UPWFhYSBcCi1lIENvbm5lY3Rpb25TdHJpbmdzX19BcHBsaWNhdGlvbkluc2lnaHRzPSJiYmIiIFwKLWUgQ29ubmVjdGlvblN0cmluZ3NfX0RlZmF1bHRDb25uZWN0aW9uPSJjY2MiIFwKLWUgQ29ubmVjdGlvblN0cmluZ3NfX0FwcENvbmZpZ3VyYXRpb249ImRkZCIgXAotZSBBcHBsaWNhdGlvbkluc2lnaHRzX19BcGlLZXk9ImVlZSIgXAotZSBLZXlWYXVsdF9fVmF1bHRVcmk9ImZmZiIgXApmZWxpcGVtZW50ZWwvY2FjaG9ycm8uYXBpOmxhdGVzdApgYGAKCmBgYAphYWEgPSBEZXZlbG9wbWVudHxQcm9kdWN0aW9uCmBgYAoKYGBgCmJiYiA9IENvbm5lY3Rpb25TdHJpbmcgZG8gQXBwbGljYXRpb24gSW5zaWdodHMKYGBgCgpgYGAKY2NjID0gQ29ubmVjdGlvbiBTdHJpbmcgKEF6dXJlIFNRTCBEYXRhYmFzZSBvdSBodHRwczovL2h1Yi5kb2NrZXIuY29tL18vbWljcm9zb2Z0LWF6dXJlLXNxbC1lZGdlKQpgYGAKCmBgYApkZGQgPSBDb25uZWN0aW9uIHN0cmluZyBkbyBBcHAgQ29uZmlndXJhdGlvbgpgYGAKCmBgYAplZWUgPSBBcGlLZXkgZ2VyYWRhIGRlbnRybyBkbyBBcHBsaWNhdGlvbiBJbnNpZ2h0cwpgYGAKCmBgYApmZmYgPSBVUkkgZG8gQXp1cmUgS2V5VmF1bHQKYGBgCgpDb21hbmRvIHBhcmEgc3ViaXIgbyBiYW5jbyBkZSBkYWRvcyBsb2NhbDoKCmBgYApkb2NrZXIgcnVuIC0tY2FwLWFkZCBTWVNfUFRSQUNFIC1lICdBQ0NFUFRfRVVMQT0xJyAtZSAnTVNTUUxfU0FfUEFTU1dPUkQ9QWJjZDEyMzQlJyAtZSAnTVNTUUxfUElEPURldmVsb3BlcicgLXAgMTQzMzoxNDMzIC0tbmFtZSBhenVyZXNxbGVkZ2UgLWQgbWNyLm1pY3Jvc29mdC5jb20vYXp1cmUtc3FsLWVkZ2U6Mi4wLjAKYGBgCgpDYXNvIHF1ZWlyYSB0ZXN0YXIgY29tIG91dHJhIHRhZywgdXRpbGl6ZSBvcyBjb21hbmRvcyBhYmFpeG8gcGFyYSBvYnRlciBhIGxpc3RhIGRlIHRhZ3MKCmBgYApodHRwczovL21jci5taWNyb3NvZnQuY29tL3YyL2F6dXJlLXNxbC1lZGdlL3RhZ3MvbGlzdApgYGAKCiMgVGVzdGVzIGRlIHVuaWRhZGUKClRlY25vbG9naWE6IFhVbml0CgowLiBQcmUgcmVxdWlzaXRvCiAgIFNlcsOhIG5lY2Vzc8OhcmlvIGluc3RhbGFyIG9zIGRvaXMgcGFjb3RlcyBhYmFpeG8gcGFyYSB0ZXIgc3VjZXNzbyBhbyBleGVjdXRhciBvcyBjb21hbmRvcyBkZXNjcml0b3MgbmVzc2UgYXJxdWl2by4KCmBgYApkb3RuZXQgdG9vbCBpbnN0YWxsIC0tZ2xvYmFsIGRvdG5ldC1yZXBvcnRnZW5lcmF0b3ItZ2xvYmFsdG9vbApgYGAKCmBgYApkb3RuZXQgdG9vbCBpbnN0YWxsIC0tZ2xvYmFsIGRvdG5ldC1jb3ZlcmFnZQpgYGAKCjEuIENvbW8gRXhlY3V0YXI6CiAgIDEuMSBBIHBhcnRpciBkYSBwYXN0YSBzcmMgZXhlY3V0ZSBvIGNvbWFuZG86CgpgYGAKZG90bmV0IHRlc3QKYGBgCgoyLiBHZXJhw6fDo28gZGUgcmVsYXTDs3JpbyBkZSB0ZXN0ZXMKCiAgIDEuMSBBIHBhcnRpciBkYSBwYXN0YSBzcmMgZXhlY3V0ZSBvIGNvbWFuZG86CgpgYGAKZG90bmV0IHRlc3QgLS1jb2xsZWN0OiJYUGxhdCBDb2RlIENvdmVyYWdlIiAtLWxvZ2dlciAiY29uc29sZTt2ZXJib3NpdHk9ZGV0YWlsZWQiIC0tcmVzdWx0cy1kaXJlY3RvcnkgLlxERVBMT1kuQ2FjaG9ycm8uQXBpLlRlc3RzXFRlc3RSZXN1bHRzXFhQbGF0Q29kZUNvdmVyYWdlXApgYGAKCmUgZGVwb2lzIGV4ZWN1dGU6CgpgYGAKcmVwb3J0Z2VuZXJhdG9yIC1yZXBvcnRzOi5cREVQTE9ZLkNhY2hvcnJvLkFwaS5UZXN0c1xUZXN0UmVzdWx0c1xYUGxhdENvZGVDb3ZlcmFnZVwqKlxjb3ZlcmFnZS5jb2JlcnR1cmEueG1sICAtdGFyZ2V0ZGlyOi4vREVQTE9ZLkNhY2hvcnJvLkFwaS5UZXN0cy9UZXN0UmVzdWx0cy9YUGxhdENvZGVDb3ZlcmFnZS9Db3ZlcmFnZVJlcG9ydCAtcmVwb3J0dHlwZXM6Ikh0bWw7U29uYXJRdWJlO0pzb25TdW1tYXJ5O0JhZGdlcyIgLXZlcmJvc2l0eTpWZXJib3NlIC10aXRsZTpDYWNob3Jyby5BUEkgLXRhZzpjYW5hbC1kZXBsb3kKYGBgCgpvdQoKYGBgCiR2YXIgPSAoR2V0LURhdGUpLlRvU3RyaW5nKCJ5eXl5TU1kZC1ISG1tc3MiKTsgZG90bmV0LWNvdmVyYWdlIGNvbGxlY3QgImRvdG5ldCB0ZXN0IiAtZiB4bWwgLW8gIi5cREVQTE9ZLkNhY2hvcnJvLkFwaS5UZXN0c1xUZXN0UmVzdWx0c1xEb3RuZXRDb3ZlcmFnZUNvbGxlY3RcJHZhclxjb3ZlcmFnZS5jb2JlcnR1cmEueG1sIgpgYGAKCmUgZGVwb2lzIGV4ZWN1dGU6CgpgYGAKcmVwb3J0Z2VuZXJhdG9yIC1yZXBvcnRzOi5cREVQTE9ZLkNhY2hvcnJvLkFwaS5UZXN0c1xUZXN0UmVzdWx0c1xEb3RuZXRDb3ZlcmFnZUNvbGxlY3RcKipcY292ZXJhZ2UuY29iZXJ0dXJhLnhtbCAgLXRhcmdldGRpcjouL0RFUExPWS5DYWNob3Jyby5BcGkuVGVzdHMvVGVzdFJlc3VsdHMvRG90bmV0Q292ZXJhZ2VDb2xsZWN0L0NvdmVyYWdlUmVwb3J0IC1yZXBvcnR0eXBlczoiSHRtbDtTb25hclF1YmU7SnNvblN1bW1hcnk7QmFkZ2VzIiAtdmVyYm9zaXR5OlZlcmJvc2UgLXRpdGxlOkNhY2hvcnJvLkFQSSAtdGFnOmNhbmFsLWRlcGxveQpgYGAKCjEuMiBBIHBhcnRpciBkYSBwYXN0YSBzcmMgZXhlY3V0ZSBvIGNvbWFuZG86CgotLS0KCiMgRW50aXR5RnJhbWV3b3JrIENvbW1hbmRzCgpgYGAKCmRvdG5ldCB0b29sIGluc3RhbGwgLS1nbG9iYWwgZG90bmV0LWVmCgpgYGAKCmBgYAoKZG90bmV0IGVmIG1pZ3JhdGlvbnMgYWRkIEluaXREYXRhYmFzZUFQSSAtcyBERVBMT1kuQ2FjaG9ycm8uQXBpIC1wIERFUExPWS5DYWNob3Jyby5SZXBvc2l0b3J5IC1jIERFUExPWS5DYWNob3Jyby5SZXBvc2l0b3J5LkNhY2hvcnJvRGJDb250ZXh0IC0tb3V0cHV0LWRpciBNaWdyYXRpb25zL0FQSSAtdgoKYGBgCgpgYGAKCmRvdG5ldCBlZiBkYXRhYmFzZSB1cGRhdGUgSW5pdERhdGFiYXNlQVBJIC0tc3RhcnR1cC1wcm9qZWN0IERFUExPWS5DYWNob3Jyby5BcGkgLS1wcm9qZWN0IERFUExPWS5DYWNob3Jyby5SZXBvc2l0b3J5IC0tY29udGV4dCBERVBMT1kuQ2FjaG9ycm8uUmVwb3NpdG9yeS5DYWNob3Jyb0RiQ29udGV4dCAtLXZlcmJvc2UKCmBgYAoKQ29ubmVjdGlvbiBTdHJpbmcKCmBgYAoKRGF0YSBTb3VyY2U9MTI3LjAuMC4xLDE0MzM7SW5pdGlhbCBDYXRhbG9nPUNhY2hvcnJvO1VzZXIgSWQ9c2E7UGFzc3dvcmQ9QWJjZDEyMzQlO0ludGVncmF0ZWQgU2VjdXJpdHk9RmFsc2U7TXVsdGlwbGVBY3RpdmVSZXN1bHRTZXRzPVRydWU7VHJ1c3RTZXJ2ZXJDZXJ0aWZpY2F0ZT10cnVlOwoKYGBgCgo8YnIvPgo8YnIvPgo8YnIvPgo8YnIvPgo8YnIvPgoKIyBMaW5rIGRlIGRvY3VtZW50YcOnw7VlcyBjaXRhZGFzIGR1cmFudGUgYSBjcmlhw6dhbyBkbyBwcm9qZXRvCgpgYGAKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2RvdG5ldC9jb3JlL3Rvb2xzL2RvdG5ldApgYGAKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2FzcG5ldC9jb3JlL2Z1bmRhbWVudGFscy9sb2dnaW5nLz92aWV3PWFzcG5ldGNvcmUtNy4wCgpgYGAKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2FzcG5ldC9jb3JlL3NlY3VyaXR5L2FwcC1zZWNyZXRzP3ZpZXc9YXNwbmV0Y29yZS03LjAmdGFicz13aW5kb3dzCgpgYGAKCklMb2dnZXIKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2FzcG5ldC9jb3JlL2Z1bmRhbWVudGFscy9sb2dnaW5nLz92aWV3PWFzcG5ldGNvcmUtNy4wCgpgYGAKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2RvdG5ldC9jb3JlL3Rvb2xzL2RvdG5ldC10ZXN0CgpgYGAKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2F6dXJlL2F6dXJlLW1vbml0b3IvYXBwL2lsb2dnZXI/dGFicz1kb3RuZXQ2CgpgYGAKCkFwcGxpY2F0aW9uIEluc2lnaHRzCgpgYGAKCmh0dHBzOi8vbGVhcm4ubWljcm9zb2Z0LmNvbS9wdC1ici9henVyZS9henVyZS1tb25pdG9yL2FwcC9hc3AtbmV0LWNvcmU/dGFicz1uZXRjb3JlbmV3JTJDbmV0Y29yZTYKCmBgYAoKTGl2ZSBTdHJlYW0gLyBMaXZlIE1ldHJpY3MKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2F6dXJlL2F6dXJlLW1vbml0b3IvYXBwL2xpdmUtc3RyZWFtP3RhYnM9ZG90bmV0NgoKYGBgCgpLZXkgVmF1bHQKCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL3B0LWJyL2F6dXJlL2tleS12YXVsdC9nZW5lcmFsL2Jhc2ljLWNvbmNlcHRzCgpgYGAKCmBgYApodHRwczovL2xlYXJuLm1pY3Jvc29mdC5jb20vZW4tdXMvZG90bmV0L2F6dXJlL3Nkay9kZXBlbmRlbmN5LWluamVjdGlvbj90YWJzPXdlYi1hcHAtYnVpbGRlcgpgYGAKCmBgYApodHRwczovL2xlYXJuLm1pY3Jvc29mdC5jb20vcHQtYnIvYXNwbmV0L2NvcmUvc2VjdXJpdHkva2V5LXZhdWx0LWNvbmZpZ3VyYXRpb24/dmlldz1hc3BuZXRjb3JlLTMuMQpgYGAKCkNvbmZpZ3VyYXRpb24KCmBgYAoKaHR0cHM6Ly9sZWFybi5taWNyb3NvZnQuY29tL2VuLXVzL2FzcG5ldC9jb3JlL2Z1bmRhbWVudGFscy9jb25maWd1cmF0aW9uLz92aWV3PWFzcG5ldGNvcmUtNy4wCgpgYGAKCkF6dXJlIEFwcCBDb25maWd1cmF0aW9uCgpgYGAKCmh0dHBzOi8vbGVhcm4ubWljcm9zb2Z0LmNvbS9lbi11cy9henVyZS9henVyZS1hcHAtY29uZmlndXJhdGlvbi9xdWlja3N0YXJ0LWFzcG5ldC1jb3JlLWFwcD90YWJzPWNvcmU2eAoKYGBgCgpEb2NrZXIgQ29tbWFuZHMKCmBgYAoKZG9ja2VyIGNvbnRhaW5lciBybSAtZiAkKGRvY2tlciBwcyAtYSAtcSkKCmBgYAoKYGBgCgpkb2NrZXIgdm9sdW1lIHJtICQoZG9ja2VyIHZvbHVtZSBscyAtcSlcCgpgYGAKCmBgYAoKZG9ja2VyIGltYWdlIHJtIC1mICQoZG9ja2VyIGltYWdlIGxzIC1hIC1xKQoKYGBgCgpgYGAKCmRvY2tlciBzeXN0ZW0gcHJ1bmUKCmBgYAoKYGBgCgpkb2NrZXIgaW1hZ2UgbHMKCmBgYAoKYGBgCgpkb2NrZXIgdGFnIDQzMGY1ZDlmNDIyOSBjcmNhbmFsZGVwbG95ZGV2LmF6dXJlY3IuaW8vY2FjaG9ycm8uYXBpOmxhdGVzdAoKYGBgCgpgYGAKCmRvY2tlciBwdXNoIGNyY2FuYWxkZXBsb3lkZXYuYXp1cmVjci5pby9jYWNob3Jyby5hcGk6bGF0ZXN0CgpgYGAKCmBgYAoKZG9ja2VyIHB1c2ggZ2hjci5pby9mZWxpcGVtZW50ZWwvY2FjaG9ycm8uYXBpOmxhdGVzdAoKYGBgCgpgYGAKCmRvY2tlciBjb250YWluZXIgcnVuIC1wIDgwODg6ODAgY3JjYW5hbGRlcGxveWRldi5henVyZWNyLmlvL2NhY2hvcnJvLmFwaTpsYXRlc3QKCmBgYAoKYGBgCgpkb2NrZXIgY29udGFpbmVyIHJ1biAtLXJtIC0tbmFtZSBzb25hci1jYW5hbC1kZXBsb3kgLXAgOTA0NDo5MDAwIHNvbmFycXViZToxMC4zLjAtY29tbXVuaXR5CgpgYGAKCkNvbWFuZG9zIEF6dXJlIEtleSBWYXVsdAoKYGBgCgpheiBrZXl2YXVsdCBzZWNyZXQgc2hvdyAtLW5hbWUgQ2FjaG9ycm9Db25uZWN0aW9uU3RyaW5nIC0tdmF1bHQtbmFtZSBrdi1jYW5hbGRlcGxveS1kZXYKCmBgYAoKYGBgCgpATWljcm9zb2Z0LktleVZhdWx0KFNlY3JldFVyaT1odHRwczovL2t2LWNhbmFsZGVwbG95LWRldi52YXVsdC5henVyZS5uZXQvc2VjcmV0cy9Db25uZWN0aW9uU3RyaW5ncy0tQXBwbGljYXRpb25JbnNpZ2h0cy8pCgpgYGAKCmBgYAoKQE1pY3Jvc29mdC5LZXlWYXVsdChWYXVsdE5hbWU9a3YtY2FuYWxkZXBsb3ktZGV2O1NlY3JldE5hbWU9Q29ubmVjdGlvblN0cmluZ3MtLUFwcGxpY2F0aW9uSW5zaWdodHMpCgpgYGAKCkNvbWFuZG9zIEF6dXJlIENvbnRhaW5lciBJbnN0YW5jZQoKYGBgCgpheiBjb250YWluZXIgbG9ncyAtLXJlc291cmNlLWdyb3VwIHJnLWNhbmFsZGVwbG95LWRldiAtLW5hbWUgYXBpLWNhY2hvcnJvCgpgYGAKCmBgYAoKYXogY29udGFpbmVyIGV4ZWMgLWcgZy1jYW5hbGRlcGxveS1kZXYgLS1uYW1lIGNhY2hvcnJvLmFwaSAtLWV4ZWMtY29tbWFuZCAiL2Jpbi9iYXNoIgoKYGBgCgojZ2l0CiNnaXRodWIKI2dpdGh1Yi1hY3Rpb25zCiNzb25hci1xdWJlCiN3c2wtMgojZG9ja2VyCiNkb2NrZXItY29tcG9zZQojZG9ja2VyLWh1YgojZG9uZXQKI2VmLWNvcmUKI2VudGl0eS1mcmFtZXdvcmstY29yZQojeC11bml0CiNwb3N0bWFuCiNhenVyZQojYXp1cmUtYXBwbGljYXRpb24taW5naXNodHMKI2F6dXJlLXNxbC1kYXRhYmFzZQojYXp1cmUtYXBwLWNvbmZpZ3VyYXRpb24KI2F6dXJlLWNvbnRhaW5lci1yZWdpc3RyeQojYXp1cmUtY29udGFpbmVyLWluc3RhbmNlCiNhenVyZS1jb250YWluZXItYXBwcwojYXp1cmUta2V5LXZhdWx0Cg== + readmeEtag: '"f306156860d3db78c1babecd3c57e3604e4d96505b7a56aab6019d1262d55ca2"' + readmeLastModified: Fri, 15 Dec 2023 01:50:49 GMT repositoryId: 682787791 description: API criada para o canal DEPLOY para fins de estudo created: '2023-08-24T23:30:51Z' - updated: '2023-11-15T15:12:59Z' + updated: '2023-12-15T01:36:18Z' language: C# archived: false stars: 3 @@ -20078,8 +20078,8 @@ owner: felipementel logo: https://avatars.githubusercontent.com/u/14238257?v=4 license: Apache-2.0 - repoEtag: '"64fba6eaccc4d9bdc69bae37a9680ec6d123ab7624ac3b6c4c8a3a80d0aa7744"' - repoLastModified: Wed, 15 Nov 2023 15:12:59 GMT + repoEtag: '"70f1fc89398e36765e65d83b0f1aaf521961e26fcb1ebc250009b68aa6ab8fd9"' + repoLastModified: Fri, 15 Dec 2023 01:36:18 GMT category: Code Generators foundInMaster: true - source: openapi3 tags @@ -20211,7 +20211,7 @@ owner: ironcore-dev logo: https://avatars.githubusercontent.com/u/147836484?v=4 license: Apache-2.0 - repoEtag: '"c01b9003d5724bff7421e6d6e8829386ac1c938f561b54674cf9d85db48dc70a"' + repoEtag: '"4253f46bf6977e72f664375337fe3f88149c9fcc7502c2d493e5b8c23f45dc29"' repoLastModified: Tue, 28 Nov 2023 14:05:10 GMT category: Parsers foundInMaster: true @@ -20987,7 +20987,7 @@ owner: SierraSoftworks logo: https://avatars.githubusercontent.com/u/5012716?v=4 license: MIT - repoEtag: '"0aac644ee943d93b86dc57e286ac8afb2dfb7bb960ff149eaff5085cb48ad2fc"' + repoEtag: '"5443689999356cf273aa7191ab315e16db77de6308ab3d0b772c903f0a1a7332"' repoLastModified: Mon, 14 Nov 2022 17:18:07 GMT foundInMaster: true category: @@ -21533,7 +21533,7 @@ owner: smallstep logo: https://avatars.githubusercontent.com/u/23183426?v=4 license: Apache-2.0 - repoEtag: '"108756dd0d5f893bfced3f0567694810f0b309035fa29eb23a856aec388572fb"' + repoEtag: '"24c7e367ea7e5f220470abb7e51d2e8afb16ca03837002e3fa4acbaae81e72ba"' repoLastModified: Wed, 11 Oct 2023 01:01:11 GMT category: Server Implementations foundInMaster: true @@ -22228,9 +22228,9 @@ v3: true repositoryMetadata: base64Readme: >- - IyBpV2x6LWluZGljYXRpZQoqKmlXbHotaW5kaWNhdGllIGJldmF0IGRlIFtHcmFwaHFsLXNjaGVtYV0oL2dxbC1zcGVjaWZpY2F0aWUpIGtvcHBlbHZsYWsgc3BlY2lmaWNhdGllIHZvb3IgaGV0IHJhYWRwbGVnZW4gdmFuIFdseiBpbmRpY2F0aWVnZWdldmVucyBpbiBoZXQgaW5kaWNhdGllcmVnaXN0ZXIuKioKCkhldCBpbmRpY2F0aWVyZWdpc3RlciBpcyBpbiBiZWhlZXIgYmlqIGhldCBDSVogZW4gaXMgb25kZXJkZWVsIHZhbiBoZXQgaVdsei1uZXR3ZXJrbW9kZWwuCgpEZSBrb3BwZWx2bGFrIHNwZWNpZmljYXRpZSB2YW4gaGV0IEluZGljYXRpZXJlZ2lzdGVyIG1hYWt0IG9uZGVyZGVlbCB1aXQgdmFuIGRlICoqaVN0YW5kYWFyZCBpV2x6KiouIERlIHNwZWNpZmljYXRpZXMgdmFuIGRlIGFuZGVyZSBvbmRlcmRlbGVuLCB6b2FscyBFUkQsIHJlZ2VscywgcHJvY2VzYmVzY2hyaWp2aW5nLCBhdXRvcmlzYXRpZXJlZ2Vscywgbm90aWZpY2F0aWUtdHlwZW4gc3RhYW4gaW4gaGV0IFtJbmZvcm1hdGllbW9kZWwgaVdsel0oaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sLykgZGF0IHRlIHZpbmRlbiBpcyB2aWEgZGUgd2Vic2l0ZTogW2h0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC9dKGh0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC8pCgo+IE4uQi4gZGUgT3BlbkFQSSBzcGVjaWZpY2F0aWUgaXMgbmlldCB2b29yIGltcGxlbWVudGF0aWUhIAoKIyMgVmVyc2llcyBlbiBTdGF0dXMgCgpFciB6aWpuIGFsdGlqZCBtaW5pbWFhbCB0d2VlIHZlcnNpZXMgYWN0dWVlbC4gRWVuIHZlcnNpZSBkaWUgaW4gcHJvZHVjdGllIGlzLCBzdGF0dXMgaXMgKkxvcGVuZCogZW4gZWVuIHZlcnNpZSBkaWUgaW4gb250d2lra2VsaW5nIGlzLCBzdGF0dXMgaXMgKkluIG9udHdpa2tlbGluZyouCgp8IGlXbHogUmVsZWFzZSB8IHZlcnNpZSBrb3BwZWx2bGFrIHwgU3RhdHVzIHwKfDotLSB8Oi0tIHwgOi0tIHwKfCBbSW5kaWNhdGllIDEgKGlXbHogMi40KV0oaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sL2lXbHotSW5kaWNhdGllLTEvKSB8IFt2MS4yLjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9pU3RhbmRhYXJkZW4vaVdsei1pbmRpY2F0aWUvdHJlZS92MS4yKSAoW21hc3Rlcl0oaHR0cHM6Ly9naXRodWIuY29tL2lTdGFuZGFhcmRlbi9pV2x6LWluZGljYXRpZSkpIHwgKipMb3BlbmQqKiB8CnwgW0luZGljYXRpZSAyIChpV2x6IDIuNSldKGh0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC9pV2x6LUluZGljYXRpZS0yLykgfCBbdjEuMy4wXSgoaHR0cHM6Ly9naXRodWIuY29tL2lTdGFuZGFhcmRlbi9pV2x6LWluZGljYXRpZS90cmVlL3YxLjMpIHwgSW4gb250d2lra2VsaW5nIHwgCgpWb2xsZWRpZyB2ZXJzaWUgb3ZlcnppY2h0IHppZTogW0NoYW5nZWxvZ10oQ0hBTkdFTE9HLm1kKQoKIyMgRG9jdW1lbnRhdGllCk9uZGVyc3RldW5lbmRlIGRvY3VtZW50YXRpZSBpcyB0ZSB2aW5kZW4gaW4gaGV0IEluZm9ybWF0aWVtb2RlbCwgdmlhIGRlIHdlYnNpdGUgW2h0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC9dKGh0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC8pIGVuIGRhYXIgZGUgZ2V3ZW5zdGUgdmVyc2llIHRlIHNlbGVjdGVyZW4gKHppZSBvb2sgaW4gZGUgdGFiZWwgaGllcmJvdmVuIHZvb3IgZWVuIGRpcmVjdGUgdmVyd2lqemluZykuCgojIyBNZWVyIGluZm9ybWF0aWUKKiBBY3RpZXByb2dyYW1tYSBpV2x6OiB2YW4ga2V0ZW4gbmFhciBuZXR3ZXJrOiBbaGV0IEFjdGllcHJvZ3JhbW1hIGlXbHpdKGh0dHBzOi8vd3d3LmlzdGFuZGFhcmRlbi5ubC9pd2x6L2FjdGllcHJvZ3JhbW1hL2luZGV4ICJPdmVyIEFjdGllcHJvZ3JhbW1hIGlXbHoiKQoqIEluZm9ybWF0aWVtb2RlbCBpU3RhbmRhYXJkZW4gaVdsejogW0luZm9ybWF0aWVtb2RlbGxlbl0oaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sKQoqIFBvcnRhYWwgdm9vciBpU3RhbmRhYXJkZW4gaW4gZGUKWm9yZyBlbiBPbmRlcnN0ZXVuaW5nOiBbaG9tZXBhZ2luYSBpU3RhbmRhYXJkZW5dKGh0dHBzOi8vd3d3LmlzdGFuZGFhcmRlbi5ubCkKCiMjIENvbnRhY3RwZXJzb25lbjoKKiBIaWxrbyBKYWNvYnNlIC0gW0BoaWxrb2phY29ic2VdKGh0dHBzOi8vZ2l0aHViLmNvbS9IaWxrb0phY29ic2UpCiogRGVubmlzIGRlIEdvdXcgLSBbQGRlbm5pc2RlZ291d10oaHR0cDovL2dpdGh1Yi5jb20vZGVubmlzZGVnb3V3KQoqIFJlbW8gdmFuIFJlc3QgLSBbQHJ2YW5yZXN0XShodHRwczovL2dpdGh1Yi5jb20vcnZhbnJlc3QpCgoK - readmeEtag: '"370ac6afa38f8674c99ae331da64694561758763dd97f5cf5c8415c3a6f8a908"' - readmeLastModified: Wed, 13 Dec 2023 13:04:08 GMT + IyBpV2x6LWluZGljYXRpZQoqKmlXbHotaW5kaWNhdGllIGJldmF0IGRlIFtHcmFwaHFsLXNjaGVtYV0oL2dxbC1zcGVjaWZpY2F0aWUpIGtvcHBlbHZsYWsgc3BlY2lmaWNhdGllIHZvb3IgaGV0IHJhYWRwbGVnZW4gdmFuIFdseiBpbmRpY2F0aWVnZWdldmVucyBpbiBoZXQgaW5kaWNhdGllcmVnaXN0ZXIuKioKCkhldCBpbmRpY2F0aWVyZWdpc3RlciBpcyBpbiBiZWhlZXIgYmlqIGhldCBDSVogZW4gaXMgb25kZXJkZWVsIHZhbiBoZXQgaVdsei1uZXR3ZXJrbW9kZWwuCgpEZSBrb3BwZWx2bGFrIHNwZWNpZmljYXRpZSB2YW4gaGV0IEluZGljYXRpZXJlZ2lzdGVyIG1hYWt0IG9uZGVyZGVlbCB1aXQgdmFuIGRlICoqaVN0YW5kYWFyZCBpV2x6KiouIERlIHNwZWNpZmljYXRpZXMgdmFuIGRlIGFuZGVyZSBvbmRlcmRlbGVuLCB6b2FscyBFUkQsIHJlZ2VscywgcHJvY2VzYmVzY2hyaWp2aW5nLCBhdXRvcmlzYXRpZXJlZ2Vscywgbm90aWZpY2F0aWUtdHlwZW4gc3RhYW4gaW4gaGV0IFtJbmZvcm1hdGllbW9kZWwgaVdsel0oaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sLykgZGF0IHRlIHZpbmRlbiBpcyB2aWEgZGUgd2Vic2l0ZTogW2h0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC9dKGh0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC8pCgo+IE4uQi4gZGUgT3BlbkFQSSBzcGVjaWZpY2F0aWUgaXMgbmlldCB2b29yIGltcGxlbWVudGF0aWUhIAoKIyMgVmVyc2llcyBlbiBTdGF0dXMgCgpFciB6aWpuIGFsdGlqZCBtaW5pbWFhbCB0d2VlIHZlcnNpZXMgYWN0dWVlbC4gRWVuIHZlcnNpZSBkaWUgaW4gcHJvZHVjdGllIGlzLCBzdGF0dXMgaXMgKkxvcGVuZCogZW4gZWVuIHZlcnNpZSBkaWUgaW4gb250d2lra2VsaW5nIGlzLCBzdGF0dXMgaXMgKkluIG9udHdpa2tlbGluZyouCgp8IGlXbHogUmVsZWFzZSB8IHZlcnNpZSBrb3BwZWx2bGFrIHwgU3RhdHVzIHwKfDotLSB8Oi0tIHwgOi0tIHwKfCBbSW5kaWNhdGllIDEgKGlXbHogMi40KV0oaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sL2lXbHotSW5kaWNhdGllLTEvKSB8IFt2MS4yLjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9pU3RhbmRhYXJkZW4vaVdsei1pbmRpY2F0aWUvdHJlZS92MS4yKSAoW21hc3Rlcl0oaHR0cHM6Ly9naXRodWIuY29tL2lTdGFuZGFhcmRlbi9pV2x6LWluZGljYXRpZSkpIHwgKipMb3BlbmQqKiB8CnwgW0luZGljYXRpZSAyIChpV2x6IDIuNSldKGh0dHBzOi8vaW5mb3JtYXRpZW1vZGVsLmlzdGFuZGFhcmRlbi5ubC9pV2x6LUluZGljYXRpZS0yLykgfCBbdjEuMy4wXShodHRwczovL2dpdGh1Yi5jb20vaVN0YW5kYWFyZGVuL2lXbHotaW5kaWNhdGllL3RyZWUvdjEuMykgfCBJbiBvbnR3aWtrZWxpbmcgfCAKClZvbGxlZGlnIHZlcnNpZSBvdmVyemljaHQgemllOiBbQ2hhbmdlbG9nXShDSEFOR0VMT0cubWQpCgojIyBEb2N1bWVudGF0aWUKT25kZXJzdGV1bmVuZGUgZG9jdW1lbnRhdGllIGlzIHRlIHZpbmRlbiBpbiBoZXQgSW5mb3JtYXRpZW1vZGVsLCB2aWEgZGUgd2Vic2l0ZSBbaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sL10oaHR0cHM6Ly9pbmZvcm1hdGllbW9kZWwuaXN0YW5kYWFyZGVuLm5sLykgZW4gZGFhciBkZSBnZXdlbnN0ZSB2ZXJzaWUgdGUgc2VsZWN0ZXJlbiAoemllIG9vayBpbiBkZSB0YWJlbCBoaWVyYm92ZW4gdm9vciBlZW4gZGlyZWN0ZSB2ZXJ3aWp6aW5nKS4KCiMjIE1lZXIgaW5mb3JtYXRpZQoqIEFjdGllcHJvZ3JhbW1hIGlXbHo6IHZhbiBrZXRlbiBuYWFyIG5ldHdlcms6IFtoZXQgQWN0aWVwcm9ncmFtbWEgaVdsel0oaHR0cHM6Ly93d3cuaXN0YW5kYWFyZGVuLm5sL2l3bHovYWN0aWVwcm9ncmFtbWEvaW5kZXggIk92ZXIgQWN0aWVwcm9ncmFtbWEgaVdseiIpCiogSW5mb3JtYXRpZW1vZGVsIGlTdGFuZGFhcmRlbiBpV2x6OiBbSW5mb3JtYXRpZW1vZGVsbGVuXShodHRwczovL2luZm9ybWF0aWVtb2RlbC5pc3RhbmRhYXJkZW4ubmwpCiogUG9ydGFhbCB2b29yIGlTdGFuZGFhcmRlbiBpbiBkZQpab3JnIGVuIE9uZGVyc3RldW5pbmc6IFtob21lcGFnaW5hIGlTdGFuZGFhcmRlbl0oaHR0cHM6Ly93d3cuaXN0YW5kYWFyZGVuLm5sKQoKIyMgQ29udGFjdHBlcnNvbmVuOgoqIEhpbGtvIEphY29ic2UgLSBbQGhpbGtvamFjb2JzZV0oaHR0cHM6Ly9naXRodWIuY29tL0hpbGtvSmFjb2JzZSkKKiBEZW5uaXMgZGUgR291dyAtIFtAZGVubmlzZGVnb3V3XShodHRwOi8vZ2l0aHViLmNvbS9kZW5uaXNkZWdvdXcpCiogUmVtbyB2YW4gUmVzdCAtIFtAcnZhbnJlc3RdKGh0dHBzOi8vZ2l0aHViLmNvbS9ydmFucmVzdCkKCgo= + readmeEtag: '"be47c340f62b6177c2fafb22678042a2f58ac248f6eb2a3db988d05c59cf1aca"' + readmeLastModified: Thu, 14 Dec 2023 13:39:57 GMT repositoryId: 204430425 description: Koppelvlak specificatie Indicatieregister created: '2019-08-26T08:25:11Z' @@ -22242,7 +22242,7 @@ forks: 4 owner: iStandaarden logo: https://avatars.githubusercontent.com/u/54351663?v=4 - repoEtag: '"2e709ab4f7ea78710e0eb13e853881ed98b13ba964bddff3af0d57ac787e05c9"' + repoEtag: '"f2dbac829dba1c7558449f6c6f8e6e4277a5d0e6699b08800dbe1d34a6d7022f"' repoLastModified: Wed, 13 Dec 2023 10:57:54 GMT foundInMaster: true category: Documentation @@ -22398,11 +22398,11 @@ archived: false stars: 2 watchers: 2 - forks: 3 + forks: 2 owner: clightning4j logo: https://avatars.githubusercontent.com/u/67849355?v=4 license: NOASSERTION - repoEtag: '"0b331692a762a5a34f11e5fd7fa888972087e7a86e420fe8da411e8bbb122e76"' + repoEtag: '"91be0d7c18baa38b393763076f94dfe28818dcdb7ab65505505283f22a82c671"' repoLastModified: Fri, 10 Jun 2022 00:28:27 GMT foundInMaster: true category: Server @@ -22530,7 +22530,7 @@ owner: igrek8 logo: https://avatars.githubusercontent.com/u/7078731?v=4 license: MIT - repoEtag: '"a9ef5dca1b5cda52a3801e17095df4a35f3e89102f566bdd3358ec83573a7225"' + repoEtag: '"718758c454ea5306e0b8e1f358723d6d597aee6f1e2eda59a10078425303a994"' repoLastModified: Thu, 15 Jun 2023 13:09:53 GMT category: Parsers foundInMaster: true @@ -22873,7 +22873,7 @@ owner: listendev logo: https://avatars.githubusercontent.com/u/103680976?v=4 license: Apache-2.0 - repoEtag: '"42cdc94c27ee55b295225bd67df78320c962d90eefe02f2e2dfc2f4d61c870ee"' + repoEtag: '"18267663651c58920e765a9adb9e6eebd5fea26ba21052a155d0b8d625a3bbf6"' repoLastModified: Thu, 13 Jul 2023 22:06:02 GMT category: Parsers foundInMaster: true @@ -24106,9 +24106,9 @@ id: 263be96f5acdb8019bb4aa99faf938b6 repositoryMetadata: base64Readme: >- - IyBJbnRlclNlcnZlciBNeUFkbWluIENsaWVudCBJbnRlcmZhY2UKCiMjIEltcHJvdmVtZW50cyBhbmQgQmVuZWZpdHMgb3ZlciBjdXJyZW50IENsaWVudCBJbnRlcmZhY2UKCiogKipQZXJmb3JtYW5jZSBCb29zdCoqOiBTdGF0aWMgSFRNTCBnZW5lcmF0ZWQgYnkgVnVlIGNhbiBiZSBoaWdobHkgb3B0aW1pemVkIGZvciBzcGVlZCwgcmVzdWx0aW5nIGluIGZhc3RlciBwYWdlIGxvYWQgdGltZXMgYW5kIGEgbW9yZSByZXNwb25zaXZlIHVzZXIgZXhwZXJpZW5jZS4KKiAqKlJlZHVjZWQgU2VydmVyIExvYWQqKjogU2VydmluZyBzdGF0aWMgZmlsZXMgcmVxdWlyZXMgbGVzcyBzZXJ2ZXIgcHJvY2Vzc2luZyBjb21wYXJlZCB0byBkeW5hbWljYWxseSBnZW5lcmF0ZWQgcGFnZXMsIGxlYWRpbmcgdG8gcmVkdWNlZCBzZXJ2ZXIgbG9hZCBhbmQgaW1wcm92ZWQgc2NhbGFiaWxpdHkuCiogKipJbXByb3ZlZCBTRU8qKjogUHJlLXJlbmRlcmVkIHN0YXRpYyBIVE1MIGNhbiBlbmhhbmNlIHNlYXJjaCBlbmdpbmUgb3B0aW1pemF0aW9uIChTRU8pIGJ5IHByb3ZpZGluZyBjb250ZW50IHRoYXQgc2VhcmNoIGVuZ2luZXMgY2FuIGVhc2lseSBjcmF3bCBhbmQgaW5kZXguCiogKipDRE4gQ29tcGF0aWJpbGl0eSoqOiBTdGF0aWMgZmlsZXMgYXJlIHdlbGwtc3VpdGVkIGZvciBDb250ZW50IERlbGl2ZXJ5IE5ldHdvcmtzIChDRE5zKSwgd2hpY2ggY2FuIGRpc3RyaWJ1dGUgeW91ciBjb250ZW50IGdsb2JhbGx5LCByZWR1Y2luZyBsYXRlbmN5IGFuZCBpbXByb3ZpbmcgcGFnZSBsb2FkIHRpbWVzIGZvciB1c2VycyBhY3Jvc3MgdGhlIHdvcmxkLgoqICoqRW5oYW5jZWQgU2VjdXJpdHkqKjogU2VwYXJhdGluZyB0aGUgZnJvbnRlbmQgZnJvbSB0aGUgYmFja2VuZCBtaW5pbWl6ZXMgdGhlIGV4cG9zdXJlIG9mIHNlbnNpdGl2ZSBiYWNrZW5kIGxvZ2ljLCBpbXByb3ZpbmcgdGhlIG92ZXJhbGwgc2VjdXJpdHkgcG9zdHVyZSBvZiB5b3VyIGFwcGxpY2F0aW9uLgoqICoqU2NhbGFiaWxpdHkqKjogU3RhdGljIGZpbGVzIGNhbiBiZSBjYWNoZWQgZWZmaWNpZW50bHksIGFsbG93aW5nIGZvciBlYXN5IGhvcml6b250YWwgc2NhbGluZyB3aXRob3V0IHRoZSBuZWVkIHRvIHdvcnJ5IGFib3V0IHNlcnZlci1zaWRlIHN0YXRlLgoqICoqU2ltcGxpZmllZCBEZXBsb3ltZW50Kio6IERlcGxveWluZyBhIHN0YXRpYyBmcm9udGVuZCBpcyBvZnRlbiBzaW1wbGVyIGFuZCBtb3JlIHByZWRpY3RhYmxlIHRoYW4gZGVwbG95aW5nIGNvbXBsZXggc2VydmVyLXNpZGUgYXBwbGljYXRpb25zLCBsZWFkaW5nIHRvIHNtb290aGVyIHJlbGVhc2UgY3ljbGVzLgoqICoqUmVkdWNlZCBBUEkgT3ZlcmhlYWQqKjogVXRpbGl6aW5nIHRoZSBQSFAgcGxhdGZvcm0gc29sZWx5IGZvciBoYW5kbGluZyBPcGVuQVBJIEFQSSByZXF1ZXN0cyBtZWFucyB0aGF0IHRoZSBiYWNrZW5kIHNlcnZlciBpcyBvbmx5IHVzZWQgZm9yIG5lY2Vzc2FyeSBkYXRhIHJldHJpZXZhbCBhbmQgcHJvY2Vzc2luZy4KKiAqKkRldmVsb3BlciBDb2xsYWJvcmF0aW9uKio6IENsZWFyIHNlcGFyYXRpb24gb2YgZnJvbnRlbmQgYW5kIGJhY2tlbmQgY29uY2VybnMgZW5hYmxlcyBmcm9udGVuZCBkZXZlbG9wZXJzIGFuZCBQSFAgZGV2ZWxvcGVycyB0byB3b3JrIG1vcmUgaW5kZXBlbmRlbnRseSBhbmQgY29sbGFib3JhdGl2ZWx5LgoqICoqRW5oYW5jZWQgVXNlciBFeHBlcmllbmNlKio6IFZ1ZSdzIHJlYWN0aXZlIGNvbXBvbmVudHMgYW5kIGludGVyYWN0aXZpdHkgY2FuIHN0aWxsIHByb3ZpZGUgYSBkeW5hbWljIHVzZXIgZXhwZXJpZW5jZSBldmVuIGluIGEgc3RhdGljIEhUTUwgY29udGV4dCwgbGVhZGluZyB0byBoaWdoZXIgdXNlciBlbmdhZ2VtZW50LgoqICoqTW9kdWxhciBBcmNoaXRlY3R1cmUqKjogVnVlJ3MgY29tcG9uZW50LWJhc2VkIHN0cnVjdHVyZSBwcm9tb3RlcyBtb2R1bGFyIGRlc2lnbiwgd2hpY2ggZW5oYW5jZXMgY29kZSBtYWludGFpbmFiaWxpdHkgYW5kIGFsbG93cyBmb3IgZWFzaWVyIGZ1dHVyZSB1cGRhdGVzLgoqICoqQ3Jvc3MtUGxhdGZvcm0gQ29uc2lzdGVuY3kqKjogQSBzZXBhcmF0ZSBzdGF0aWMgZnJvbnRlbmQgY2FuIGVuc3VyZSBjb25zaXN0ZW50IHVzZXIgZXhwZXJpZW5jZXMgYWNyb3NzIGRpZmZlcmVudCBkZXZpY2VzIGFuZCBwbGF0Zm9ybXMsIGNvbnRyaWJ1dGluZyB0byB1c2VyIHNhdGlzZmFjdGlvbi4KKiAqKkZyb250ZW5kIElubm92YXRpb24qKjogRm9jdXNpbmcgb24gYSBzZXBhcmF0ZSBzdGF0aWMgZnJvbnRlbmQgYWxsb3dzIGZyb250ZW5kIGRldmVsb3BlcnMgdG8gZXhwZXJpbWVudCB3aXRoIG5ldyBmZWF0dXJlcyBhbmQgVUkgaW1wcm92ZW1lbnRzIHdpdGhvdXQgZGlyZWN0bHkgaW1wYWN0aW5nIHRoZSBiYWNrZW5kLgoqICoqUmVzb3VyY2UgRWZmaWNpZW5jeSoqOiBXaXRoIGZld2VyIHNlcnZlci1zaWRlIGNvbXB1dGF0aW9ucywgdGhlIGJhY2tlbmQgY2FuIHV0aWxpemUgaXRzIHJlc291cmNlcyBtb3JlIGVmZmljaWVudGx5LCBwb3RlbnRpYWxseSBsZWFkaW5nIHRvIGNvc3Qgc2F2aW5ncy4KKiAqKkVhc2llciBEZWJ1Z2dpbmcqKjogQ2xlYXIgc2VwYXJhdGlvbiBvZiByZXNwb25zaWJpbGl0aWVzIHNpbXBsaWZpZXMgZGVidWdnaW5nIGFuZCB0cm91Ymxlc2hvb3RpbmcgZWZmb3J0cywgbWFraW5nIGlzc3VlIGlkZW50aWZpY2F0aW9uIGFuZCByZXNvbHV0aW9uIG1vcmUgc3RyYWlnaHRmb3J3YXJkLgoqICoqRmxleGliaWxpdHkgaW4gSG9zdGluZyoqOiBIb3N0aW5nIGEgc3RhdGljIGZyb250ZW5kIGlzIG9mdGVuIG1vcmUgZmxleGlibGUgYW5kIGNvc3QtZWZmZWN0aXZlLCBhcyBpdCBjYW4gYmUgZGVwbG95ZWQgb24gdmFyaW91cyBob3N0aW5nIHNvbHV0aW9ucywgaW5jbHVkaW5nIHN0YXRpYyBzaXRlIGhvc3RzLgoqICoqRnV0dXJlLVByb29maW5nKio6IEEgc3RhdGljIEhUTUwgZnJvbnRlbmQgY2FuIGVuc3VyZSBsb25nLXRlcm0gc3RhYmlsaXR5IGFuZCBjb21wYXRpYmlsaXR5LCBhcyBpdCdzIGxlc3MgcHJvbmUgdG8gZGVwZW5kZW5jaWVzIGFuZCB0ZWNobm9sb2d5IGNoYW5nZXMuCiogKipPZmZsaW5lIEFjY2Vzc2liaWxpdHkqKjogQnkgc2VydmluZyBzdGF0aWMgYXNzZXRzLCB5b3UgY2FuIGVuYWJsZSB5b3VyIGFwcGxpY2F0aW9uIHRvIHdvcmsgaW4gb2ZmbGluZSBvciBsb3ctY29ubmVjdGl2aXR5IHNjZW5hcmlvcywgcHJvdmlkaW5nIGEgbW9yZSByb2J1c3QgdXNlciBleHBlcmllbmNlLgoqICoqT2ZmbGluZSBDYXBhYmlsaXRpZXMqKjogQSBzdGF0aWMgSFRNTCBmcm9udGVuZCBjYW4gYmUgZGVzaWduZWQgdG8gd29yayBvZmZsaW5lIG9yIHdpdGggaW50ZXJtaXR0ZW50IGNvbm5lY3Rpdml0eSwgZW5oYW5jaW5nIHVzZXIgZXhwZXJpZW5jZSBpbiBzaXR1YXRpb25zIHdpdGggbGltaXRlZCBpbnRlcm5ldCBhY2Nlc3MuCiogKipDYWNoaW5nIEFkdmFudGFnZXMqKjogU3RhdGljIGFzc2V0cyBjYW4gYmUgY2FjaGVkIGF0IHZhcmlvdXMgbGV2ZWxzLCBmcm9tIHRoZSBicm93c2VyIHRvIENETnMsIHJlZHVjaW5nIHRoZSBuZWVkIGZvciByZXBlYXRlZCBkYXRhIHJlcXVlc3RzIGFuZCBpbXByb3Zpbmcgb3ZlcmFsbCBsb2FkIHRpbWVzLgoqICoqVmVyc2lvbiBDb250cm9sKio6IFN0YXRpYyBhc3NldHMgY2FuIGJlIGVhc2lseSB2ZXJzaW9uZWQgYW5kIG1hbmFnZWQgdGhyb3VnaCB2ZXJzaW9uIGNvbnRyb2wgc3lzdGVtcywgZW5zdXJpbmcgY29uc2lzdGVudCBhbmQgY29udHJvbGxlZCB1cGRhdGVzLgoqICoqSW50ZXJuYXRpb25hbGl6YXRpb24qKjogQSBzdGF0aWMgZnJvbnRlbmQgY2FuIGJlIHN0cnVjdHVyZWQgdG8gc3VwcG9ydCBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9uLCBjYXRlcmluZyB0byBhIGdsb2JhbCBhdWRpZW5jZSB3aXRoIGVhc2UuCiogKipDb3N0IFNhdmluZ3MqKjogUmVkdWNlZCBzZXJ2ZXItc2lkZSBwcm9jZXNzaW5nIGNhbiBsZWFkIHRvIGNvc3Qgc2F2aW5ncyBvbiBzZXJ2ZXIgcmVzb3VyY2VzLCBlc3BlY2lhbGx5IHdoZW4gZGVwbG95aW5nIG9uIGNsb3VkIHBsYXRmb3JtcyBvciBob3N0aW5nIHNlcnZpY2VzLgoqICoqUHJlZGljdGFibGUgQmVoYXZpb3IqKjogU3RhdGljIGZyb250ZW5kcyB0ZW5kIHRvIG9mZmVyIG1vcmUgcHJlZGljdGFibGUgYmVoYXZpb3IsIGFzIHRoZXkgYXJlIG5vdCBhZmZlY3RlZCBieSBzZXJ2ZXItc2lkZSBjaGFuZ2VzIHRoYXQgbWlnaHQgaW1wYWN0IHRoZSB1c2VyIGludGVyZmFjZS4KKiAqKkJyb3dzZXIgQ29tcGF0aWJpbGl0eSoqOiBBIHdlbGwtZGVzaWduZWQgc3RhdGljIGZyb250ZW5kIGNhbiBlbnN1cmUgY29uc2lzdGVudCBiZWhhdmlvciBhY3Jvc3MgZGlmZmVyZW50IHdlYiBicm93c2VycywgcmVkdWNpbmcgdGhlIG5lZWQgZm9yIGV4dGVuc2l2ZSBjcm9zcy1icm93c2VyIHRlc3RpbmcuCiogKipUaGlyZC1QYXJ0eSBJbnRlZ3JhdGlvbioqOiBJbnRlZ3JhdGluZyB0aGlyZC1wYXJ0eSBzZXJ2aWNlcyBhbmQgd2lkZ2V0cyBpbnRvIGEgc3RhdGljIGZyb250ZW5kIGlzIG9mdGVuIHNpbXBsZXIgYW5kIGxlc3MgcHJvbmUgdG8gY29uZmxpY3RzLgoqICoqTWljcm9zZXJ2aWNlcyBDb21wYXRpYmlsaXR5Kio6IEEgbW9kdWxhciBzdGF0aWMgZnJvbnRlbmQgYWxpZ25zIHdlbGwgd2l0aCBtaWNyb3NlcnZpY2VzIGFyY2hpdGVjdHVyZSwgYWxsb3dpbmcgZm9yIHNlcGFyYXRlIGRldmVsb3BtZW50IGFuZCBkZXBsb3ltZW50IG9mIHZhcmlvdXMgY29tcG9uZW50cy4KKiAqKlNlY3VyaXR5IFBhdGNoaW5nKio6IFNlcGFyYXRpbmcgdGhlIGZyb250ZW5kIGZyb20gdGhlIGJhY2tlbmQgc2ltcGxpZmllcyBzZWN1cml0eSB1cGRhdGVzIGFuZCBwYXRjaGluZywgYXMgdnVsbmVyYWJpbGl0aWVzIGluIHRoZSBmcm9udGVuZCB3b24ndCBkaXJlY3RseSBpbXBhY3QgdGhlIGJhY2tlbmQgbG9naWMuCiogKipRdWljayBEZXBsb3ltZW50Kio6IERlcGxveWluZyBzdGF0aWMgZmlsZXMgaXMgZ2VuZXJhbGx5IGZhc3RlciBhbmQgcmVxdWlyZXMgZmV3ZXIgcmVzb3VyY2VzIGNvbXBhcmVkIHRvIGRlcGxveWluZyBjb21wbGV4IHNlcnZlci1zaWRlIGFwcGxpY2F0aW9ucy4KKiAqKkNvbnRpbnVvdXMgSW50ZWdyYXRpb24vQ29udGludW91cyBEZXBsb3ltZW50IChDSS9DRCkqKjogQ0kvQ0QgcGlwZWxpbmVzIGZvciBhIHN0YXRpYyBmcm9udGVuZCBjYW4gYmUgc3RyYWlnaHRmb3J3YXJkIGFuZCBlYXNpbHkgYXV0b21hdGVkLCBsZWFkaW5nIHRvIG1vcmUgZWZmaWNpZW50IGRldmVsb3BtZW50IHdvcmtmbG93cy4KKiAqKlJlZHVjZWQgTGF0ZW5jeSoqOiBXaXRoIHJlZHVjZWQgc2VydmVyLXNpZGUgcHJvY2Vzc2luZywgbGF0ZW5jeSBjYW4gYmUgbWluaW1pemVkLCBjb250cmlidXRpbmcgdG8gYSBtb3JlIHJlc3BvbnNpdmUgdXNlciBleHBlcmllbmNlLgoqICoqRWFzaWVyIEEvQiBUZXN0aW5nKio6IEEgc3RhdGljIGZyb250ZW5kIGNhbiBmYWNpbGl0YXRlIEEvQiB0ZXN0aW5nIGFuZCBleHBlcmltZW50YXRpb24gd2l0aG91dCB0aGUgY29tcGxleGl0aWVzIG9mIGR5bmFtaWMgc2VydmVyLXNpZGUgcmVuZGVyaW5nLgoqICoqQ29udGVudCBNYW5hZ2VtZW50Kio6IFNlcGFyYXRpbmcgZnJvbnRlbmQgYW5kIGJhY2tlbmQgYWxsb3dzIGNvbnRlbnQgbWFuYWdlbWVudCBzeXN0ZW1zIChDTVMpIHRvIGZvY3VzIG9uIGNvbnRlbnQgd2l0aG91dCBiZWluZyB0aWdodGx5IGNvdXBsZWQgdG8gdGhlIGFwcGxpY2F0aW9uIGxvZ2ljLgoqICoqU2ltcGxpZmllZCBCYWNrZW5kKio6IEJ5IG9mZmxvYWRpbmcgZnJvbnRlbmQgcmVuZGVyaW5nIHRvIFZ1ZSwgdGhlIFBIUCBiYWNrZW5kIGNhbiBmb2N1cyBvbiBkYXRhIHByb2Nlc3NpbmcgYW5kIEFQSSBmdW5jdGlvbmFsaXR5LCBzaW1wbGlmeWluZyBpdHMgcm9sZS4KKiAqKkNsaWVudC1TaWRlIEVuaGFuY2VtZW50cyoqOiBWdWUncyBjbGllbnQtc2lkZSByb3V0aW5nIGFuZCBzdGF0ZSBtYW5hZ2VtZW50IGNhbiBlbmhhbmNlIG5hdmlnYXRpb24gYW5kIGRhdGEgaGFuZGxpbmcgd2l0aGluIHRoZSBmcm9udGVuZC4KKiAqKlJlZHVjZWQgQ29tcGxleGl0eSoqOiBBIHN0YXRpYyBmcm9udGVuZCBzaW1wbGlmaWVzIHRoZSB0ZWNobmljYWwgc3RhY2ssIHJlZHVjaW5nIHRoZSBvdmVyYWxsIGNvbXBsZXhpdHkgb2YgdGhlIGFwcGxpY2F0aW9uIGFyY2hpdGVjdHVyZS4KKiAqKkVhc2llciBDb2RlIEF1ZGl0cyoqOiBDbGVhciBzZXBhcmF0aW9uIGJldHdlZW4gZnJvbnRlbmQgYW5kIGJhY2tlbmQgY29kZSBtYWtlcyBjb2RlIGF1ZGl0cyBhbmQgc2VjdXJpdHkgcmV2aWV3cyBtb3JlIG1hbmFnZWFibGUuCiogKipCcmFuZGluZyBhbmQgQ3VzdG9taXphdGlvbioqOiBBIHNlcGFyYXRlIGZyb250ZW5kIGFsbG93cyBmb3IgZWFzaWVyIGJyYW5kaW5nIGFuZCBjdXN0b21pemF0aW9uLCBhcyBmcm9udGVuZCBjaGFuZ2VzIHdvbid0IGRpcmVjdGx5IGFmZmVjdCBiYWNrZW5kIGZ1bmN0aW9uYWxpdHkuCgojIyBGQVEKCiMjIyBHZXR0aW5nIGEgYmxhbmsgcGFnZSB3aGVuIGxvYWRpbmcgdGhlIHNpdGUKCkNoZWNrIHlvdXIgYWQgYmxvY2tlciBvciBwcml2YWN5IGFkZG9ucywgdGhleSBtaWdodCBuZWVkIHRvIGJlIGRpc2FibGVkIGZvciB0aGlzIHNpdGUuCgojIyBEZXZlbG9wbWVudAoKKiBbdml0ZWpzL2F3ZXNvbWUtdml0ZTog4pqh77iPIEEgY3VyYXRlZCBsaXN0IG9mIGF3ZXNvbWUgdGhpbmdzIHJlbGF0ZWQgdG8gVml0ZS5qc10oaHR0cHM6Ly9naXRodWIuY29tL3ZpdGVqcy9hd2Vzb21lLXZpdGUpCgojIyMgT3BlbkFQSSBTcGVjCgojIyMjIEFQSSBHVUkgRGVzaWduZXJzCgoqIFtGcmVlIE9ubGluZSBWaXN1YWwgQVBJIERlc2lnbmVyIGZvciBPcGVuQVBJIGFuZCBBc3luY0FQSSBTcGVjaWZpY2F0aW9ucyAtIEFwaUJsZHJdKGh0dHBzOi8vd3d3LmFwaWJsZHIuY29tLykKKiBbbXkgSW50ZXJTZXJ2ZXIgU2VydmljZXMgTWFuYWdlbWVudCBBUEkgLSBteWFkbWluYXBpIC0gRWRpdCAtIEZyb2dtZW50XShodHRwczovL3d3dy5mcm9nbWVudC5jb20vZWRpdC9teWFkbWluYXBpL2ludGVyc2VydmVyX215YWRtaW5fYXBpLmpzb24jaW5mby55YW1sKQoqIFtBUElHaXQgLSBBUEkgRG9jdW1lbnRdKGh0dHBzOi8vYXBwLmFwaWdpdC5jb20vcmVwb3NpdG9yeS9kZXRhaW4vbXlhZG1pbi1vcGVuYXBpLXNwZWMvYXBpL29wZW5hcGkueWFtbCkKKiBbQXBpY3VyaW8gU3R1ZGlvIC0gQVBJIEVkaXRvciA6OiBteSBJbnRlclNlcnZlciBTZXJ2aWNlcyBNYW5hZ2VtZW50IEFQSV0oaHR0cHM6Ly9zdHVkaW8uYXBpY3VyLmlvL2FwaXMvOTM2MTgvZWRpdG9yKQoKQWZ0ZXIgdGhpcyBpcyBkb25lIG9uIGFsbCBvZiB0aGUgcmVwb3MgcGljayB0aGUgYmVzdCBvbmUgYW5kIHNldGl0IHVwIC4uIHRyeSB0byBwcmVzZXJ2ZSBnaXQgaGlzdG9yeQoKIyMjIFRPRE8gUm9hZC1NYXAKCiogKioxLjAtYWxwaGEqKiBNaWxlU3RvbmUKICAqIG9yZGVyIHNlcnZpY2UgcGFnZXMKICAgICogWyBdIHNlcnZlcgogICAgKiBbIF0gZG9tYWluCiAgKiBbIF0gY2FydC9paWRzIHBhcnNlZCBhbmQgaGFuZGxlZAoqICoqMS4wLWJldGEqKiBNaWxlU3RvbmUKICAqIFsgXSB1cGRhdGUgcmVzcG9uc2UgY29kZXMgdG8gbWF0Y2ggdGFibGUgYmVsb3cKICAqIFsgXSBsb2FkaW5nIC8gbm8gZW50cmllcyBtZXNzYWdlcwogICogc2VydmljZXMgbGlzdCBwYWdlcwogICAgKiBkYXRhdGFibGVzIG9yIGVxdWl2YWxlbnQKICAgICAgKiBbeF0gZmlsdGVyaW5nCiAgICAgICogWyBdIHNvcnRpbmcKICAgICAgKiBbIF0gcGFnaW5hdGlvbgogICAgICAqIFsgXSBwcmludC9leHBvcnQKKiAqKjEuMC1zdGFibGUqKiBNaWxlU3RvbmUKICAqIFsgXSBzZXR1cCBnaXRodWIgYWN0aW9ucyBhbmQgaG9va3MgZm9yIGF1dG9tYXRlZCB0ZXN0aW5nCiAgKiBbIF0gbWFrZSBzdXJlIGFmZmlsaWF0ZSB0cmFja2luZyBzdGlsbCB3b3JrcwogICogWyBdIGFuYWx5dGljcwogICogWyBdIGdldCB2YXJpb3VzIGxpYnMgbG9hZGluZyB3aXRoIGltcG9ydHMgaW5zdGVhZWQgb2YgZGlyZWN0bHkgY2FsbGVkIHdpdGggc2NyaXRwdHMgYW5kIGxpbmsgdGFncwogICogWyBdIG1pbmltaXplIGFwaSBmaWVsZHMgaW4gcmVxdWVzdHMvcmVzcG9uc2VzIGFuZCBmaWx0ZXIgdGhlbSBmb3Igc2VjdXJpdHkKICAqIFsgXSBhcGkgZmluYWxpemVkCiogRnV0dXJlIFRhc2tzCiAgKiBbIF0gaW1wcm92ZSB3ZWJwYWNraW5nCiAgKiBbIF0gbW92ZSB0eXBlIGRlZmluaXRpb25zIGludG8gL3R5cGVzPwogICogWyBdIHV0aWxpemUgdGhlIGZvcm0gdmFsaWRhdGlvbiBzdHVmZgogICogWyBdIHJlcGxhY2UganF1ZXJ5IHR5cGUgY2FsbHMgd2l0aCBidWlsdCBpbiB0ZW1wbGF0ZSBoYW5kbGluZyBhbmQgc3VjaAogICogWyBdIGJzNS9hZG1pbmx0ZTQgaHR0cHM6Ly9naXRodWIuY29tL2NvbGlmZi9ib290c3RyYXAtNS1taWdyYXRlLXRvb2wvYmxvYi9tYWluL2d1bHBmaWxlLmpzICBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9KdWFuLWVzY29iYXI5NC9mNzY1MzVhMTI2NGFjNmY3MjUxYzY0M2FmNTBjMTg0ZAogICogWyBdIGlvbmljIGNhcGFjaXRvcgogICAgKiBbIF0gYW5kcm9pZCBidWlsZAogICAgKiBbIF0gaW9zIGJ1aWxkCiAgKiBbeF0gZWxlY3Ryb24gYnVpbGQKICAgICogW3hdIHdpbmRvd3MvbGludXgvbWFjIGJ1aWxkcwogICAgKiBbIF0gYXV0b21hdGVkIGJ1aWxkcwogICAgKiBbeF0ganMvY3NzIGFzc2V0cyBsb2FkZWQgbG9jYWxseQoKIyMjIFBhZ2UgU3RhdHVzCgpBUEkgU3BlYyBDaGVja3MKKiBSZXF1ZXN0IEJvZHkKKiBTdWNjZXNzIFJlc3BvbnNlCiogRXJyb3IgUmVzcG9uc2VzCiogRXhhbXBsZXMKKiBEZXRhaWxlZCBEb2N1bWVudGF0aW9uCiogT3B0aW1pemUgVHlwZXMKKiBQYXRocwogICogc3VtbWFyeSBzZXQKICAqIGRlc2NyaXB0aW9uIHNldAogICogcGFyYW1ldGVycwogICAgKiBkZXNjcmlwdGlvbgogICAgKiBzY2hlbWEgdHlwZQogICAgKiBleGFtcGxlCiAgICAqIGxpbmtzCiAgKiBtZXRob2RzCiAgICAqIHN1bW1hcnkgc2V0CiAgICAqIGRlc2NyaXB0aW9uIHNldAogICAgKiB0YWcgc2V0CiAgICAqIHJlcXVlc3QgdHlwZXMganNvbitmb3JtCiAgICAqIHJlcXVlc3QgYm9keSBkZWZpbnRpb24KICAgICogcmVxdWVzdCBib2R5IGRlc2NyaXB0aW9uIChpbmhlcml0YWJsZSkKICAgICogcmVxdWVzdCBib2R5IGV4YW1wbGUgKGluaGVyaXRhYmxlKQogICAgKiByZXNwb25zZSBzdWNjZXNzIGRlZmluaXRpb24gKGluaGVyaXRhYmxlKQogICAgKiByZXNwb25zZSBzdWNjZXNzIGV4YW1wbGUgKGluaGVyaXRhYmxlKQogICAgKiBsaW5rcwoqIFNjaGVtYXMKICAgICogc3VtbWFyeSBzZXQKICAgICogZGVzY3JpcHRpb24gc2V0CiAgICAqIGV4YW1wbGUgc2V0CiAgICAqIHJlcXVpcmVkIHNldAogICAgKiBsaW5rcwoqIFRhZ3MKICAqIGRldGFpbGVkIGRlc2NyaXB0aW9ucwoKQVBJIENhbGwgQ2hlY2tzCiogV29ya2luZwoqIFNlY3VyZQogICogZGIgZXNjYXBpbmcKICAqIGh0bWwgZmlsdGVyaW5nCiogU3VjY2VzcyBSZXNwb25zZQoqIEVycm9yIFJlc3Nwb25zZXMKKiBPcHRpbWl6ZSBUeXBlcwoKCiogV29ya2luZyBzdGF0dXMgZG9lcyBub3QgaW5jbHVkZSB0aGUgZXhwb3J0L3NvcnRpbmcgcmVsYXRlZCBvcHRpb25zIG9uIHRoZSB2aWV3IHNlcnZpY2UgbGlzdCB0eXBlIHBhZ2VzCgp8IFVybCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgV29ya2luZyB8IEFQSSBDYWxsIHwgQVBJIFNwZWMgfCBCcmVhZGNydW0gfAp8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwgLS0tLS0tLSB8IC0tLS0tLS0tIHwgLS0tLS0tLS0gfCAtLS0tLS0tLS0gfAp8IC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9sb2dpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCAgICAgICAgICAgfAp8IC9yZWdpc3RlciAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCAgICAgICAgICAgfAp8IC9zdWRvLzpzZXNzaW9uSWQgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCAgICAgICAgICAgfAp8IC9hY2NvdW50L2luZm8gICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9hY2NvdW50L3Bhc3MgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9hY2NvdW50L3NldHRpbmdzICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9hY2NvdW50L3VzZXJuYW1lICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9jYXJ0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9jYXJ0Lzo6aWlkcyAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9pbnZvaWNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9wYXltZW50X3R5cGVzICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9wcmVwYXlzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9wYXkvOm1ldGhvZC86aW52b2ljZXMgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC90aWNrZXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC90aWNrZXRzLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC90aWNrZXRzL25ldyAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kbnMvOmlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvYmFubmVyLzppZCAgICAgICAgICAgICAgIHwgWyBdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvYmFubmVycyAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvZmFxICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvbGFuZGluZ19wZyAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvcGF5bWVudF9zZXR1cCAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvcmljaF9yZXBvcnQgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvc2FsZXNfZ3JhcGggICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvc2FsZXNfcmVwb3J0ICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvc3RhdHVzX2xlZ2VuZCAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvdG9zICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvdHJhZmZpY19ncmFwaCAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvd2ViX3RyYWZmaWMgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzL29yZGVyICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC9jb250YWN0ICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC9kbnNzZWMgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC9uYW1lc2VydmVycyAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC9yZW5ldyAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC90cmFuc2ZlciAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC93aG9pcyAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zL29yZGVyICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zL29yZGVyLzpkb21haW4gICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zL29yZGVyLzpkb21haW4vOnJlZ1R5cGUgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL2NhbmNlbCAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL2NoYW5nZV9pcCAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL2ludm9pY2VzICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL3dlbGNvbWVfZW1haWwgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvb3JkZXIgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvY2FuY2VsICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvY2hhbmdlX2lwICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvY2hhbmdlX29zICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvaW52b2ljZXMgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvd2VsY29tZV9lbWFpbCAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy9vcmRlciAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcy9vcmRlci86Y2F0VGFnICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9tYWlsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZC9hbGVydHMgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9tYWlsLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZC9kZW55X3J1bGVzICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9tYWlsLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsL29yZGVyICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQvYmFja3VwICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvYmFja3VwcyAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvY2FuY2VsICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQvY2hhbmdlX3RpbWV6b25lICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvZWplY3RfY2QgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvaW5zZXJ0X2NkICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvaW52b2ljZXMgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQvcmVpbnN0YWxsX29zICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmVzZXRfcGFzc3dvcmQgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmVzdGFydCAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmVzdG9yZSAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmV2ZXJzZV9kbnMgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvc2V0dXBfdm5jICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvc3RhcnQgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvc3RvcCAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvdHJhZmZpY191c2FnZSAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvdmlld19kZXNrdG9wICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvd2VsY29tZV9lbWFpbCAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy9vcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9iYW5kd2lkdGhfZ3JhcGggICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9pcG1pX2xpdmUgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9yZXZlcnNlX2RucyAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzL29yZGVyICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkL2NhbmNlbCAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zc2wvOmlkL2NoYW5nZV9hcHByb3Zlcl9lbWFpbCAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkL2ludm9pY2VzICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zc2wvOmlkL3Jlc2VuZF9hcHByb3Zlcl9lbWFpbCAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkL3dlbGNvbWVfZW1haWwgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9zc2wvb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2JhY2t1cCAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2JhY2t1cHMgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2Jsb2NrX3NtdHAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2J1eV9oZF9zcGFjZSAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2J1eV9pcCAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2NhbmNlbCAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV9ob3N0bmFtZSAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV9yb290X3Bhc3N3b3JkICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV90aW1lem9uZSAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV93ZWJ1em9fcGFzc3dvcmQgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2Rpc2FibGVfY2QgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2Rpc2FibGVfcXVvdGEgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2VqZWN0X2NkICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2VuYWJsZV9xdW90YSAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2luc2VydF9jZCAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2ludm9pY2VzICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3JlaW5zdGFsbF9vcyAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3Jlc2V0X3Bhc3N3b3JkICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3Jlc3RhcnQgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3Jlc3RvcmUgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3JldmVyc2VfZG5zICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3NldHVwX3ZuYyAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3NsaWNlcyAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3N0YXJ0ICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3N0b3AgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3RyYWZmaWNfdXNhZ2UgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3ZpZXdfZGVza3RvcCAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3dlbGNvbWVfZW1haWwgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvYnV5X2lwICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvY2FuY2VsICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvZG93bmxvYWRfYmFja3VwcyAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvaW52b2ljZXMgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvbG9naW4gICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvbWlncmF0aW9uICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvcmV2ZXJzZV9kbnMgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvd2VsY29tZV9lbWFpbCAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy9vcmRlciAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAoKIyMjIEFQSSBSZXNwb25zZSBIVFRQIFN0YXR1cyBDb2RlcwoKIyMjIyBDb21tb25seSBVc2VkIHdpdGggQVBJCgp8IEhUVFAgVmVyYiB8IENSVUQgICAgICAgICAgIHwgRW50aXJlIENvbGxlY3Rpb24gKGUuZy4gL3ZwcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFNwZWNpZmljIEl0ZW0gKGUuZy4gL3Zwcy97aWR9KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAtLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8CnwgUE9TVCAgICAgIHwgQ3JlYXRlICAgICAgICAgfCAyMDEgKENyZWF0ZWQpLCAnTG9jYXRpb24nIGhlYWRlciB3aXRoIGxpbmsgdG8gL2N1c3RvbWVycy97aWR9IGNvbnRhaW5pbmcgbmV3IElELiAgICAgICAgICAgICAgICAgICAgIHwgNDA0IChOb3QgRm91bmQpLCA0MDkgKENvbmZsaWN0KSBpZiByZXNvdXJjZSBhbHJlYWR5IGV4aXN0cy4uICAgICAgICAgICAgICAgfAp8IEdFVCAgICAgICB8IFJlYWQgICAgICAgICAgIHwgMjAwIChPSyksIGxpc3Qgb2YgY3VzdG9tZXJzLiBVc2UgcGFnaW5hdGlvbiwgc29ydGluZyBhbmQgZmlsdGVyaW5nIHRvIG5hdmlnYXRlIGJpZyBsaXN0cy4gICAgICAgICAgICB8IDIwMCAoT0spLCBzaW5nbGUgY3VzdG9tZXIuIDQwNCAoTm90IEZvdW5kKSwgaWYgSUQgbm90IGZvdW5kIG9yIGludmFsaWQuICAgIHwKfCBQVVQgICAgICAgfCBVcGRhdGUvUmVwbGFjZSB8IDQwNSAoTWV0aG9kIE5vdCBBbGxvd2VkKSwgdW5sZXNzIHlvdSB3YW50IHRvIHVwZGF0ZS9yZXBsYWNlIGV2ZXJ5IHJlc291cmNlIGluIHRoZSBlbnRpcmUgY29sbGVjdGlvbi4gfCAyMDAgKE9LKSBvciAyMDQgKE5vIENvbnRlbnQpLiA0MDQgKE5vdCBGb3VuZCksIGlmIElEIG5vdCBmb3VuZCBvciBpbnZhbGlkLiB8CnwgUEFUQ0ggICAgIHwgVXBkYXRlL01vZGlmeSAgfCA0MDUgKE1ldGhvZCBOb3QgQWxsb3dlZCksIHVubGVzcyB5b3Ugd2FudCB0byBtb2RpZnkgdGhlIGNvbGxlY3Rpb24gaXRzZWxmLiAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMjAwIChPSykgb3IgMjA0IChObyBDb250ZW50KS4gNDA0IChOb3QgRm91bmQpLCBpZiBJRCBub3QgZm91bmQgb3IgaW52YWxpZC4gfAp8IERFTEVURSAgICB8IERlbGV0ZSAgICAgICAgIHwgNDA1IChNZXRob2QgTm90IEFsbG93ZWQpLCB1bmxlc3MgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSB3aG9sZSBjb2xsZWN0aW9uLS0tbm90IG9mdGVuIGRlc2lyYWJsZS4gICAgICB8IDIwMCAoT0spLiA0MDQgKE5vdCBGb3VuZCksIGlmIElEIG5vdCBmb3VuZCBvciBpbnZhbGlkLiAgICAgICAgICAgICAgICAgICAgIHwKCiogKioyMDAgKE9LKSoqIEl0IGluZGljYXRlcyB0aGF0IHRoZSBSRVNUIEFQSSBzdWNjZXNzZnVsbHkgY2FycmllZCBvdXQgd2hhdGV2ZXIgYWN0aW9uIHRoZSBjbGllbnQgcmVxdWVzdGVkIGFuZCB0aGF0IG5vIG1vcmUgc3BlY2lmaWMgY29kZSBpbiB0aGUgMnh4IHNlcmllcyBpcyBhcHByb3ByaWF0ZS4gVW5saWtlIHRoZSAyMDQgc3RhdHVzIGNvZGUsIGEgMjAwIHJlc3BvbnNlIHNob3VsZCBpbmNsdWRlIGEgcmVzcG9uc2UgYm9keS4gVGhlIGluZm9ybWF0aW9uIHJldHVybmVkIHdpdGggdGhlIHJlc3BvbnNlIGlzIGRlcGVuZGVudCBvbiB0aGUgbWV0aG9kIHVzZWQgaW4gdGhlIHJlcXVlc3QsIGZvciBleGFtcGxlOiAgR0VUIGFuIGVudGl0eSBjb3JyZXNwb25kaW5nIHRvIHRoZSByZXF1ZXN0ZWQgcmVzb3VyY2UgaXMgc2VudCBpbiB0aGUgcmVzcG9uc2UsIEhFQUQgdGhlIGVudGl0eS1oZWFkZXIgZmllbGRzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHJlcXVlc3RlZCByZXNvdXJjZSBhcmUgc2VudCBpbiB0aGUgcmVzcG9uc2Ugd2l0aG91dCBhbnkgbWVzc2FnZS1ib2R5LCBQT1NUIGFuIGVudGl0eSBkZXNjcmliaW5nIG9yIGNvbnRhaW5pbmcgdGhlIHJlc3VsdCBvZiB0aGUgYWN0aW9uLCBhbmQgVFJBQ0UgYW4gZW50aXR5IGNvbnRhaW5pbmcgdGhlIHJlcXVlc3QgbWVzc2FnZSBhcyByZWNlaXZlZCBieSB0aGUgZW5kIHNlcnZlci4KKiAqKjIwMSAoQ3JlYXRlZCkqKiBBIFJFU1QgQVBJIHJlc3BvbmRzIHdpdGggdGhlIDIwMSBzdGF0dXMgY29kZSB3aGVuZXZlciBhIHJlc291cmNlIGlzIGNyZWF0ZWQgaW5zaWRlIGEgY29sbGVjdGlvbi4gVGhlcmUgbWF5IGFsc28gYmUgdGltZXMgd2hlbiBhIG5ldyByZXNvdXJjZSBpcyBjcmVhdGVkIGFzIGEgcmVzdWx0IG9mIHNvbWUgY29udHJvbGxlciBhY3Rpb24sIGluIHdoaWNoIGNhc2UgMjAxIHdvdWxkIGFsc28gYmUgYW4gYXBwcm9wcmlhdGUgcmVzcG9uc2UuIFRoZSBuZXdseSBjcmVhdGVkIHJlc291cmNlIGNhbiBiZSByZWZlcmVuY2VkIGJ5IHRoZSBVUkkocykgcmV0dXJuZWQgaW4gdGhlIGVudGl0eSBvZiB0aGUgcmVzcG9uc2UsIHdpdGggdGhlIG1vc3Qgc3BlY2lmaWMgVVJJIGZvciB0aGUgcmVzb3VyY2UgZ2l2ZW4gYnkgYSBMb2NhdGlvbiBoZWFkZXIgZmllbGQuIFRoZSBvcmlnaW4gc2VydmVyIE1VU1QgY3JlYXRlIHRoZSByZXNvdXJjZSBiZWZvcmUgcmV0dXJuaW5nIHRoZSAyMDEgc3RhdHVzIGNvZGUuIElmIHRoZSBhY3Rpb24gY2Fubm90IGJlIGNhcnJpZWQgb3V0IGltbWVkaWF0ZWx5LCB0aGUgc2VydmVyIFNIT1VMRCByZXNwb25kIHdpdGggYSAyMDIgKEFjY2VwdGVkKSByZXNwb25zZSBpbnN0ZWFkLgoqICoqMjAyIChBY2NlcHRlZCkqKiBBIDIwMiByZXNwb25zZSBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgYWN0aW9ucyB0aGF0IHRha2UgYSBsb25nIHdoaWxlIHRvIHByb2Nlc3MuIEl0IGluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0IGhhcyBiZWVuIGFjY2VwdGVkIGZvciBwcm9jZXNzaW5nLCBidXQgdGhlIHByb2Nlc3NpbmcgaGFzIG5vdCBiZWVuIGNvbXBsZXRlZC4gVGhlIHJlcXVlc3QgbWlnaHQgb3IgbWlnaHQgbm90IGJlIGV2ZW50dWFsbHkgYWN0ZWQgdXBvbiwgb3IgZXZlbiBtYXliZSBkaXNhbGxvd2VkIHdoZW4gcHJvY2Vzc2luZyBvY2N1cnMuIEl0cyBwdXJwb3NlIGlzIHRvIGFsbG93IGEgc2VydmVyIHRvIGFjY2VwdCBhIHJlcXVlc3QgZm9yIHNvbWUgb3RoZXIgcHJvY2VzcyAocGVyaGFwcyBhIGJhdGNoLW9yaWVudGVkIHByb2Nlc3MgdGhhdCBpcyBvbmx5IHJ1biBvbmNlIHBlciBkYXkpIHdpdGhvdXQgcmVxdWlyaW5nIHRoYXQgdGhlIHVzZXIgYWdlbnQncyBjb25uZWN0aW9uIHRvIHRoZSBzZXJ2ZXIgcGVyc2lzdCB1bnRpbCB0aGUgcHJvY2VzcyBpcyBjb21wbGV0ZWQuIFRoZSBlbnRpdHkgcmV0dXJuZWQgd2l0aCB0aGlzIHJlc3BvbnNlIFNIT1VMRCBpbmNsdWRlIGFuIGluZGljYXRpb24gb2YgdGhlIHJlcXVlc3QncyBjdXJyZW50IHN0YXR1cyBhbmQgZWl0aGVyIGEgcG9pbnRlciB0byBhIHN0YXR1cyBtb25pdG9yIChqb2IgcXVldWUgbG9jYXRpb24pIG9yIHNvbWUgZXN0aW1hdGUgb2Ygd2hlbiB0aGUgdXNlciBjYW4gZXhwZWN0IHRoZSByZXF1ZXN0IHRvIGJlIGZ1bGZpbGxlZC4KKiAqKjIwNCAoTm8gQ29udGVudCkqKiBUaGUgMjA0IHN0YXR1cyBjb2RlIGlzIHVzdWFsbHkgc2VudCBvdXQgaW4gcmVzcG9uc2UgdG8gYSBgUFVUYCwgYFBPU1RgLCBvciBgREVMRVRFYCByZXF1ZXN0IHdoZW4gdGhlIFJFU1QgQVBJIGRlY2xpbmVzIHRvIHNlbmQgYmFjayBhbnkgc3RhdHVzIG1lc3NhZ2Ugb3IgcmVwcmVzZW50YXRpb24gaW4gdGhlIHJlc3BvbnNlIG1lc3NhZ2UncyBib2R5LiBBbiBBUEkgbWF5IGFsc28gc2VuZCAyMDQgaW4gY29uanVuY3Rpb24gd2l0aCBhIEdFVCByZXF1ZXN0IHRvIGluZGljYXRlIHRoYXQgdGhlIHJlcXVlc3RlZCByZXNvdXJjZSBleGlzdHMsIGJ1dCBoYXMgbm8gc3RhdGUgcmVwcmVzZW50YXRpb24gdG8gaW5jbHVkZSBpbiB0aGUgYm9keS4gSWYgdGhlIGNsaWVudCBpcyBhIHVzZXIgYWdlbnQsIGl0IFNIT1VMRCBOT1QgY2hhbmdlIGl0cyBkb2N1bWVudCB2aWV3IGZyb20gdGhhdCB3aGljaCBjYXVzZWQgdGhlIHJlcXVlc3QgdG8gYmUgc2VudC4gVGhpcyByZXNwb25zZSBpcyBwcmltYXJpbHkgaW50ZW5kZWQgdG8gYWxsb3cgaW5wdXQgZm9yIGFjdGlvbnMgdG8gdGFrZSBwbGFjZSB3aXRob3V0IGNhdXNpbmcgYSBjaGFuZ2UgdG8gdGhlIHVzZXIgYWdlbnQncyBhY3RpdmUgZG9jdW1lbnQgdmlldy4gSG93ZXZlciwgYW55IG5ldyBvciB1cGRhdGVkIG1ldGFpbmZvcm1hdGlvbiBTSE9VTEQgYmUgYXBwbGllZCB0byB0aGUgZG9jdW1lbnQgY3VycmVudGx5IGluIHRoZSB1c2VyIGFnZW50J3MgZHluYW1pYyB2aWV3LiBUaGUgMjA0IHJlc3BvbnNlIE1VU1QgTk9UIGluY2x1ZGUgYSBtZXNzYWdlLWJvZHkgYW5kIHRodXMgaXMgYWx3YXlzIHRlcm1pbmF0ZWQgYnkgdGhlIGZpcnN0IGVtcHR5IGxpbmUgYWZ0ZXIgdGhlIGhlYWRlciBmaWVsZHMuCiogKiozMDEgKE1vdmVkIFBlcm1hbmVudGx5KSoqIFRoZSAzMDEgc3RhdHVzIGNvZGUgaW5kaWNhdGVzIHRoYXQgdGhlIFJFU1QgQVBJJ3MgcmVzb3VyY2UgbW9kZWwgaGFzIGJlZW4gc2lnbmlmaWNhbnRseSByZWRlc2lnbmVkLCBhbmQgYSBuZXcgcGVybWFuZW50IFVSSSBoYXMgYmVlbiBhc3NpZ25lZCB0byB0aGUgY2xpZW50J3MgcmVxdWVzdGVkIHJlc291cmNlLiBUaGUgUkVTVCBBUEkgc2hvdWxkIHNwZWNpZnkgdGhlIG5ldyBVUkkgaW4gdGhlIHJlc3BvbnNlJ3MgTG9jYXRpb24gaGVhZGVyLCBhbmQgYWxsIGZ1dHVyZSByZXF1ZXN0cyBzaG91bGQgYmUgZGlyZWN0ZWQgdG8gdGhlIGdpdmVuIFVSSS4gWW91IHdpbGwgaGFyZGx5IHVzZSB0aGlzIHJlc3BvbnNlIGNvZGUgaW4geW91ciBBUEkgYXMgeW91IGNhbiBhbHdheXMgdXNlIHRoZSBBUEkgdmVyc2lvbmluZyBmb3IgdGhlIG5ldyBBUEkgd2hpbGUgcmV0YWluaW5nIHRoZSBvbGQgb25lLgoqICoqMzAyIChGb3VuZCkqKiBUaGUgSFRUUCByZXNwb25zZSBzdGF0dXMgY29kZSAzMDIgRm91bmQgaXMgYSBjb21tb24gd2F5IG9mIHBlcmZvcm1pbmcgVVJMIHJlZGlyZWN0aW9uLiBBbiBIVFRQIHJlc3BvbnNlIHdpdGggdGhpcyBzdGF0dXMgY29kZSB3aWxsIGFkZGl0aW9uYWxseSBwcm92aWRlIGEgVVJMIGluIHRoZSBMb2NhdGlvbiBoZWFkZXIgZmllbGQuIFRoZSB1c2VyIGFnZW50IChlLmcuLCBhIHdlYiBicm93c2VyKSBpcyBpbnZpdGVkIGJ5IGEgcmVzcG9uc2Ugd2l0aCB0aGlzIGNvZGUgdG8gbWFrZSBhIHNlY29uZC4gT3RoZXJ3aXNlIGlkZW50aWNhbCwgcmVxdWVzdCB0byB0aGUgbmV3IFVSTCBzcGVjaWZpZWQgaW4gdGhlIGxvY2F0aW9uIGZpZWxkLiBNYW55IHdlYiBicm93c2VycyBpbXBsZW1lbnRlZCB0aGlzIGNvZGUgaW4gYSBtYW5uZXIgdGhhdCB2aW9sYXRlZCB0aGlzIHN0YW5kYXJkLCBjaGFuZ2luZyB0aGUgcmVxdWVzdCB0eXBlIG9mIHRoZSBuZXcgcmVxdWVzdCB0byBHRVQsIHJlZ2FyZGxlc3Mgb2YgdGhlIHR5cGUgZW1wbG95ZWQgaW4gdGhlIG9yaWdpbmFsIHJlcXVlc3QgKGUuZy4sIFBPU1QpLiBSRkMgMTk0NSBhbmQgUkZDIDIwNjggc3BlY2lmeSB0aGF0IHRoZSBjbGllbnQgaXMgbm90IGFsbG93ZWQgdG8gY2hhbmdlIHRoZSBtZXRob2Qgb24gdGhlIHJlZGlyZWN0ZWQgcmVxdWVzdC4gVGhlIHN0YXR1cyBjb2RlcyAzMDMgYW5kIDMwNyBoYXZlIGJlZW4gYWRkZWQgZm9yIHNlcnZlcnMgdGhhdCB3aXNoIHRvIG1ha2UgdW5hbWJpZ3VvdXNseSBjbGVhciB3aGljaCBraW5kIG9mIHJlYWN0aW9uIGlzIGV4cGVjdGVkIG9mIHRoZSBjbGllbnQuCiogKiozMDMgKFNlZSBPdGhlcikqKiBBIDMwMyByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCBhIGNvbnRyb2xsZXIgcmVzb3VyY2UgaGFzIGZpbmlzaGVkIGl0cyB3b3JrLCBidXQgaW5zdGVhZCBvZiBzZW5kaW5nIGEgcG90ZW50aWFsbHkgdW53YW50ZWQgcmVzcG9uc2UgYm9keSwgaXQgc2VuZHMgdGhlIGNsaWVudCB0aGUgVVJJIG9mIGEgcmVzcG9uc2UgcmVzb3VyY2UuIFRoZSByZXNwb25zZSBjYW4gYmUgdGhlIFVSSSBvZiB0aGUgdGVtcG9yYXJ5IHN0YXR1cyBtZXNzYWdlLCBvciB0aGUgVVJJIHRvIHNvbWUgYWxyZWFkeSBleGlzdGluZywgbW9yZSBwZXJtYW5lbnQsIHJlc291cmNlLiBHZW5lcmFsbHkgc3BlYWtpbmcsIHRoZSAzMDMgc3RhdHVzIGNvZGUgYWxsb3dzIGEgUkVTVCBBUEkgdG8gc2VuZCBhIHJlZmVyZW5jZSB0byBhIHJlc291cmNlIHdpdGhvdXQgZm9yY2luZyB0aGUgY2xpZW50IHRvIGRvd25sb2FkIGl0cyBzdGF0ZS4gSW5zdGVhZCwgdGhlIGNsaWVudCBtYXkgc2VuZCBhIEdFVCByZXF1ZXN0IHRvIHRoZSB2YWx1ZSBvZiB0aGUgTG9jYXRpb24gaGVhZGVyLiBUaGUgMzAzIHJlc3BvbnNlIE1VU1QgTk9UIGJlIGNhY2hlZCwgYnV0IHRoZSByZXNwb25zZSB0byB0aGUgc2Vjb25kIChyZWRpcmVjdGVkKSByZXF1ZXN0IG1pZ2h0IGJlIGNhY2hlYWJsZS4KKiAqKjMwNCAoTm90IE1vZGlmaWVkKSoqIFRoaXMgc3RhdHVzIGNvZGUgaXMgc2ltaWxhciB0byAyMDQgKCJObyBDb250ZW50IikgaW4gdGhhdCB0aGUgcmVzcG9uc2UgYm9keSBtdXN0IGJlIGVtcHR5LiBUaGUgY3JpdGljYWwgZGlzdGluY3Rpb24gaXMgdGhhdCAyMDQgaXMgdXNlZCB3aGVuIHRoZXJlIGlzIG5vdGhpbmcgdG8gc2VuZCBpbiB0aGUgYm9keSwgd2hlcmVhcyAzMDQgaXMgdXNlZCB3aGVuIHRoZSByZXNvdXJjZSBoYXMgbm90IGJlZW4gbW9kaWZpZWQgc2luY2UgdGhlIHZlcnNpb24gc3BlY2lmaWVkIGJ5IHRoZSByZXF1ZXN0IGhlYWRlcnMgSWYtTW9kaWZpZWQtU2luY2Ugb3IgSWYtTm9uZS1NYXRjaC4gSW4gc3VjaCBhIGNhc2UsIHRoZXJlIGlzIG5vIG5lZWQgdG8gcmV0cmFuc21pdCB0aGUgcmVzb3VyY2Ugc2luY2UgdGhlIGNsaWVudCBzdGlsbCBoYXMgYSBwcmV2aW91c2x5LWRvd25sb2FkZWQgY29weS4gVXNpbmcgdGhpcyBzYXZlcyBiYW5kd2lkdGggYW5kIHJlcHJvY2Vzc2luZyBvbiBib3RoIHRoZSBzZXJ2ZXIgYW5kIGNsaWVudCwgYXMgb25seSB0aGUgaGVhZGVyIGRhdGEgbXVzdCBiZSBzZW50IGFuZCByZWNlaXZlZCBpbiBjb21wYXJpc29uIHRvIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBiZWluZyByZS1wcm9jZXNzZWQgYnkgdGhlIHNlcnZlciwgdGhlbiBzZW50IGFnYWluIHVzaW5nIG1vcmUgYmFuZHdpZHRoIG9mIHRoZSBzZXJ2ZXIgYW5kIGNsaWVudC4KKiAqKjMwNyAoVGVtcG9yYXJ5IFJlZGlyZWN0KSoqIEEgMzA3IHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRoZSBSRVNUIEFQSSBpcyBub3QgZ29pbmcgdG8gcHJvY2VzcyB0aGUgY2xpZW50J3MgcmVxdWVzdC4gSW5zdGVhZCwgdGhlIGNsaWVudCBzaG91bGQgcmVzdWJtaXQgdGhlIHJlcXVlc3QgdG8gdGhlIFVSSSBzcGVjaWZpZWQgYnkgdGhlIHJlc3BvbnNlIG1lc3NhZ2UncyBMb2NhdGlvbiBoZWFkZXIuIEhvd2V2ZXIsIGZ1dHVyZSByZXF1ZXN0cyBzaG91bGQgc3RpbGwgdXNlIHRoZSBvcmlnaW5hbCBVUkkuIEEgUkVTVCBBUEkgY2FuIHVzZSB0aGlzIHN0YXR1cyBjb2RlIHRvIGFzc2lnbiBhIHRlbXBvcmFyeSBVUkkgdG8gdGhlIGNsaWVudCdzIHJlcXVlc3RlZCByZXNvdXJjZS4gRm9yIGV4YW1wbGUsIGEgMzA3IHJlc3BvbnNlIGNhbiBiZSB1c2VkIHRvIHNoaWZ0IGEgY2xpZW50IHJlcXVlc3Qgb3ZlciB0byBhbm90aGVyIGhvc3QuIFRoZSB0ZW1wb3JhcnkgVVJJIFNIT1VMRCBiZSBnaXZlbiBieSB0aGUgTG9jYXRpb24gZmllbGQgaW4gdGhlIHJlc3BvbnNlLiBVbmxlc3MgdGhlIHJlcXVlc3QgbWV0aG9kIHdhcyBIRUFELCB0aGUgZW50aXR5IG9mIHRoZSByZXNwb25zZSBTSE9VTEQgY29udGFpbiBhIHNob3J0IGh5cGVydGV4dCBub3RlIHdpdGggYSBoeXBlcmxpbmsgdG8gdGhlIG5ldyBVUkkocykuIElmIHRoZSAzMDcgc3RhdHVzIGNvZGUgaXMgcmVjZWl2ZWQgaW4gcmVzcG9uc2UgdG8gYSByZXF1ZXN0IG90aGVyIHRoYW4gYEdFVGAgb3IgYEhFQURgLCB0aGUgdXNlciBhZ2VudCBNVVNUIE5PVCBhdXRvbWF0aWNhbGx5IHJlZGlyZWN0IHRoZSByZXF1ZXN0IHVubGVzcyBpdCBjYW4gYmUgY29uZmlybWVkIGJ5IHRoZSB1c2VyLCBzaW5jZSB0aGlzIG1pZ2h0IGNoYW5nZSB0aGUgY29uZGl0aW9ucyB1bmRlciB3aGljaCB0aGUgcmVxdWVzdCB3YXMgaXNzdWVkLgoqICoqNDAwIChCYWQgUmVxdWVzdCkqKiA0MDAgaXMgdGhlIGdlbmVyaWMgY2xpZW50LXNpZGUgZXJyb3Igc3RhdHVzLCB1c2VkIHdoZW4gbm8gb3RoZXIgNHh4IGVycm9yIGNvZGUgaXMgYXBwcm9wcmlhdGUuIEVycm9ycyBjYW4gYmUgbGlrZSBtYWxmb3JtZWQgcmVxdWVzdCBzeW50YXgsIGludmFsaWQgcmVxdWVzdCBtZXNzYWdlIHBhcmFtZXRlcnMsIG9yIGRlY2VwdGl2ZSByZXF1ZXN0IHJvdXRpbmcgZXRjLiBUaGUgY2xpZW50IFNIT1VMRCBOT1QgcmVwZWF0IHRoZSByZXF1ZXN0IHdpdGhvdXQgbW9kaWZpY2F0aW9ucy4KKiAqKjQwMSAoVW5hdXRob3JpemVkKSoqIEEgNDAxIGVycm9yIHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRoZSBjbGllbnQgdHJpZWQgdG8gb3BlcmF0ZSBvbiBhIHByb3RlY3RlZCByZXNvdXJjZSB3aXRob3V0IHByb3ZpZGluZyB0aGUgcHJvcGVyIGF1dGhvcml6YXRpb24uIEl0IG1heSBoYXZlIHByb3ZpZGVkIHRoZSB3cm9uZyBjcmVkZW50aWFscyBvciBub25lIGF0IGFsbC4gVGhlIHJlc3BvbnNlIG11c3QgaW5jbHVkZSBhIFdXVy1BdXRoZW50aWNhdGUgaGVhZGVyIGZpZWxkIGNvbnRhaW5pbmcgYSBjaGFsbGVuZ2UgYXBwbGljYWJsZSB0byB0aGUgcmVxdWVzdGVkIHJlc291cmNlLiBUaGUgY2xpZW50IE1BWSByZXBlYXQgdGhlIHJlcXVlc3Qgd2l0aCBhIHN1aXRhYmxlIEF1dGhvcml6YXRpb24gaGVhZGVyIGZpZWxkLiBJZiB0aGUgcmVxdWVzdCBhbHJlYWR5IGluY2x1ZGVkIEF1dGhvcml6YXRpb24gY3JlZGVudGlhbHMsIHRoZW4gdGhlIDQwMSByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCBhdXRob3JpemF0aW9uIGhhcyBiZWVuIHJlZnVzZWQgZm9yIHRob3NlIGNyZWRlbnRpYWxzLiBJZiB0aGUgNDAxIHJlc3BvbnNlIGNvbnRhaW5zIHRoZSBzYW1lIGNoYWxsZW5nZSBhcyB0aGUgcHJpb3IgcmVzcG9uc2UsIGFuZCB0aGUgdXNlciBhZ2VudCBoYXMgYWxyZWFkeSBhdHRlbXB0ZWQgYXV0aGVudGljYXRpb24gYXQgbGVhc3Qgb25jZSwgdGhlbiB0aGUgdXNlciBTSE9VTEQgYmUgcHJlc2VudGVkIHRoZSBlbnRpdHkgdGhhdCB3YXMgZ2l2ZW4gaW4gdGhlIHJlc3BvbnNlLCBzaW5jZSB0aGF0IGVudGl0eSBtaWdodCBpbmNsdWRlIHJlbGV2YW50IGRpYWdub3N0aWMgaW5mb3JtYXRpb24uCiogKio0MDMgKEZvcmJpZGRlbikqKiBBIDQwMyBlcnJvciByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCB0aGUgY2xpZW50J3MgcmVxdWVzdCBpcyBmb3JtZWQgY29ycmVjdGx5LCBidXQgdGhlIFJFU1QgQVBJIHJlZnVzZXMgdG8gaG9ub3IgaXQsIGkuZS4sIHRoZSB1c2VyIGRvZXMgbm90IGhhdmUgdGhlIG5lY2Vzc2FyeSBwZXJtaXNzaW9ucyBmb3IgdGhlIHJlc291cmNlLiBBIDQwMyByZXNwb25zZSBpcyBub3QgYSBjYXNlIG9mIGluc3VmZmljaWVudCBjbGllbnQgY3JlZGVudGlhbHM7IHRoYXQgd291bGQgYmUgNDAxICgiVW5hdXRob3JpemVkIikuIEF1dGhlbnRpY2F0aW9uIHdpbGwgbm90IGhlbHAsIGFuZCB0aGUgcmVxdWVzdCBTSE9VTEQgTk9UIGJlIHJlcGVhdGVkLiBVbmxpa2UgYSA0MDEgVW5hdXRob3JpemVkIHJlc3BvbnNlLCBhdXRoZW50aWNhdGluZyB3aWxsIG1ha2Ugbm8gZGlmZmVyZW5jZS4KKiAqKjQwNCAoTm90IEZvdW5kKSoqIFRoZSA0MDQgZXJyb3Igc3RhdHVzIGNvZGUgaW5kaWNhdGVzIHRoYXQgdGhlIFJFU1QgQVBJIGNhbid0IG1hcCB0aGUgY2xpZW50J3MgVVJJIHRvIGEgcmVzb3VyY2UgYnV0IG1heSBiZSBhdmFpbGFibGUgaW4gdGhlIGZ1dHVyZS4gU3Vic2VxdWVudCByZXF1ZXN0cyBieSB0aGUgY2xpZW50IGFyZSBwZXJtaXNzaWJsZS4gTm8gaW5kaWNhdGlvbiBpcyBnaXZlbiBvZiB3aGV0aGVyIHRoZSBjb25kaXRpb24gaXMgdGVtcG9yYXJ5IG9yIHBlcm1hbmVudC4gVGhlIDQxMCAoR29uZSkgc3RhdHVzIGNvZGUgU0hPVUxEIGJlIHVzZWQgaWYgdGhlIHNlcnZlciBrbm93cywgdGhyb3VnaCBzb21lIGludGVybmFsbHkgY29uZmlndXJhYmxlIG1lY2hhbmlzbSwgdGhhdCBhbiBvbGQgcmVzb3VyY2UgaXMgcGVybWFuZW50bHkgdW5hdmFpbGFibGUgYW5kIGhhcyBubyBmb3J3YXJkaW5nIGFkZHJlc3MuIFRoaXMgc3RhdHVzIGNvZGUgaXMgY29tbW9ubHkgdXNlZCB3aGVuIHRoZSBzZXJ2ZXIgZG9lcyBub3Qgd2lzaCB0byByZXZlYWwgZXhhY3RseSB3aHkgdGhlIHJlcXVlc3QgaGFzIGJlZW4gcmVmdXNlZCwgb3Igd2hlbiBubyBvdGhlciByZXNwb25zZSBpcyBhcHBsaWNhYmxlLgoqICoqNDA1IChNZXRob2QgTm90IEFsbG93ZWQpKiogVGhlIEFQSSByZXNwb25kcyB3aXRoIGEgNDA1IGVycm9yIHRvIGluZGljYXRlIHRoYXQgdGhlIGNsaWVudCB0cmllZCB0byB1c2UgYW4gSFRUUCBtZXRob2QgdGhhdCB0aGUgcmVzb3VyY2UgZG9lcyBub3QgYWxsb3cuIEZvciBpbnN0YW5jZSwgYSByZWFkLW9ubHkgcmVzb3VyY2UgY291bGQgc3VwcG9ydCBvbmx5IEdFVCBhbmQgSEVBRCwgd2hpbGUgYSBjb250cm9sbGVyIHJlc291cmNlIG1pZ2h0IGFsbG93IEdFVCBhbmQgUE9TVCwgYnV0IG5vdCBQVVQgb3IgREVMRVRFLiBBIDQwNSByZXNwb25zZSBtdXN0IGluY2x1ZGUgdGhlIEFsbG93IGhlYWRlciwgd2hpY2ggbGlzdHMgdGhlIEhUVFAgbWV0aG9kcyB0aGF0IHRoZSByZXNvdXJjZSBzdXBwb3J0cy4gRm9yIGV4YW1wbGU6IEFsbG93OiBHRVQsIFBPU1QKKiAqKjQwNiAoTm90IEFjY2VwdGFibGUpKiogVGhlIDQwNiBlcnJvciByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCB0aGUgQVBJIGlzIG5vdCBhYmxlIHRvIGdlbmVyYXRlIGFueSBvZiB0aGUgY2xpZW50J3MgcHJlZmVycmVkIG1lZGlhIHR5cGVzLCBhcyBpbmRpY2F0ZWQgYnkgdGhlIEFjY2VwdCByZXF1ZXN0IGhlYWRlci4gRm9yIGV4YW1wbGUsIGEgY2xpZW50IHJlcXVlc3QgZm9yIGRhdGEgZm9ybWF0dGVkIGFzIGBhcHBsaWNhdGlvbi94bWxgIHdpbGwgcmVjZWl2ZSBhIDQwNiByZXNwb25zZSBpZiB0aGUgQVBJIGlzIG9ubHkgd2lsbGluZyB0byBmb3JtYXQgZGF0YSBhcyBgYXBwbGljYXRpb24vanNvbmAuIElmIHRoZSByZXNwb25zZSBjb3VsZCBiZSB1bmFjY2VwdGFibGUsIGEgdXNlciBhZ2VudCBTSE9VTEQgdGVtcG9yYXJpbHkgc3RvcCByZWNlaXB0IG9mIG1vcmUgZGF0YSBhbmQgcXVlcnkgdGhlIHVzZXIgZm9yIGEgZGVjaXNpb24gb24gZnVydGhlciBhY3Rpb25zLgoqICoqNDEyIChQcmVjb25kaXRpb24gRmFpbGVkKSoqIFRoZSA0MTIgZXJyb3IgcmVzcG9uc2UgaW5kaWNhdGVzIHRoYXQgdGhlIGNsaWVudCBzcGVjaWZpZWQgb25lIG9yIG1vcmUgcHJlY29uZGl0aW9ucyBpbiBpdHMgcmVxdWVzdCBoZWFkZXJzLCBlZmZlY3RpdmVseSB0ZWxsaW5nIHRoZSBSRVNUIEFQSSB0byBjYXJyeSBvdXQgaXRzIHJlcXVlc3Qgb25seSBpZiBjZXJ0YWluIGNvbmRpdGlvbnMgd2VyZSBtZXQuIEEgNDEyIHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRob3NlIGNvbmRpdGlvbnMgd2VyZSBub3QgbWV0LCBzbyBpbnN0ZWFkIG9mIGNhcnJ5aW5nIG91dCB0aGUgcmVxdWVzdCwgdGhlIEFQSSBzZW5kcyB0aGlzIHN0YXR1cyBjb2RlLgoqICoqNDE1IChVbnN1cHBvcnRlZCBNZWRpYSBUeXBlKSoqIFRoZSA0MTUgZXJyb3IgcmVzcG9uc2UgaW5kaWNhdGVzIHRoYXQgdGhlIEFQSSBpcyBub3QgYWJsZSB0byBwcm9jZXNzIHRoZSBjbGllbnQncyBzdXBwbGllZCBtZWRpYSB0eXBlLCBhcyBpbmRpY2F0ZWQgYnkgdGhlIENvbnRlbnQtVHlwZSByZXF1ZXN0IGhlYWRlci4gRm9yIGV4YW1wbGUsIGEgY2xpZW50IHJlcXVlc3QgaW5jbHVkaW5nIGRhdGEgZm9ybWF0dGVkIGFzIGBhcHBsaWNhdGlvbi94bWxgIHdpbGwgcmVjZWl2ZSBhIDQxNSByZXNwb25zZSBpZiB0aGUgQVBJIGlzIG9ubHkgd2lsbGluZyB0byBwcm9jZXNzIGRhdGEgZm9ybWF0dGVkIGFzIGBhcHBsaWNhdGlvbi9qc29uYC4gRm9yIGV4YW1wbGUsIHRoZSBjbGllbnQgdXBsb2FkcyBhbiBpbWFnZSBhcyBpbWFnZS9zdmcreG1sLCBidXQgdGhlIHNlcnZlciByZXF1aXJlcyB0aGF0IGltYWdlcyB1c2UgYSBkaWZmZXJlbnQgZm9ybWF0LgoqICoqNTAwIChJbnRlcm5hbCBTZXJ2ZXIgRXJyb3IpKiogNTAwIGlzIHRoZSBnZW5lcmljIFJFU1QgQVBJIGVycm9yIHJlc3BvbnNlLiBNb3N0IHdlYiBmcmFtZXdvcmtzIGF1dG9tYXRpY2FsbHkgcmVzcG9uZCB3aXRoIHRoaXMgcmVzcG9uc2Ugc3RhdHVzIGNvZGUgd2hlbmV2ZXIgdGhleSBleGVjdXRlIHNvbWUgcmVxdWVzdCBoYW5kbGVyIGNvZGUgdGhhdCByYWlzZXMgYW4gZXhjZXB0aW9uLiBBIDUwMCBlcnJvciBpcyBuZXZlciB0aGUgY2xpZW50J3MgZmF1bHQsIGFuZCB0aGVyZWZvcmUsIGl0IGlzIHJlYXNvbmFibGUgZm9yIHRoZSBjbGllbnQgdG8gcmV0cnkgdGhlIHNhbWUgcmVxdWVzdCB0aGF0IHRyaWdnZXJlZCB0aGlzIHJlc3BvbnNlIGFuZCBob3BlIHRvIGdldCBhIGRpZmZlcmVudCByZXNwb25zZS4gVGhlIEFQSSByZXNwb25zZSBpcyB0aGUgZ2VuZXJpYyBlcnJvciBtZXNzYWdlLCBnaXZlbiB3aGVuIGFuIHVuZXhwZWN0ZWQgY29uZGl0aW9uIHdhcyBlbmNvdW50ZXJlZCBhbmQgbm8gbW9yZSBzcGVjaWZpYyBtZXNzYWdlIGlzIHN1aXRhYmxlLgoqICoqNTAxIChOb3QgSW1wbGVtZW50ZWQpKiogVGhlIHNlcnZlciBlaXRoZXIgZG9lcyBub3QgcmVjb2duaXplIHRoZSByZXF1ZXN0IG1ldGhvZCwgb3IgaXQgY2Fubm90IGZ1bGZpbGwgdGhlIHJlcXVlc3QuIFVzdWFsbHksIHRoaXMgaW1wbGllcyBmdXR1cmUgYXZhaWxhYmlsaXR5IChlLmcuLCBhIG5ldyBmZWF0dXJlIG9mIGEgd2ViLXNlcnZpY2UgQVBJKS4KCiMjIyBIb3cgaXQgV29ya3MKCldlIHVzZSBWdWUgMyB3aXRoIHRoZSBDb21wb3NpdGlvbiBBUEkgdG8gcHJvdmlkZSBhbiBlbnRpcmUgd2Vic2l0ZS9hcHBsaWNhdGlvbiBpbiBhIHNpbmdsZSBwYWdlLiAgVGhpcyBpcyBkb25lIHVzaW5nIGEgY29tYmluYXRpb24gb2YgVnVlIFNGQydzIChTaW5nbGUgRmlsZSBDb21wb25lbnRzKSB3aGljaCBhbmQgdGhlIFZ1ZSBSb3V0ZXIgdG8gY2hhbmdlIHRoZSB1cmwgaW4gdGhlIGJyb3dzZXIgd2l0aG91dCBhY3R1YWxseSBuYXZpZ2F0aW5nIHRvIGEgbmV3IHBhZ2UuCgpWYXJpYWJsZXMgYXJlIG1vc3RseSBoYW5kbGVkIGJ5IHJlZmVyZW5jZSAobGlrZSBhIHBvaW50ZXIpLiAgVGhpcyBhbGxvd3MgdXMgdG8gcGFzcyBhcm91bmQgdmFyaWFibGVzIHRoYXQgYXJlIHVrZXB0IHVwIHRvIGRhdGUgd2hlbiBjaGFuZ2VkIGluIG90aGVyIHNlY3Rpb25zIG9mIHRoZSBzaXRlLgoKIyMjIyBDb3JlIEZ1bmN0aW9uYWxpdHkKClRoZXNlIGFyZSB0aGUgbGlicyB3aGljaCBwb3dlciB0aGUgbWFqb3JpdHkgb2YgdGhlIHNpdGVzIGZ1bmN0aW9uYWxpdHkuICBZb3Ugc2hvdWxkIGF0IGxlYXN0IGJyZWlmbHkgcmVhZCBvcHZlciBlYWNoIG9mIHRoZW0uCgoqIFsqKlZ1ZSAzKipdKGh0dHBzOi8vdnVlanMub3JnL2d1aWRlL2ludHJvZHVjdGlvbi5odG1sKSBpcyB0aGUgKipUZW1wbGF0ZSBFbmdpbmUqKiB3aXRoIGFsbCB0aGUgbW9kZXJuIGJlbGxzIGFuZCB3aGlzdGxlcyBsaWtlIGF1dG9tYXRpY2FsbHkgdXBkYXRpbmcgdGhlIGRpc3BsYXkgcmVuZGVyIGFzIGRhdGEgY2hhbmdlcy4KKiBbKipQaW5pYSoqXShodHRwczovL3BpbmlhLnZ1ZWpzLm9yZy9pbnRyb2R1Y3Rpb24uaHRtbCkgaXMgdXNlZCB0byBwcm92aWRlICoqRGF0YSBTdG9yZXMqKiB3aGljaCBhbGxvdyB1cyB0byBsb2FkIGRhdGEgdGhhdCBpcyByZXVzYWJsZSBiZXR3ZWVuIHBhZ2VzIHdpdGhvdXQgaGF2aW5nIHRvIHJlbG9hZCB0aGUgZGF0YS4KKiBbKipWdWUgUm91dGVyKipdKGh0dHBzOi8vcm91dGVyLnZ1ZWpzLm9yZy9pbnN0YWxsYXRpb24uaHRtbCkgaXMgdXNlZCBmb3IgKipSb3V0aW5nKiogdG8gdHJpZ2dlciBjYWxsaW5nIHBhZ2VzIGJhc2VkIG9uIHRoZSB1cmwgd2hpbGUgYWxsIGJlaW5nIGluIGEgc2luZ2xlIHBhZ2UpLgoKIyMjIyBBZGRpdGlvbmFsIEZ1bmN0aW9uYWxpdHkKClRoaXMgc3R1ZmYgcHJvdmlkZXMgZ29vZCBmZWF0dXJlcyBidXQgZG9lcyBub3QgcmVxdWlyZSB5b3UgdG8gcmVhbGx5IGJlIGZhbWlpYXIgd2l0aCBpdC4gIFNraXAgb3ZlciB0aGVzZSB1bmxlc3MgeW91IGZpbmQgeW91IG5lZWQgdG8ga25vdyBtb3JlIGFib3V0IG9uZSBvZiB0aGVtIGZvciBzb21lIHJlYXNvbi4KCiogWyoqVml0ZSoqXShodHRwczovL3ZpdGVqcy5kZXYvZ3VpZGUvKSBpcyBvdXIgKipGcm9udGVuZCBUb29saW5nKiogc3lzdGVtIHdoaWNoIHByb3ZpZGVzIGEgbmljZSBkZXYgc2V0dXAgYW5kIGhhbmRsZXMgYnVpbGRpbmcgdGhlIHByb2plY3QgZm9yIHByb2R1Y3Rpb24gdXNlLgoqIFsqKlZpdGUgUFdBKipdKGh0dHBzOi8vdml0ZS1wd2Etb3JnLm5ldGxpZnkuYXBwL2d1aWRlLykgYXV0b21hdGljYWxseSBnZW5lcmF0ZXMgdGhlIHRoZSBmaWxlcyBuZWVkZWQgc28gd2UgYXJlIGEgWyoqUFdBKipdKGh0dHBzOi8vd2ViLmRldi9sZWFybi9wd2EvKSAoKipQcm9ncmVzc2l2ZSBXZWIgQXBwKiopLgoqIFsqKkVsZWN0cm9uKipdKGh0dHBzOi8vd3d3LmVsZWN0cm9uanMub3JnLykgYWxsb3dzIHVzIHRvIGJ1aWxkIGEgKipEZXNrdG9wIEFwcCoqIGZvciBtYWNPUywgV2luZG93cywgTGludXgsIGFzIHdlbGwgYXMgTW9iaWxlIERldmljZSB2ZXJzaW9ucy4KKiBbKipFU0xpbnQqKl0oaHR0cHM6Ly9lc2xpbnQub3JnLykgaXMgb3VyICoqTGludGVyKiogd2hpY2ggY2FuIGRldGVjdCBhIHdpZGUgcmFuZ2Ugb2YgcHJvYmxlbXMgeW91ciBjb2RlLgoqIFsqKlByZXR0aWVyKipdKGh0dHBzOi8vcHJldHRpZXIuaW8vKSBpcyBvdXIgKipDb2RlIEZvcm1hdHRlcioqIGFsbG93aW5nIGF1dG9tYXRpYyBmb3JtYXR0aW5nIG9mIGNvZGUgYmFzZWQgb24gb3VyIHNldCBvZiBwcmVkZWZpbmVkIHJ1bGVzLgoqIFsqKlZpdGVzdCoqXShodHRwczovL3ZpdGVzdC5kZXYvZ3VpZGUvKSBpcyBvdXIgKipVbml0IFRlc3RpbmcqKiBmcmFtZXdvcmsuCiogWyoqVmVlVmFsaWRhdGUqKl0oaHR0cHM6Ly92ZWUtdmFsaWRhdGUubG9nYXJldG0uY29tL3Y0L2d1aWRlL292ZXJ2aWV3LykgaXMgaW5zdGFsbGVkIGZvciAqKkZvcm0gVmFsaWRhdGlvbioqCiogWyoqVnVlLWkxOG4qKl0oaHR0cHM6Ly92dWUtaTE4bi5pbnRsaWZ5LmRldi9ndWlkZS9pbnRyb2R1Y3Rpb24uaHRtbCkgaXMgb3VyICoqVHJhbnNsYXRpb24qKiBsaWIuCgojIyMjIEluc3BlY3RpbmcgYW5kIERlYnVnZ2luZyBUaGUgTGl2ZSBEYXRhCgpUaGVyZSBhcmUgc2V2ZXJhbCBEZXZlbG9wZXIgQ29uc29sZSB0eXBlIGludGVyZmFjZXMgc2V0dXAgd2hpY2ggd2UgY2FuIHVzZSB0byB2aWV3IGFuZCBtb2RpZnkgdGhlIGxpdmUgdmFyaWFibGVzIGdlbmVyYXRpbmcgdGhlIHNpdGUuCgpCcm93c2VyIEV4dGVuc2lvbiBbVnVlIERldnRvb2xzXShodHRwczovL2RldnRvb2xzLnZ1ZWpzLm9yZy9ndWlkZS9pbnN0YWxsYXRpb24uaHRtbCkKIVt2dWUtZGV2dG9vbHMtZXh0ZW5zaW9uXShodHRwczovL2dpdGh1Yi5jb20vZGV0YWluL215YWRtaW4tY2xpZW50LXZ1ZS9hc3NldHMvMTM2NDUwNC81MzZlMDViZS05NjUzLTQzZmYtYWNjZS0yYjIwODBmNzZhOTQpCgpUaGUgb3RoZXIgd2F5IGlzCiFbdnVlLWRldnRvb2xzLXBvcHVwXShodHRwczovL2dpdGh1Yi5jb20vZGV0YWluL215YWRtaW4tY2xpZW50LXZ1ZS9hc3NldHMvMTM2NDUwNC85YjUwMmE2OS0wOWM0LTQ4YjctYWM4OC0yZmU1MGQ0YWIxNWMpCgojIyBSZWNvbW1lbmRlZCBJREUgU2V0dXAKCltWU0NvZGVdKGh0dHBzOi8vY29kZS52aXN1YWxzdHVkaW8uY29tLykgKyBbVm9sYXJdKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1WdWUudm9sYXIpIChhbmQgZGlzYWJsZSBWZXR1cikgKyBbVHlwZVNjcmlwdCBWdWUgUGx1Z2luIChWb2xhcildKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1WdWUudnNjb2RlLXR5cGVzY3JpcHQtdnVlLXBsdWdpbikuCgojIyBDdXN0b21pemUgY29uZmlndXJhdGlvbgoKU2VlIFtWaXRlIENvbmZpZ3VyYXRpb24gUmVmZXJlbmNlXShodHRwczovL3ZpdGVqcy5kZXYvY29uZmlnLykuCgojIyBQcm9qZWN0IFNldHVwCgpgYGBzaApucG0gaW5zdGFsbApgYGAKCiMjIyBDb21waWxlIGFuZCBIb3QtUmVsb2FkIGZvciBEZXZlbG9wbWVudAoKYGBgc2gKbnBtIHJ1biBkZXYKYGBgCgojIyMgQ29tcGlsZSBhbmQgTWluaWZ5IGZvciBQcm9kdWN0aW9uCgpgYGBzaApucG0gcnVuIGJ1aWxkCmBgYAoKIyMjIExpbnQgd2l0aCBbRVNMaW50XShodHRwczovL2VzbGludC5vcmcvKQoKYGBgc2gKbnBtIHJ1biBsaW50CmBgYAo= - readmeEtag: '"a282a301b9d93f92cc25f09e6e7d69a81856805f75014ee5686ab085bd7e04ae"' - readmeLastModified: Wed, 13 Dec 2023 17:24:05 GMT + IyBJbnRlclNlcnZlciBNeUFkbWluIENsaWVudCBJbnRlcmZhY2UKCiMjIEltcHJvdmVtZW50cyBhbmQgQmVuZWZpdHMgb3ZlciBjdXJyZW50IENsaWVudCBJbnRlcmZhY2UKCiogKipQZXJmb3JtYW5jZSBCb29zdCoqOiBTdGF0aWMgSFRNTCBnZW5lcmF0ZWQgYnkgVnVlIGNhbiBiZSBoaWdobHkgb3B0aW1pemVkIGZvciBzcGVlZCwgcmVzdWx0aW5nIGluIGZhc3RlciBwYWdlIGxvYWQgdGltZXMgYW5kIGEgbW9yZSByZXNwb25zaXZlIHVzZXIgZXhwZXJpZW5jZS4KKiAqKlJlZHVjZWQgU2VydmVyIExvYWQqKjogU2VydmluZyBzdGF0aWMgZmlsZXMgcmVxdWlyZXMgbGVzcyBzZXJ2ZXIgcHJvY2Vzc2luZyBjb21wYXJlZCB0byBkeW5hbWljYWxseSBnZW5lcmF0ZWQgcGFnZXMsIGxlYWRpbmcgdG8gcmVkdWNlZCBzZXJ2ZXIgbG9hZCBhbmQgaW1wcm92ZWQgc2NhbGFiaWxpdHkuCiogKipJbXByb3ZlZCBTRU8qKjogUHJlLXJlbmRlcmVkIHN0YXRpYyBIVE1MIGNhbiBlbmhhbmNlIHNlYXJjaCBlbmdpbmUgb3B0aW1pemF0aW9uIChTRU8pIGJ5IHByb3ZpZGluZyBjb250ZW50IHRoYXQgc2VhcmNoIGVuZ2luZXMgY2FuIGVhc2lseSBjcmF3bCBhbmQgaW5kZXguCiogKipDRE4gQ29tcGF0aWJpbGl0eSoqOiBTdGF0aWMgZmlsZXMgYXJlIHdlbGwtc3VpdGVkIGZvciBDb250ZW50IERlbGl2ZXJ5IE5ldHdvcmtzIChDRE5zKSwgd2hpY2ggY2FuIGRpc3RyaWJ1dGUgeW91ciBjb250ZW50IGdsb2JhbGx5LCByZWR1Y2luZyBsYXRlbmN5IGFuZCBpbXByb3ZpbmcgcGFnZSBsb2FkIHRpbWVzIGZvciB1c2VycyBhY3Jvc3MgdGhlIHdvcmxkLgoqICoqRW5oYW5jZWQgU2VjdXJpdHkqKjogU2VwYXJhdGluZyB0aGUgZnJvbnRlbmQgZnJvbSB0aGUgYmFja2VuZCBtaW5pbWl6ZXMgdGhlIGV4cG9zdXJlIG9mIHNlbnNpdGl2ZSBiYWNrZW5kIGxvZ2ljLCBpbXByb3ZpbmcgdGhlIG92ZXJhbGwgc2VjdXJpdHkgcG9zdHVyZSBvZiB5b3VyIGFwcGxpY2F0aW9uLgoqICoqU2NhbGFiaWxpdHkqKjogU3RhdGljIGZpbGVzIGNhbiBiZSBjYWNoZWQgZWZmaWNpZW50bHksIGFsbG93aW5nIGZvciBlYXN5IGhvcml6b250YWwgc2NhbGluZyB3aXRob3V0IHRoZSBuZWVkIHRvIHdvcnJ5IGFib3V0IHNlcnZlci1zaWRlIHN0YXRlLgoqICoqU2ltcGxpZmllZCBEZXBsb3ltZW50Kio6IERlcGxveWluZyBhIHN0YXRpYyBmcm9udGVuZCBpcyBvZnRlbiBzaW1wbGVyIGFuZCBtb3JlIHByZWRpY3RhYmxlIHRoYW4gZGVwbG95aW5nIGNvbXBsZXggc2VydmVyLXNpZGUgYXBwbGljYXRpb25zLCBsZWFkaW5nIHRvIHNtb290aGVyIHJlbGVhc2UgY3ljbGVzLgoqICoqUmVkdWNlZCBBUEkgT3ZlcmhlYWQqKjogVXRpbGl6aW5nIHRoZSBQSFAgcGxhdGZvcm0gc29sZWx5IGZvciBoYW5kbGluZyBPcGVuQVBJIEFQSSByZXF1ZXN0cyBtZWFucyB0aGF0IHRoZSBiYWNrZW5kIHNlcnZlciBpcyBvbmx5IHVzZWQgZm9yIG5lY2Vzc2FyeSBkYXRhIHJldHJpZXZhbCBhbmQgcHJvY2Vzc2luZy4KKiAqKkRldmVsb3BlciBDb2xsYWJvcmF0aW9uKio6IENsZWFyIHNlcGFyYXRpb24gb2YgZnJvbnRlbmQgYW5kIGJhY2tlbmQgY29uY2VybnMgZW5hYmxlcyBmcm9udGVuZCBkZXZlbG9wZXJzIGFuZCBQSFAgZGV2ZWxvcGVycyB0byB3b3JrIG1vcmUgaW5kZXBlbmRlbnRseSBhbmQgY29sbGFib3JhdGl2ZWx5LgoqICoqRW5oYW5jZWQgVXNlciBFeHBlcmllbmNlKio6IFZ1ZSdzIHJlYWN0aXZlIGNvbXBvbmVudHMgYW5kIGludGVyYWN0aXZpdHkgY2FuIHN0aWxsIHByb3ZpZGUgYSBkeW5hbWljIHVzZXIgZXhwZXJpZW5jZSBldmVuIGluIGEgc3RhdGljIEhUTUwgY29udGV4dCwgbGVhZGluZyB0byBoaWdoZXIgdXNlciBlbmdhZ2VtZW50LgoqICoqTW9kdWxhciBBcmNoaXRlY3R1cmUqKjogVnVlJ3MgY29tcG9uZW50LWJhc2VkIHN0cnVjdHVyZSBwcm9tb3RlcyBtb2R1bGFyIGRlc2lnbiwgd2hpY2ggZW5oYW5jZXMgY29kZSBtYWludGFpbmFiaWxpdHkgYW5kIGFsbG93cyBmb3IgZWFzaWVyIGZ1dHVyZSB1cGRhdGVzLgoqICoqQ3Jvc3MtUGxhdGZvcm0gQ29uc2lzdGVuY3kqKjogQSBzZXBhcmF0ZSBzdGF0aWMgZnJvbnRlbmQgY2FuIGVuc3VyZSBjb25zaXN0ZW50IHVzZXIgZXhwZXJpZW5jZXMgYWNyb3NzIGRpZmZlcmVudCBkZXZpY2VzIGFuZCBwbGF0Zm9ybXMsIGNvbnRyaWJ1dGluZyB0byB1c2VyIHNhdGlzZmFjdGlvbi4KKiAqKkZyb250ZW5kIElubm92YXRpb24qKjogRm9jdXNpbmcgb24gYSBzZXBhcmF0ZSBzdGF0aWMgZnJvbnRlbmQgYWxsb3dzIGZyb250ZW5kIGRldmVsb3BlcnMgdG8gZXhwZXJpbWVudCB3aXRoIG5ldyBmZWF0dXJlcyBhbmQgVUkgaW1wcm92ZW1lbnRzIHdpdGhvdXQgZGlyZWN0bHkgaW1wYWN0aW5nIHRoZSBiYWNrZW5kLgoqICoqUmVzb3VyY2UgRWZmaWNpZW5jeSoqOiBXaXRoIGZld2VyIHNlcnZlci1zaWRlIGNvbXB1dGF0aW9ucywgdGhlIGJhY2tlbmQgY2FuIHV0aWxpemUgaXRzIHJlc291cmNlcyBtb3JlIGVmZmljaWVudGx5LCBwb3RlbnRpYWxseSBsZWFkaW5nIHRvIGNvc3Qgc2F2aW5ncy4KKiAqKkVhc2llciBEZWJ1Z2dpbmcqKjogQ2xlYXIgc2VwYXJhdGlvbiBvZiByZXNwb25zaWJpbGl0aWVzIHNpbXBsaWZpZXMgZGVidWdnaW5nIGFuZCB0cm91Ymxlc2hvb3RpbmcgZWZmb3J0cywgbWFraW5nIGlzc3VlIGlkZW50aWZpY2F0aW9uIGFuZCByZXNvbHV0aW9uIG1vcmUgc3RyYWlnaHRmb3J3YXJkLgoqICoqRmxleGliaWxpdHkgaW4gSG9zdGluZyoqOiBIb3N0aW5nIGEgc3RhdGljIGZyb250ZW5kIGlzIG9mdGVuIG1vcmUgZmxleGlibGUgYW5kIGNvc3QtZWZmZWN0aXZlLCBhcyBpdCBjYW4gYmUgZGVwbG95ZWQgb24gdmFyaW91cyBob3N0aW5nIHNvbHV0aW9ucywgaW5jbHVkaW5nIHN0YXRpYyBzaXRlIGhvc3RzLgoqICoqRnV0dXJlLVByb29maW5nKio6IEEgc3RhdGljIEhUTUwgZnJvbnRlbmQgY2FuIGVuc3VyZSBsb25nLXRlcm0gc3RhYmlsaXR5IGFuZCBjb21wYXRpYmlsaXR5LCBhcyBpdCdzIGxlc3MgcHJvbmUgdG8gZGVwZW5kZW5jaWVzIGFuZCB0ZWNobm9sb2d5IGNoYW5nZXMuCiogKipPZmZsaW5lIEFjY2Vzc2liaWxpdHkqKjogQnkgc2VydmluZyBzdGF0aWMgYXNzZXRzLCB5b3UgY2FuIGVuYWJsZSB5b3VyIGFwcGxpY2F0aW9uIHRvIHdvcmsgaW4gb2ZmbGluZSBvciBsb3ctY29ubmVjdGl2aXR5IHNjZW5hcmlvcywgcHJvdmlkaW5nIGEgbW9yZSByb2J1c3QgdXNlciBleHBlcmllbmNlLgoqICoqT2ZmbGluZSBDYXBhYmlsaXRpZXMqKjogQSBzdGF0aWMgSFRNTCBmcm9udGVuZCBjYW4gYmUgZGVzaWduZWQgdG8gd29yayBvZmZsaW5lIG9yIHdpdGggaW50ZXJtaXR0ZW50IGNvbm5lY3Rpdml0eSwgZW5oYW5jaW5nIHVzZXIgZXhwZXJpZW5jZSBpbiBzaXR1YXRpb25zIHdpdGggbGltaXRlZCBpbnRlcm5ldCBhY2Nlc3MuCiogKipDYWNoaW5nIEFkdmFudGFnZXMqKjogU3RhdGljIGFzc2V0cyBjYW4gYmUgY2FjaGVkIGF0IHZhcmlvdXMgbGV2ZWxzLCBmcm9tIHRoZSBicm93c2VyIHRvIENETnMsIHJlZHVjaW5nIHRoZSBuZWVkIGZvciByZXBlYXRlZCBkYXRhIHJlcXVlc3RzIGFuZCBpbXByb3Zpbmcgb3ZlcmFsbCBsb2FkIHRpbWVzLgoqICoqVmVyc2lvbiBDb250cm9sKio6IFN0YXRpYyBhc3NldHMgY2FuIGJlIGVhc2lseSB2ZXJzaW9uZWQgYW5kIG1hbmFnZWQgdGhyb3VnaCB2ZXJzaW9uIGNvbnRyb2wgc3lzdGVtcywgZW5zdXJpbmcgY29uc2lzdGVudCBhbmQgY29udHJvbGxlZCB1cGRhdGVzLgoqICoqSW50ZXJuYXRpb25hbGl6YXRpb24qKjogQSBzdGF0aWMgZnJvbnRlbmQgY2FuIGJlIHN0cnVjdHVyZWQgdG8gc3VwcG9ydCBpbnRlcm5hdGlvbmFsaXphdGlvbiBhbmQgbG9jYWxpemF0aW9uLCBjYXRlcmluZyB0byBhIGdsb2JhbCBhdWRpZW5jZSB3aXRoIGVhc2UuCiogKipDb3N0IFNhdmluZ3MqKjogUmVkdWNlZCBzZXJ2ZXItc2lkZSBwcm9jZXNzaW5nIGNhbiBsZWFkIHRvIGNvc3Qgc2F2aW5ncyBvbiBzZXJ2ZXIgcmVzb3VyY2VzLCBlc3BlY2lhbGx5IHdoZW4gZGVwbG95aW5nIG9uIGNsb3VkIHBsYXRmb3JtcyBvciBob3N0aW5nIHNlcnZpY2VzLgoqICoqUHJlZGljdGFibGUgQmVoYXZpb3IqKjogU3RhdGljIGZyb250ZW5kcyB0ZW5kIHRvIG9mZmVyIG1vcmUgcHJlZGljdGFibGUgYmVoYXZpb3IsIGFzIHRoZXkgYXJlIG5vdCBhZmZlY3RlZCBieSBzZXJ2ZXItc2lkZSBjaGFuZ2VzIHRoYXQgbWlnaHQgaW1wYWN0IHRoZSB1c2VyIGludGVyZmFjZS4KKiAqKkJyb3dzZXIgQ29tcGF0aWJpbGl0eSoqOiBBIHdlbGwtZGVzaWduZWQgc3RhdGljIGZyb250ZW5kIGNhbiBlbnN1cmUgY29uc2lzdGVudCBiZWhhdmlvciBhY3Jvc3MgZGlmZmVyZW50IHdlYiBicm93c2VycywgcmVkdWNpbmcgdGhlIG5lZWQgZm9yIGV4dGVuc2l2ZSBjcm9zcy1icm93c2VyIHRlc3RpbmcuCiogKipUaGlyZC1QYXJ0eSBJbnRlZ3JhdGlvbioqOiBJbnRlZ3JhdGluZyB0aGlyZC1wYXJ0eSBzZXJ2aWNlcyBhbmQgd2lkZ2V0cyBpbnRvIGEgc3RhdGljIGZyb250ZW5kIGlzIG9mdGVuIHNpbXBsZXIgYW5kIGxlc3MgcHJvbmUgdG8gY29uZmxpY3RzLgoqICoqTWljcm9zZXJ2aWNlcyBDb21wYXRpYmlsaXR5Kio6IEEgbW9kdWxhciBzdGF0aWMgZnJvbnRlbmQgYWxpZ25zIHdlbGwgd2l0aCBtaWNyb3NlcnZpY2VzIGFyY2hpdGVjdHVyZSwgYWxsb3dpbmcgZm9yIHNlcGFyYXRlIGRldmVsb3BtZW50IGFuZCBkZXBsb3ltZW50IG9mIHZhcmlvdXMgY29tcG9uZW50cy4KKiAqKlNlY3VyaXR5IFBhdGNoaW5nKio6IFNlcGFyYXRpbmcgdGhlIGZyb250ZW5kIGZyb20gdGhlIGJhY2tlbmQgc2ltcGxpZmllcyBzZWN1cml0eSB1cGRhdGVzIGFuZCBwYXRjaGluZywgYXMgdnVsbmVyYWJpbGl0aWVzIGluIHRoZSBmcm9udGVuZCB3b24ndCBkaXJlY3RseSBpbXBhY3QgdGhlIGJhY2tlbmQgbG9naWMuCiogKipRdWljayBEZXBsb3ltZW50Kio6IERlcGxveWluZyBzdGF0aWMgZmlsZXMgaXMgZ2VuZXJhbGx5IGZhc3RlciBhbmQgcmVxdWlyZXMgZmV3ZXIgcmVzb3VyY2VzIGNvbXBhcmVkIHRvIGRlcGxveWluZyBjb21wbGV4IHNlcnZlci1zaWRlIGFwcGxpY2F0aW9ucy4KKiAqKkNvbnRpbnVvdXMgSW50ZWdyYXRpb24vQ29udGludW91cyBEZXBsb3ltZW50IChDSS9DRCkqKjogQ0kvQ0QgcGlwZWxpbmVzIGZvciBhIHN0YXRpYyBmcm9udGVuZCBjYW4gYmUgc3RyYWlnaHRmb3J3YXJkIGFuZCBlYXNpbHkgYXV0b21hdGVkLCBsZWFkaW5nIHRvIG1vcmUgZWZmaWNpZW50IGRldmVsb3BtZW50IHdvcmtmbG93cy4KKiAqKlJlZHVjZWQgTGF0ZW5jeSoqOiBXaXRoIHJlZHVjZWQgc2VydmVyLXNpZGUgcHJvY2Vzc2luZywgbGF0ZW5jeSBjYW4gYmUgbWluaW1pemVkLCBjb250cmlidXRpbmcgdG8gYSBtb3JlIHJlc3BvbnNpdmUgdXNlciBleHBlcmllbmNlLgoqICoqRWFzaWVyIEEvQiBUZXN0aW5nKio6IEEgc3RhdGljIGZyb250ZW5kIGNhbiBmYWNpbGl0YXRlIEEvQiB0ZXN0aW5nIGFuZCBleHBlcmltZW50YXRpb24gd2l0aG91dCB0aGUgY29tcGxleGl0aWVzIG9mIGR5bmFtaWMgc2VydmVyLXNpZGUgcmVuZGVyaW5nLgoqICoqQ29udGVudCBNYW5hZ2VtZW50Kio6IFNlcGFyYXRpbmcgZnJvbnRlbmQgYW5kIGJhY2tlbmQgYWxsb3dzIGNvbnRlbnQgbWFuYWdlbWVudCBzeXN0ZW1zIChDTVMpIHRvIGZvY3VzIG9uIGNvbnRlbnQgd2l0aG91dCBiZWluZyB0aWdodGx5IGNvdXBsZWQgdG8gdGhlIGFwcGxpY2F0aW9uIGxvZ2ljLgoqICoqU2ltcGxpZmllZCBCYWNrZW5kKio6IEJ5IG9mZmxvYWRpbmcgZnJvbnRlbmQgcmVuZGVyaW5nIHRvIFZ1ZSwgdGhlIFBIUCBiYWNrZW5kIGNhbiBmb2N1cyBvbiBkYXRhIHByb2Nlc3NpbmcgYW5kIEFQSSBmdW5jdGlvbmFsaXR5LCBzaW1wbGlmeWluZyBpdHMgcm9sZS4KKiAqKkNsaWVudC1TaWRlIEVuaGFuY2VtZW50cyoqOiBWdWUncyBjbGllbnQtc2lkZSByb3V0aW5nIGFuZCBzdGF0ZSBtYW5hZ2VtZW50IGNhbiBlbmhhbmNlIG5hdmlnYXRpb24gYW5kIGRhdGEgaGFuZGxpbmcgd2l0aGluIHRoZSBmcm9udGVuZC4KKiAqKlJlZHVjZWQgQ29tcGxleGl0eSoqOiBBIHN0YXRpYyBmcm9udGVuZCBzaW1wbGlmaWVzIHRoZSB0ZWNobmljYWwgc3RhY2ssIHJlZHVjaW5nIHRoZSBvdmVyYWxsIGNvbXBsZXhpdHkgb2YgdGhlIGFwcGxpY2F0aW9uIGFyY2hpdGVjdHVyZS4KKiAqKkVhc2llciBDb2RlIEF1ZGl0cyoqOiBDbGVhciBzZXBhcmF0aW9uIGJldHdlZW4gZnJvbnRlbmQgYW5kIGJhY2tlbmQgY29kZSBtYWtlcyBjb2RlIGF1ZGl0cyBhbmQgc2VjdXJpdHkgcmV2aWV3cyBtb3JlIG1hbmFnZWFibGUuCiogKipCcmFuZGluZyBhbmQgQ3VzdG9taXphdGlvbioqOiBBIHNlcGFyYXRlIGZyb250ZW5kIGFsbG93cyBmb3IgZWFzaWVyIGJyYW5kaW5nIGFuZCBjdXN0b21pemF0aW9uLCBhcyBmcm9udGVuZCBjaGFuZ2VzIHdvbid0IGRpcmVjdGx5IGFmZmVjdCBiYWNrZW5kIGZ1bmN0aW9uYWxpdHkuCgojIyBGQVEKCiMjIyBHZXR0aW5nIGEgYmxhbmsgcGFnZSB3aGVuIGxvYWRpbmcgdGhlIHNpdGUKCkNoZWNrIHlvdXIgYWQgYmxvY2tlciBvciBwcml2YWN5IGFkZG9ucywgdGhleSBtaWdodCBuZWVkIHRvIGJlIGRpc2FibGVkIGZvciB0aGlzIHNpdGUuCgojIyBEZXZlbG9wbWVudAoKKiBbdml0ZWpzL2F3ZXNvbWUtdml0ZTog4pqh77iPIEEgY3VyYXRlZCBsaXN0IG9mIGF3ZXNvbWUgdGhpbmdzIHJlbGF0ZWQgdG8gVml0ZS5qc10oaHR0cHM6Ly9naXRodWIuY29tL3ZpdGVqcy9hd2Vzb21lLXZpdGUpCgojIyMgT3BlbkFQSSBTcGVjCgojIyMjIEFQSSBHVUkgRGVzaWduZXJzCgoqIFtGcmVlIE9ubGluZSBWaXN1YWwgQVBJIERlc2lnbmVyIGZvciBPcGVuQVBJIGFuZCBBc3luY0FQSSBTcGVjaWZpY2F0aW9ucyAtIEFwaUJsZHJdKGh0dHBzOi8vd3d3LmFwaWJsZHIuY29tLykKKiBbbXkgSW50ZXJTZXJ2ZXIgU2VydmljZXMgTWFuYWdlbWVudCBBUEkgLSBteWFkbWluYXBpIC0gRWRpdCAtIEZyb2dtZW50XShodHRwczovL3d3dy5mcm9nbWVudC5jb20vZWRpdC9teWFkbWluYXBpL2ludGVyc2VydmVyX215YWRtaW5fYXBpLmpzb24jaW5mby55YW1sKQoqIFtBUElHaXQgLSBBUEkgRG9jdW1lbnRdKGh0dHBzOi8vYXBwLmFwaWdpdC5jb20vcmVwb3NpdG9yeS9kZXRhaW4vbXlhZG1pbi1vcGVuYXBpLXNwZWMvYXBpL29wZW5hcGkueWFtbCkKKiBbQXBpY3VyaW8gU3R1ZGlvIC0gQVBJIEVkaXRvciA6OiBteSBJbnRlclNlcnZlciBTZXJ2aWNlcyBNYW5hZ2VtZW50IEFQSV0oaHR0cHM6Ly9zdHVkaW8uYXBpY3VyLmlvL2FwaXMvOTM2MTgvZWRpdG9yKQoKQWZ0ZXIgdGhpcyBpcyBkb25lIG9uIGFsbCBvZiB0aGUgcmVwb3MgcGljayB0aGUgYmVzdCBvbmUgYW5kIHNldGl0IHVwIC4uIHRyeSB0byBwcmVzZXJ2ZSBnaXQgaGlzdG9yeQoKIyMjIFRPRE8gUm9hZC1NYXAKCiogKioxLjAtYWxwaGEqKiBNaWxlU3RvbmUKICAqIG9yZGVyIHNlcnZpY2UgcGFnZXMKICAgICogWyBdIHNlcnZlcgogICAgKiBbIF0gZG9tYWluCiAgKiBbIF0gY2FydC9paWRzIHBhcnNlZCBhbmQgaGFuZGxlZAoqICoqMS4wLWJldGEqKiBNaWxlU3RvbmUKICAqIFsgXSB1cGRhdGUgcmVzcG9uc2UgY29kZXMgdG8gbWF0Y2ggdGFibGUgYmVsb3cKICAqIFsgXSBsb2FkaW5nIC8gbm8gZW50cmllcyBtZXNzYWdlcwogICogc2VydmljZXMgbGlzdCBwYWdlcwogICAgKiBkYXRhdGFibGVzIG9yIGVxdWl2YWxlbnQKICAgICAgKiBbeF0gZmlsdGVyaW5nCiAgICAgICogWyBdIHNvcnRpbmcKICAgICAgKiBbIF0gcGFnaW5hdGlvbgogICAgICAqIFsgXSBwcmludC9leHBvcnQKKiAqKjEuMC1zdGFibGUqKiBNaWxlU3RvbmUKICAqIFsgXSBzZXR1cCBnaXRodWIgYWN0aW9ucyBhbmQgaG9va3MgZm9yIGF1dG9tYXRlZCB0ZXN0aW5nCiAgKiBbIF0gbWFrZSBzdXJlIGFmZmlsaWF0ZSB0cmFja2luZyBzdGlsbCB3b3JrcwogICogWyBdIGFuYWx5dGljcwogICogWyBdIGdldCB2YXJpb3VzIGxpYnMgbG9hZGluZyB3aXRoIGltcG9ydHMgaW5zdGVhZWQgb2YgZGlyZWN0bHkgY2FsbGVkIHdpdGggc2NyaXRwdHMgYW5kIGxpbmsgdGFncwogICogWyBdIG1pbmltaXplIGFwaSBmaWVsZHMgaW4gcmVxdWVzdHMvcmVzcG9uc2VzIGFuZCBmaWx0ZXIgdGhlbSBmb3Igc2VjdXJpdHkKICAqIFsgXSBhcGkgZmluYWxpemVkCiogRnV0dXJlIFRhc2tzCiAgKiBbIF0gaW1wcm92ZSB3ZWJwYWNraW5nCiAgKiBbIF0gbW92ZSB0eXBlIGRlZmluaXRpb25zIGludG8gL3R5cGVzPwogICogWyBdIHV0aWxpemUgdGhlIGZvcm0gdmFsaWRhdGlvbiBzdHVmZgogICogWyBdIHJlcGxhY2UganF1ZXJ5IHR5cGUgY2FsbHMgd2l0aCBidWlsdCBpbiB0ZW1wbGF0ZSBoYW5kbGluZyBhbmQgc3VjaAogICogWyBdIGJzNS9hZG1pbmx0ZTQgaHR0cHM6Ly9naXRodWIuY29tL2NvbGlmZi9ib290c3RyYXAtNS1taWdyYXRlLXRvb2wvYmxvYi9tYWluL2d1bHBmaWxlLmpzICBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9KdWFuLWVzY29iYXI5NC9mNzY1MzVhMTI2NGFjNmY3MjUxYzY0M2FmNTBjMTg0ZAogICogWyBdIGlvbmljIGNhcGFjaXRvcgogICAgKiBbIF0gYW5kcm9pZCBidWlsZAogICAgKiBbIF0gaW9zIGJ1aWxkCiAgKiBbeF0gZWxlY3Ryb24gYnVpbGQKICAgICogW3hdIHdpbmRvd3MvbGludXgvbWFjIGJ1aWxkcwogICAgKiBbIF0gYXV0b21hdGVkIGJ1aWxkcwogICAgKiBbeF0ganMvY3NzIGFzc2V0cyBsb2FkZWQgbG9jYWxseQoKCltlbGVjdHJvbi12aXRlL2VsZWN0cm9uLXZpdGUtdnVlOiDwn6WzIFJlYWxseSBzaW1wbGUgRWxlY3Ryb24gKyBWaXRlICsgVnVlIGJvaWxlcnBsYXRlLl0oaHR0cHM6Ly9naXRodWIuY29tL2VsZWN0cm9uLXZpdGUvZWxlY3Ryb24tdml0ZS12dWUpCltjYW94aWVtZWloYW8vZWxlY3Ryb24tdml0ZS1ib2lsZXJwbGF0ZTog8J+TmiBSZWFsbHkgc2ltcGxlIEVsZWN0cm9uICsgVml0ZSBib2lsZXJwbGF0ZS5dKGh0dHBzOi8vZ2l0aHViLmNvbS9jYW94aWVtZWloYW8vZWxlY3Ryb24tdml0ZS1ib2lsZXJwbGF0ZSkKW3lpbmdwZW5nc2hhL2VsZWN0cm9uLXZpdGUtcXVpY2stc3RhcnQ6IOKaoSBGdWxsIHN0YWNrIHVzZXMgVml0ZSB0byBydW4gRWxlY3Ryb24gYXBwbGljYXRpb24sIGluY2x1ZGluZyBtYWluIHByb2Nlc3MuXShodHRwczovL2dpdGh1Yi5jb20veWluZ3BlbmdzaGEvZWxlY3Ryb24tdml0ZS1xdWljay1zdGFydCkKW3VtYnJlbGxhMjIvZWxlY3Ryb24tdml0ZS10ZW1wbGF0ZTogVGhpcyBwcm9qZWN0IGlzIGEgdnVlMyArIFZpdGUgKyBlbGVjdHJvbiBwcm9qZWN0IHRlbXBsYXRlIGNvbXBvc2VkIG9mIFZpdGUgYW5kIHJvbGx1cC4gSXQgaGFzIHRoZSBzYW1lIGZ1bmN0aW9ucyBhcyBteSBwcmV2aW91cyBlbGVjdHJvbitWdWUrdGVtcGxhdGUgcHJvamVjdF0oaHR0cHM6Ly9naXRodWIuY29tL3VtYnJlbGxhMjIvZWxlY3Ryb24tdml0ZS10ZW1wbGF0ZSkKW0FyY2hlckd1L2Zhc3Qtdml0ZS1lbGVjdHJvbjogVml0ZSArIEVsZWN0cm9uIHdpdGggZXNidWlsZCwgc28gZmFzdCEg4pqhXShodHRwczovL2dpdGh1Yi5jb20vQXJjaGVyR3UvZmFzdC12aXRlLWVsZWN0cm9uKQpbY2F3YS05My92aXRlLWVsZWN0cm9uLWJ1aWxkZXI6IFNlY3VyZSBib2lsZXJwbGF0ZSBmb3IgRWxlY3Ryb24gYXBwIGJhc2VkIG9uIFZpdGUuIFR5cGVTY3JpcHQgKyBWdWUvUmVhY3QvQW5ndWxhci9TdmVsdGUvVmFuaWxsYV0oaHR0cHM6Ly9naXRodWIuY29tL2Nhd2EtOTMvdml0ZS1lbGVjdHJvbi1idWlsZGVyLykKW2VsZWN0cm9uLXZpdGUvdml0ZS1wbHVnaW4tZWxlY3Ryb24tcmVuZGVyZXI6IFN1cHBvcnQgdXNlIE5vZGUuanMgQVBJIGluIEVsZWN0cm9uLVJlbmRlcmVyXShodHRwczovL2dpdGh1Yi5jb20vZWxlY3Ryb24tdml0ZS92aXRlLXBsdWdpbi1lbGVjdHJvbi1yZW5kZXJlcikKW0RlbHV6ZS9lbGVjdHJvbi12dWUtdGVtcGxhdGU6IFNpbXBsZSBWdWUzICsgRWxlY3Ryb24gc3RhcnRlciB0ZW1wbGF0ZSBpbiBUeXBlU2NyaXB0LCBpbmNsdWRpbmcgVml0ZUpTIGFuZCBFbGVjdHJvbiBCdWlsZGVyXShodHRwczovL2dpdGh1Yi5jb20vRGVsdXplL2VsZWN0cm9uLXZ1ZS10ZW1wbGF0ZSkKW3RhZGE1aGkvdml0cm9uOiBUaGlzIGlzIGEgbGlicmFyeSB0byBidWlsZCAod2luLCBsaW51eCwgbWFjKSBkZXNrdG9wIGFwcHMgZm9yIG1vZGVybiB3ZWIgcHJvamVjdHMgd2l0aCB2aXRlIGFuZCBlbGVjdHJvbi5dKGh0dHBzOi8vZ2l0aHViLmNvbS90YWRhNWhpL3ZpdHJvbikKW2pvb3kyL3Z1dHJvbjog8J+SmiBRdWljayBTdGFydCBUZW1wbGF0ZXMgZm9yIFZpdGUgKyBFbGVjdHJvbiArIFZ1ZSAzICsgVnVldGlmeSArIFR5cGVTY3JpcHQuIFZ1dHJvbiBpcyBhIHByZWNvbmZpZ3VyZWQgdGVtcGxhdGUgZm9yIGRldmVsb3BpbmcgRWxlY3Ryb24gY3Jvc3MtcGxhdGZvcm0gZGVza3RvcCBhcHBzLiBJdCB1c2VzIFZ1ZSAzIGFuZCBhbGxvd3MgeW91IHRvIGJ1aWxkIGEgZmFzdCBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCB3aXRoIGxpdHRsZSBlZmZvcnQuXShodHRwczovL2dpdGh1Yi5jb20vam9veTIvdnV0cm9uKQpbY2FveGllbWVpaGFvL3ZpdGUtZWxlY3Ryb24tcGx1Z2luOiBIaWdoLXBlcmZvcm1hbmNlLCBlc2J1aWxkLWJhc2VkIFZpdGUgRWxlY3Ryb24gcGx1Z2luXShodHRwczovL2dpdGh1Yi5jb20vY2FveGllbWVpaGFvL3ZpdGUtZWxlY3Ryb24tcGx1Z2luKQoKIyMjIFBhZ2UgU3RhdHVzCgpBUEkgU3BlYyBDaGVja3MKKiBSZXF1ZXN0IEJvZHkKKiBTdWNjZXNzIFJlc3BvbnNlCiogRXJyb3IgUmVzcG9uc2VzCiogRXhhbXBsZXMKKiBEZXRhaWxlZCBEb2N1bWVudGF0aW9uCiogT3B0aW1pemUgVHlwZXMKKiBQYXRocwogICogc3VtbWFyeSBzZXQKICAqIGRlc2NyaXB0aW9uIHNldAogICogcGFyYW1ldGVycwogICAgKiBkZXNjcmlwdGlvbgogICAgKiBzY2hlbWEgdHlwZQogICAgKiBleGFtcGxlCiAgICAqIGxpbmtzCiAgKiBtZXRob2RzCiAgICAqIHN1bW1hcnkgc2V0CiAgICAqIGRlc2NyaXB0aW9uIHNldAogICAgKiB0YWcgc2V0CiAgICAqIHJlcXVlc3QgdHlwZXMganNvbitmb3JtCiAgICAqIHJlcXVlc3QgYm9keSBkZWZpbnRpb24KICAgICogcmVxdWVzdCBib2R5IGRlc2NyaXB0aW9uIChpbmhlcml0YWJsZSkKICAgICogcmVxdWVzdCBib2R5IGV4YW1wbGUgKGluaGVyaXRhYmxlKQogICAgKiByZXNwb25zZSBzdWNjZXNzIGRlZmluaXRpb24gKGluaGVyaXRhYmxlKQogICAgKiByZXNwb25zZSBzdWNjZXNzIGV4YW1wbGUgKGluaGVyaXRhYmxlKQogICAgKiBsaW5rcwoqIFNjaGVtYXMKICAgICogc3VtbWFyeSBzZXQKICAgICogZGVzY3JpcHRpb24gc2V0CiAgICAqIGV4YW1wbGUgc2V0CiAgICAqIHJlcXVpcmVkIHNldAogICAgKiBsaW5rcwoqIFRhZ3MKICAqIGRldGFpbGVkIGRlc2NyaXB0aW9ucwoKQVBJIENhbGwgQ2hlY2tzCiogV29ya2luZwoqIFNlY3VyZQogICogZGIgZXNjYXBpbmcKICAqIGh0bWwgZmlsdGVyaW5nCiogU3VjY2VzcyBSZXNwb25zZQoqIEVycm9yIFJlc3Nwb25zZXMKKiBPcHRpbWl6ZSBUeXBlcwoKCiogV29ya2luZyBzdGF0dXMgZG9lcyBub3QgaW5jbHVkZSB0aGUgZXhwb3J0L3NvcnRpbmcgcmVsYXRlZCBvcHRpb25zIG9uIHRoZSB2aWV3IHNlcnZpY2UgbGlzdCB0eXBlIHBhZ2VzCgp8IFVybCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgV29ya2luZyB8IEFQSSBDYWxsIHwgQVBJIFNwZWMgfCBCcmVhZGNydW0gfAp8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwgLS0tLS0tLSB8IC0tLS0tLS0tIHwgLS0tLS0tLS0gfCAtLS0tLS0tLS0gfAp8IC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9sb2dpbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCAgICAgICAgICAgfAp8IC9yZWdpc3RlciAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCAgICAgICAgICAgfAp8IC9zdWRvLzpzZXNzaW9uSWQgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCAgICAgICAgICAgfAp8IC9hY2NvdW50L2luZm8gICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9hY2NvdW50L3Bhc3MgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9hY2NvdW50L3NldHRpbmdzICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9hY2NvdW50L3VzZXJuYW1lICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9jYXJ0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9jYXJ0Lzo6aWlkcyAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9pbnZvaWNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9wYXltZW50X3R5cGVzICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9wcmVwYXlzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9wYXkvOm1ldGhvZC86aW52b2ljZXMgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC90aWNrZXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC90aWNrZXRzLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC90aWNrZXRzL25ldyAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kbnMvOmlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvYmFubmVyLzppZCAgICAgICAgICAgICAgIHwgWyBdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvYmFubmVycyAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvZmFxICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvbGFuZGluZ19wZyAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvcGF5bWVudF9zZXR1cCAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvcmljaF9yZXBvcnQgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvc2FsZXNfZ3JhcGggICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvc2FsZXNfcmVwb3J0ICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvc3RhdHVzX2xlZ2VuZCAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvdG9zICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8ICAgICAgICAgIHwgICAgICAgICAgfCBbeF0gICAgICAgfAp8IC9hZmZpbGlhdGUvdHJhZmZpY19ncmFwaCAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9hZmZpbGlhdGUvd2ViX3RyYWZmaWMgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9iYWNrdXBzL29yZGVyICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC9jb250YWN0ICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC9kbnNzZWMgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC9uYW1lc2VydmVycyAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC9yZW5ldyAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC90cmFuc2ZlciAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9kb21haW5zLzppZC93aG9pcyAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zL29yZGVyICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zL29yZGVyLzpkb21haW4gICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9kb21haW5zL29yZGVyLzpkb21haW4vOnJlZ1R5cGUgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL2NhbmNlbCAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL2NoYW5nZV9pcCAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL2ludm9pY2VzICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvOmlkL3dlbGNvbWVfZW1haWwgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9mbG9hdGluZ19pcHMvb3JkZXIgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvY2FuY2VsICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvY2hhbmdlX2lwICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvY2hhbmdlX29zICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvaW52b2ljZXMgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy86aWQvd2VsY29tZV9lbWFpbCAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9saWNlbnNlcy9vcmRlciAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9saWNlbnNlcy9vcmRlci86Y2F0VGFnICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9tYWlsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZC9hbGVydHMgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9tYWlsLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZC9kZW55X3J1bGVzICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9tYWlsLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9tYWlsL29yZGVyICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQvYmFja3VwICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvYmFja3VwcyAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvY2FuY2VsICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQvY2hhbmdlX3RpbWV6b25lICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvZWplY3RfY2QgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvaW5zZXJ0X2NkICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvaW52b2ljZXMgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy86aWQvcmVpbnN0YWxsX29zICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmVzZXRfcGFzc3dvcmQgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmVzdGFydCAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmVzdG9yZSAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvcmV2ZXJzZV9kbnMgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvc2V0dXBfdm5jICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvc3RhcnQgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvc3RvcCAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvdHJhZmZpY191c2FnZSAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvdmlld19kZXNrdG9wICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC9xcy86aWQvd2VsY29tZV9lbWFpbCAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9xcy9vcmRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZCAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9iYW5kd2lkdGhfZ3JhcGggICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9jYW5jZWwgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9pbnZvaWNlcyAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9pcG1pX2xpdmUgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC9yZXZlcnNlX2RucyAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zZXJ2ZXJzLzppZC93ZWxjb21lX2VtYWlsICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9zZXJ2ZXJzL29yZGVyICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkL2NhbmNlbCAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zc2wvOmlkL2NoYW5nZV9hcHByb3Zlcl9lbWFpbCAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkL2ludm9pY2VzICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC9zc2wvOmlkL3Jlc2VuZF9hcHByb3Zlcl9lbWFpbCAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC9zc2wvOmlkL3dlbGNvbWVfZW1haWwgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC9zc2wvb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2JhY2t1cCAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2JhY2t1cHMgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2Jsb2NrX3NtdHAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2J1eV9oZF9zcGFjZSAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2J1eV9pcCAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2NhbmNlbCAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV9ob3N0bmFtZSAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV9yb290X3Bhc3N3b3JkICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV90aW1lem9uZSAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2NoYW5nZV93ZWJ1em9fcGFzc3dvcmQgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2Rpc2FibGVfY2QgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2Rpc2FibGVfcXVvdGEgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2VqZWN0X2NkICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2VuYWJsZV9xdW90YSAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL2luc2VydF9jZCAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL2ludm9pY2VzICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3JlaW5zdGFsbF9vcyAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3Jlc2V0X3Bhc3N3b3JkICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3Jlc3RhcnQgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3Jlc3RvcmUgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3JldmVyc2VfZG5zICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3NldHVwX3ZuYyAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3NsaWNlcyAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3N0YXJ0ICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3N0b3AgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3RyYWZmaWNfdXNhZ2UgICAgICAgICAgICAgIHwgWyBdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbIF0gICAgICAgfAp8IC92cHMvOmlkL3ZpZXdfZGVza3RvcCAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvOmlkL3dlbGNvbWVfZW1haWwgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC92cHMvb3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvYnV5X2lwICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvY2FuY2VsICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvZG93bmxvYWRfYmFja3VwcyAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvaW52b2ljZXMgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvbG9naW4gICAgICAgICAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgW3hdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvbWlncmF0aW9uICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvcmV2ZXJzZV9kbnMgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAp8IC93ZWJzaXRlcy86aWQvd2VsY29tZV9lbWFpbCAgICAgICAgIHwgW3hdICAgICB8IFt4XSAgICAgIHwgWyBdICAgICAgfCBbeF0gICAgICAgfAp8IC93ZWJzaXRlcy9vcmRlciAgICAgICAgICAgICAgICAgICAgIHwgWyBdICAgICB8IFsgXSAgICAgIHwgWyBdICAgICAgfCBbIF0gICAgICAgfAoKIyMjIEFQSSBSZXNwb25zZSBIVFRQIFN0YXR1cyBDb2RlcwoKIyMjIyBDb21tb25seSBVc2VkIHdpdGggQVBJCgp8IEhUVFAgVmVyYiB8IENSVUQgICAgICAgICAgIHwgRW50aXJlIENvbGxlY3Rpb24gKGUuZy4gL3ZwcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFNwZWNpZmljIEl0ZW0gKGUuZy4gL3Zwcy97aWR9KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAtLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8CnwgUE9TVCAgICAgIHwgQ3JlYXRlICAgICAgICAgfCAyMDEgKENyZWF0ZWQpLCAnTG9jYXRpb24nIGhlYWRlciB3aXRoIGxpbmsgdG8gL2N1c3RvbWVycy97aWR9IGNvbnRhaW5pbmcgbmV3IElELiAgICAgICAgICAgICAgICAgICAgIHwgNDA0IChOb3QgRm91bmQpLCA0MDkgKENvbmZsaWN0KSBpZiByZXNvdXJjZSBhbHJlYWR5IGV4aXN0cy4uICAgICAgICAgICAgICAgfAp8IEdFVCAgICAgICB8IFJlYWQgICAgICAgICAgIHwgMjAwIChPSyksIGxpc3Qgb2YgY3VzdG9tZXJzLiBVc2UgcGFnaW5hdGlvbiwgc29ydGluZyBhbmQgZmlsdGVyaW5nIHRvIG5hdmlnYXRlIGJpZyBsaXN0cy4gICAgICAgICAgICB8IDIwMCAoT0spLCBzaW5nbGUgY3VzdG9tZXIuIDQwNCAoTm90IEZvdW5kKSwgaWYgSUQgbm90IGZvdW5kIG9yIGludmFsaWQuICAgIHwKfCBQVVQgICAgICAgfCBVcGRhdGUvUmVwbGFjZSB8IDQwNSAoTWV0aG9kIE5vdCBBbGxvd2VkKSwgdW5sZXNzIHlvdSB3YW50IHRvIHVwZGF0ZS9yZXBsYWNlIGV2ZXJ5IHJlc291cmNlIGluIHRoZSBlbnRpcmUgY29sbGVjdGlvbi4gfCAyMDAgKE9LKSBvciAyMDQgKE5vIENvbnRlbnQpLiA0MDQgKE5vdCBGb3VuZCksIGlmIElEIG5vdCBmb3VuZCBvciBpbnZhbGlkLiB8CnwgUEFUQ0ggICAgIHwgVXBkYXRlL01vZGlmeSAgfCA0MDUgKE1ldGhvZCBOb3QgQWxsb3dlZCksIHVubGVzcyB5b3Ugd2FudCB0byBtb2RpZnkgdGhlIGNvbGxlY3Rpb24gaXRzZWxmLiAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMjAwIChPSykgb3IgMjA0IChObyBDb250ZW50KS4gNDA0IChOb3QgRm91bmQpLCBpZiBJRCBub3QgZm91bmQgb3IgaW52YWxpZC4gfAp8IERFTEVURSAgICB8IERlbGV0ZSAgICAgICAgIHwgNDA1IChNZXRob2QgTm90IEFsbG93ZWQpLCB1bmxlc3MgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSB3aG9sZSBjb2xsZWN0aW9uLS0tbm90IG9mdGVuIGRlc2lyYWJsZS4gICAgICB8IDIwMCAoT0spLiA0MDQgKE5vdCBGb3VuZCksIGlmIElEIG5vdCBmb3VuZCBvciBpbnZhbGlkLiAgICAgICAgICAgICAgICAgICAgIHwKCiogKioyMDAgKE9LKSoqIEl0IGluZGljYXRlcyB0aGF0IHRoZSBSRVNUIEFQSSBzdWNjZXNzZnVsbHkgY2FycmllZCBvdXQgd2hhdGV2ZXIgYWN0aW9uIHRoZSBjbGllbnQgcmVxdWVzdGVkIGFuZCB0aGF0IG5vIG1vcmUgc3BlY2lmaWMgY29kZSBpbiB0aGUgMnh4IHNlcmllcyBpcyBhcHByb3ByaWF0ZS4gVW5saWtlIHRoZSAyMDQgc3RhdHVzIGNvZGUsIGEgMjAwIHJlc3BvbnNlIHNob3VsZCBpbmNsdWRlIGEgcmVzcG9uc2UgYm9keS4gVGhlIGluZm9ybWF0aW9uIHJldHVybmVkIHdpdGggdGhlIHJlc3BvbnNlIGlzIGRlcGVuZGVudCBvbiB0aGUgbWV0aG9kIHVzZWQgaW4gdGhlIHJlcXVlc3QsIGZvciBleGFtcGxlOiAgR0VUIGFuIGVudGl0eSBjb3JyZXNwb25kaW5nIHRvIHRoZSByZXF1ZXN0ZWQgcmVzb3VyY2UgaXMgc2VudCBpbiB0aGUgcmVzcG9uc2UsIEhFQUQgdGhlIGVudGl0eS1oZWFkZXIgZmllbGRzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHJlcXVlc3RlZCByZXNvdXJjZSBhcmUgc2VudCBpbiB0aGUgcmVzcG9uc2Ugd2l0aG91dCBhbnkgbWVzc2FnZS1ib2R5LCBQT1NUIGFuIGVudGl0eSBkZXNjcmliaW5nIG9yIGNvbnRhaW5pbmcgdGhlIHJlc3VsdCBvZiB0aGUgYWN0aW9uLCBhbmQgVFJBQ0UgYW4gZW50aXR5IGNvbnRhaW5pbmcgdGhlIHJlcXVlc3QgbWVzc2FnZSBhcyByZWNlaXZlZCBieSB0aGUgZW5kIHNlcnZlci4KKiAqKjIwMSAoQ3JlYXRlZCkqKiBBIFJFU1QgQVBJIHJlc3BvbmRzIHdpdGggdGhlIDIwMSBzdGF0dXMgY29kZSB3aGVuZXZlciBhIHJlc291cmNlIGlzIGNyZWF0ZWQgaW5zaWRlIGEgY29sbGVjdGlvbi4gVGhlcmUgbWF5IGFsc28gYmUgdGltZXMgd2hlbiBhIG5ldyByZXNvdXJjZSBpcyBjcmVhdGVkIGFzIGEgcmVzdWx0IG9mIHNvbWUgY29udHJvbGxlciBhY3Rpb24sIGluIHdoaWNoIGNhc2UgMjAxIHdvdWxkIGFsc28gYmUgYW4gYXBwcm9wcmlhdGUgcmVzcG9uc2UuIFRoZSBuZXdseSBjcmVhdGVkIHJlc291cmNlIGNhbiBiZSByZWZlcmVuY2VkIGJ5IHRoZSBVUkkocykgcmV0dXJuZWQgaW4gdGhlIGVudGl0eSBvZiB0aGUgcmVzcG9uc2UsIHdpdGggdGhlIG1vc3Qgc3BlY2lmaWMgVVJJIGZvciB0aGUgcmVzb3VyY2UgZ2l2ZW4gYnkgYSBMb2NhdGlvbiBoZWFkZXIgZmllbGQuIFRoZSBvcmlnaW4gc2VydmVyIE1VU1QgY3JlYXRlIHRoZSByZXNvdXJjZSBiZWZvcmUgcmV0dXJuaW5nIHRoZSAyMDEgc3RhdHVzIGNvZGUuIElmIHRoZSBhY3Rpb24gY2Fubm90IGJlIGNhcnJpZWQgb3V0IGltbWVkaWF0ZWx5LCB0aGUgc2VydmVyIFNIT1VMRCByZXNwb25kIHdpdGggYSAyMDIgKEFjY2VwdGVkKSByZXNwb25zZSBpbnN0ZWFkLgoqICoqMjAyIChBY2NlcHRlZCkqKiBBIDIwMiByZXNwb25zZSBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgYWN0aW9ucyB0aGF0IHRha2UgYSBsb25nIHdoaWxlIHRvIHByb2Nlc3MuIEl0IGluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0IGhhcyBiZWVuIGFjY2VwdGVkIGZvciBwcm9jZXNzaW5nLCBidXQgdGhlIHByb2Nlc3NpbmcgaGFzIG5vdCBiZWVuIGNvbXBsZXRlZC4gVGhlIHJlcXVlc3QgbWlnaHQgb3IgbWlnaHQgbm90IGJlIGV2ZW50dWFsbHkgYWN0ZWQgdXBvbiwgb3IgZXZlbiBtYXliZSBkaXNhbGxvd2VkIHdoZW4gcHJvY2Vzc2luZyBvY2N1cnMuIEl0cyBwdXJwb3NlIGlzIHRvIGFsbG93IGEgc2VydmVyIHRvIGFjY2VwdCBhIHJlcXVlc3QgZm9yIHNvbWUgb3RoZXIgcHJvY2VzcyAocGVyaGFwcyBhIGJhdGNoLW9yaWVudGVkIHByb2Nlc3MgdGhhdCBpcyBvbmx5IHJ1biBvbmNlIHBlciBkYXkpIHdpdGhvdXQgcmVxdWlyaW5nIHRoYXQgdGhlIHVzZXIgYWdlbnQncyBjb25uZWN0aW9uIHRvIHRoZSBzZXJ2ZXIgcGVyc2lzdCB1bnRpbCB0aGUgcHJvY2VzcyBpcyBjb21wbGV0ZWQuIFRoZSBlbnRpdHkgcmV0dXJuZWQgd2l0aCB0aGlzIHJlc3BvbnNlIFNIT1VMRCBpbmNsdWRlIGFuIGluZGljYXRpb24gb2YgdGhlIHJlcXVlc3QncyBjdXJyZW50IHN0YXR1cyBhbmQgZWl0aGVyIGEgcG9pbnRlciB0byBhIHN0YXR1cyBtb25pdG9yIChqb2IgcXVldWUgbG9jYXRpb24pIG9yIHNvbWUgZXN0aW1hdGUgb2Ygd2hlbiB0aGUgdXNlciBjYW4gZXhwZWN0IHRoZSByZXF1ZXN0IHRvIGJlIGZ1bGZpbGxlZC4KKiAqKjIwNCAoTm8gQ29udGVudCkqKiBUaGUgMjA0IHN0YXR1cyBjb2RlIGlzIHVzdWFsbHkgc2VudCBvdXQgaW4gcmVzcG9uc2UgdG8gYSBgUFVUYCwgYFBPU1RgLCBvciBgREVMRVRFYCByZXF1ZXN0IHdoZW4gdGhlIFJFU1QgQVBJIGRlY2xpbmVzIHRvIHNlbmQgYmFjayBhbnkgc3RhdHVzIG1lc3NhZ2Ugb3IgcmVwcmVzZW50YXRpb24gaW4gdGhlIHJlc3BvbnNlIG1lc3NhZ2UncyBib2R5LiBBbiBBUEkgbWF5IGFsc28gc2VuZCAyMDQgaW4gY29uanVuY3Rpb24gd2l0aCBhIEdFVCByZXF1ZXN0IHRvIGluZGljYXRlIHRoYXQgdGhlIHJlcXVlc3RlZCByZXNvdXJjZSBleGlzdHMsIGJ1dCBoYXMgbm8gc3RhdGUgcmVwcmVzZW50YXRpb24gdG8gaW5jbHVkZSBpbiB0aGUgYm9keS4gSWYgdGhlIGNsaWVudCBpcyBhIHVzZXIgYWdlbnQsIGl0IFNIT1VMRCBOT1QgY2hhbmdlIGl0cyBkb2N1bWVudCB2aWV3IGZyb20gdGhhdCB3aGljaCBjYXVzZWQgdGhlIHJlcXVlc3QgdG8gYmUgc2VudC4gVGhpcyByZXNwb25zZSBpcyBwcmltYXJpbHkgaW50ZW5kZWQgdG8gYWxsb3cgaW5wdXQgZm9yIGFjdGlvbnMgdG8gdGFrZSBwbGFjZSB3aXRob3V0IGNhdXNpbmcgYSBjaGFuZ2UgdG8gdGhlIHVzZXIgYWdlbnQncyBhY3RpdmUgZG9jdW1lbnQgdmlldy4gSG93ZXZlciwgYW55IG5ldyBvciB1cGRhdGVkIG1ldGFpbmZvcm1hdGlvbiBTSE9VTEQgYmUgYXBwbGllZCB0byB0aGUgZG9jdW1lbnQgY3VycmVudGx5IGluIHRoZSB1c2VyIGFnZW50J3MgZHluYW1pYyB2aWV3LiBUaGUgMjA0IHJlc3BvbnNlIE1VU1QgTk9UIGluY2x1ZGUgYSBtZXNzYWdlLWJvZHkgYW5kIHRodXMgaXMgYWx3YXlzIHRlcm1pbmF0ZWQgYnkgdGhlIGZpcnN0IGVtcHR5IGxpbmUgYWZ0ZXIgdGhlIGhlYWRlciBmaWVsZHMuCiogKiozMDEgKE1vdmVkIFBlcm1hbmVudGx5KSoqIFRoZSAzMDEgc3RhdHVzIGNvZGUgaW5kaWNhdGVzIHRoYXQgdGhlIFJFU1QgQVBJJ3MgcmVzb3VyY2UgbW9kZWwgaGFzIGJlZW4gc2lnbmlmaWNhbnRseSByZWRlc2lnbmVkLCBhbmQgYSBuZXcgcGVybWFuZW50IFVSSSBoYXMgYmVlbiBhc3NpZ25lZCB0byB0aGUgY2xpZW50J3MgcmVxdWVzdGVkIHJlc291cmNlLiBUaGUgUkVTVCBBUEkgc2hvdWxkIHNwZWNpZnkgdGhlIG5ldyBVUkkgaW4gdGhlIHJlc3BvbnNlJ3MgTG9jYXRpb24gaGVhZGVyLCBhbmQgYWxsIGZ1dHVyZSByZXF1ZXN0cyBzaG91bGQgYmUgZGlyZWN0ZWQgdG8gdGhlIGdpdmVuIFVSSS4gWW91IHdpbGwgaGFyZGx5IHVzZSB0aGlzIHJlc3BvbnNlIGNvZGUgaW4geW91ciBBUEkgYXMgeW91IGNhbiBhbHdheXMgdXNlIHRoZSBBUEkgdmVyc2lvbmluZyBmb3IgdGhlIG5ldyBBUEkgd2hpbGUgcmV0YWluaW5nIHRoZSBvbGQgb25lLgoqICoqMzAyIChGb3VuZCkqKiBUaGUgSFRUUCByZXNwb25zZSBzdGF0dXMgY29kZSAzMDIgRm91bmQgaXMgYSBjb21tb24gd2F5IG9mIHBlcmZvcm1pbmcgVVJMIHJlZGlyZWN0aW9uLiBBbiBIVFRQIHJlc3BvbnNlIHdpdGggdGhpcyBzdGF0dXMgY29kZSB3aWxsIGFkZGl0aW9uYWxseSBwcm92aWRlIGEgVVJMIGluIHRoZSBMb2NhdGlvbiBoZWFkZXIgZmllbGQuIFRoZSB1c2VyIGFnZW50IChlLmcuLCBhIHdlYiBicm93c2VyKSBpcyBpbnZpdGVkIGJ5IGEgcmVzcG9uc2Ugd2l0aCB0aGlzIGNvZGUgdG8gbWFrZSBhIHNlY29uZC4gT3RoZXJ3aXNlIGlkZW50aWNhbCwgcmVxdWVzdCB0byB0aGUgbmV3IFVSTCBzcGVjaWZpZWQgaW4gdGhlIGxvY2F0aW9uIGZpZWxkLiBNYW55IHdlYiBicm93c2VycyBpbXBsZW1lbnRlZCB0aGlzIGNvZGUgaW4gYSBtYW5uZXIgdGhhdCB2aW9sYXRlZCB0aGlzIHN0YW5kYXJkLCBjaGFuZ2luZyB0aGUgcmVxdWVzdCB0eXBlIG9mIHRoZSBuZXcgcmVxdWVzdCB0byBHRVQsIHJlZ2FyZGxlc3Mgb2YgdGhlIHR5cGUgZW1wbG95ZWQgaW4gdGhlIG9yaWdpbmFsIHJlcXVlc3QgKGUuZy4sIFBPU1QpLiBSRkMgMTk0NSBhbmQgUkZDIDIwNjggc3BlY2lmeSB0aGF0IHRoZSBjbGllbnQgaXMgbm90IGFsbG93ZWQgdG8gY2hhbmdlIHRoZSBtZXRob2Qgb24gdGhlIHJlZGlyZWN0ZWQgcmVxdWVzdC4gVGhlIHN0YXR1cyBjb2RlcyAzMDMgYW5kIDMwNyBoYXZlIGJlZW4gYWRkZWQgZm9yIHNlcnZlcnMgdGhhdCB3aXNoIHRvIG1ha2UgdW5hbWJpZ3VvdXNseSBjbGVhciB3aGljaCBraW5kIG9mIHJlYWN0aW9uIGlzIGV4cGVjdGVkIG9mIHRoZSBjbGllbnQuCiogKiozMDMgKFNlZSBPdGhlcikqKiBBIDMwMyByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCBhIGNvbnRyb2xsZXIgcmVzb3VyY2UgaGFzIGZpbmlzaGVkIGl0cyB3b3JrLCBidXQgaW5zdGVhZCBvZiBzZW5kaW5nIGEgcG90ZW50aWFsbHkgdW53YW50ZWQgcmVzcG9uc2UgYm9keSwgaXQgc2VuZHMgdGhlIGNsaWVudCB0aGUgVVJJIG9mIGEgcmVzcG9uc2UgcmVzb3VyY2UuIFRoZSByZXNwb25zZSBjYW4gYmUgdGhlIFVSSSBvZiB0aGUgdGVtcG9yYXJ5IHN0YXR1cyBtZXNzYWdlLCBvciB0aGUgVVJJIHRvIHNvbWUgYWxyZWFkeSBleGlzdGluZywgbW9yZSBwZXJtYW5lbnQsIHJlc291cmNlLiBHZW5lcmFsbHkgc3BlYWtpbmcsIHRoZSAzMDMgc3RhdHVzIGNvZGUgYWxsb3dzIGEgUkVTVCBBUEkgdG8gc2VuZCBhIHJlZmVyZW5jZSB0byBhIHJlc291cmNlIHdpdGhvdXQgZm9yY2luZyB0aGUgY2xpZW50IHRvIGRvd25sb2FkIGl0cyBzdGF0ZS4gSW5zdGVhZCwgdGhlIGNsaWVudCBtYXkgc2VuZCBhIEdFVCByZXF1ZXN0IHRvIHRoZSB2YWx1ZSBvZiB0aGUgTG9jYXRpb24gaGVhZGVyLiBUaGUgMzAzIHJlc3BvbnNlIE1VU1QgTk9UIGJlIGNhY2hlZCwgYnV0IHRoZSByZXNwb25zZSB0byB0aGUgc2Vjb25kIChyZWRpcmVjdGVkKSByZXF1ZXN0IG1pZ2h0IGJlIGNhY2hlYWJsZS4KKiAqKjMwNCAoTm90IE1vZGlmaWVkKSoqIFRoaXMgc3RhdHVzIGNvZGUgaXMgc2ltaWxhciB0byAyMDQgKCJObyBDb250ZW50IikgaW4gdGhhdCB0aGUgcmVzcG9uc2UgYm9keSBtdXN0IGJlIGVtcHR5LiBUaGUgY3JpdGljYWwgZGlzdGluY3Rpb24gaXMgdGhhdCAyMDQgaXMgdXNlZCB3aGVuIHRoZXJlIGlzIG5vdGhpbmcgdG8gc2VuZCBpbiB0aGUgYm9keSwgd2hlcmVhcyAzMDQgaXMgdXNlZCB3aGVuIHRoZSByZXNvdXJjZSBoYXMgbm90IGJlZW4gbW9kaWZpZWQgc2luY2UgdGhlIHZlcnNpb24gc3BlY2lmaWVkIGJ5IHRoZSByZXF1ZXN0IGhlYWRlcnMgSWYtTW9kaWZpZWQtU2luY2Ugb3IgSWYtTm9uZS1NYXRjaC4gSW4gc3VjaCBhIGNhc2UsIHRoZXJlIGlzIG5vIG5lZWQgdG8gcmV0cmFuc21pdCB0aGUgcmVzb3VyY2Ugc2luY2UgdGhlIGNsaWVudCBzdGlsbCBoYXMgYSBwcmV2aW91c2x5LWRvd25sb2FkZWQgY29weS4gVXNpbmcgdGhpcyBzYXZlcyBiYW5kd2lkdGggYW5kIHJlcHJvY2Vzc2luZyBvbiBib3RoIHRoZSBzZXJ2ZXIgYW5kIGNsaWVudCwgYXMgb25seSB0aGUgaGVhZGVyIGRhdGEgbXVzdCBiZSBzZW50IGFuZCByZWNlaXZlZCBpbiBjb21wYXJpc29uIHRvIHRoZSBlbnRpcmV0eSBvZiB0aGUgcGFnZSBiZWluZyByZS1wcm9jZXNzZWQgYnkgdGhlIHNlcnZlciwgdGhlbiBzZW50IGFnYWluIHVzaW5nIG1vcmUgYmFuZHdpZHRoIG9mIHRoZSBzZXJ2ZXIgYW5kIGNsaWVudC4KKiAqKjMwNyAoVGVtcG9yYXJ5IFJlZGlyZWN0KSoqIEEgMzA3IHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRoZSBSRVNUIEFQSSBpcyBub3QgZ29pbmcgdG8gcHJvY2VzcyB0aGUgY2xpZW50J3MgcmVxdWVzdC4gSW5zdGVhZCwgdGhlIGNsaWVudCBzaG91bGQgcmVzdWJtaXQgdGhlIHJlcXVlc3QgdG8gdGhlIFVSSSBzcGVjaWZpZWQgYnkgdGhlIHJlc3BvbnNlIG1lc3NhZ2UncyBMb2NhdGlvbiBoZWFkZXIuIEhvd2V2ZXIsIGZ1dHVyZSByZXF1ZXN0cyBzaG91bGQgc3RpbGwgdXNlIHRoZSBvcmlnaW5hbCBVUkkuIEEgUkVTVCBBUEkgY2FuIHVzZSB0aGlzIHN0YXR1cyBjb2RlIHRvIGFzc2lnbiBhIHRlbXBvcmFyeSBVUkkgdG8gdGhlIGNsaWVudCdzIHJlcXVlc3RlZCByZXNvdXJjZS4gRm9yIGV4YW1wbGUsIGEgMzA3IHJlc3BvbnNlIGNhbiBiZSB1c2VkIHRvIHNoaWZ0IGEgY2xpZW50IHJlcXVlc3Qgb3ZlciB0byBhbm90aGVyIGhvc3QuIFRoZSB0ZW1wb3JhcnkgVVJJIFNIT1VMRCBiZSBnaXZlbiBieSB0aGUgTG9jYXRpb24gZmllbGQgaW4gdGhlIHJlc3BvbnNlLiBVbmxlc3MgdGhlIHJlcXVlc3QgbWV0aG9kIHdhcyBIRUFELCB0aGUgZW50aXR5IG9mIHRoZSByZXNwb25zZSBTSE9VTEQgY29udGFpbiBhIHNob3J0IGh5cGVydGV4dCBub3RlIHdpdGggYSBoeXBlcmxpbmsgdG8gdGhlIG5ldyBVUkkocykuIElmIHRoZSAzMDcgc3RhdHVzIGNvZGUgaXMgcmVjZWl2ZWQgaW4gcmVzcG9uc2UgdG8gYSByZXF1ZXN0IG90aGVyIHRoYW4gYEdFVGAgb3IgYEhFQURgLCB0aGUgdXNlciBhZ2VudCBNVVNUIE5PVCBhdXRvbWF0aWNhbGx5IHJlZGlyZWN0IHRoZSByZXF1ZXN0IHVubGVzcyBpdCBjYW4gYmUgY29uZmlybWVkIGJ5IHRoZSB1c2VyLCBzaW5jZSB0aGlzIG1pZ2h0IGNoYW5nZSB0aGUgY29uZGl0aW9ucyB1bmRlciB3aGljaCB0aGUgcmVxdWVzdCB3YXMgaXNzdWVkLgoqICoqNDAwIChCYWQgUmVxdWVzdCkqKiA0MDAgaXMgdGhlIGdlbmVyaWMgY2xpZW50LXNpZGUgZXJyb3Igc3RhdHVzLCB1c2VkIHdoZW4gbm8gb3RoZXIgNHh4IGVycm9yIGNvZGUgaXMgYXBwcm9wcmlhdGUuIEVycm9ycyBjYW4gYmUgbGlrZSBtYWxmb3JtZWQgcmVxdWVzdCBzeW50YXgsIGludmFsaWQgcmVxdWVzdCBtZXNzYWdlIHBhcmFtZXRlcnMsIG9yIGRlY2VwdGl2ZSByZXF1ZXN0IHJvdXRpbmcgZXRjLiBUaGUgY2xpZW50IFNIT1VMRCBOT1QgcmVwZWF0IHRoZSByZXF1ZXN0IHdpdGhvdXQgbW9kaWZpY2F0aW9ucy4KKiAqKjQwMSAoVW5hdXRob3JpemVkKSoqIEEgNDAxIGVycm9yIHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRoZSBjbGllbnQgdHJpZWQgdG8gb3BlcmF0ZSBvbiBhIHByb3RlY3RlZCByZXNvdXJjZSB3aXRob3V0IHByb3ZpZGluZyB0aGUgcHJvcGVyIGF1dGhvcml6YXRpb24uIEl0IG1heSBoYXZlIHByb3ZpZGVkIHRoZSB3cm9uZyBjcmVkZW50aWFscyBvciBub25lIGF0IGFsbC4gVGhlIHJlc3BvbnNlIG11c3QgaW5jbHVkZSBhIFdXVy1BdXRoZW50aWNhdGUgaGVhZGVyIGZpZWxkIGNvbnRhaW5pbmcgYSBjaGFsbGVuZ2UgYXBwbGljYWJsZSB0byB0aGUgcmVxdWVzdGVkIHJlc291cmNlLiBUaGUgY2xpZW50IE1BWSByZXBlYXQgdGhlIHJlcXVlc3Qgd2l0aCBhIHN1aXRhYmxlIEF1dGhvcml6YXRpb24gaGVhZGVyIGZpZWxkLiBJZiB0aGUgcmVxdWVzdCBhbHJlYWR5IGluY2x1ZGVkIEF1dGhvcml6YXRpb24gY3JlZGVudGlhbHMsIHRoZW4gdGhlIDQwMSByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCBhdXRob3JpemF0aW9uIGhhcyBiZWVuIHJlZnVzZWQgZm9yIHRob3NlIGNyZWRlbnRpYWxzLiBJZiB0aGUgNDAxIHJlc3BvbnNlIGNvbnRhaW5zIHRoZSBzYW1lIGNoYWxsZW5nZSBhcyB0aGUgcHJpb3IgcmVzcG9uc2UsIGFuZCB0aGUgdXNlciBhZ2VudCBoYXMgYWxyZWFkeSBhdHRlbXB0ZWQgYXV0aGVudGljYXRpb24gYXQgbGVhc3Qgb25jZSwgdGhlbiB0aGUgdXNlciBTSE9VTEQgYmUgcHJlc2VudGVkIHRoZSBlbnRpdHkgdGhhdCB3YXMgZ2l2ZW4gaW4gdGhlIHJlc3BvbnNlLCBzaW5jZSB0aGF0IGVudGl0eSBtaWdodCBpbmNsdWRlIHJlbGV2YW50IGRpYWdub3N0aWMgaW5mb3JtYXRpb24uCiogKio0MDMgKEZvcmJpZGRlbikqKiBBIDQwMyBlcnJvciByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCB0aGUgY2xpZW50J3MgcmVxdWVzdCBpcyBmb3JtZWQgY29ycmVjdGx5LCBidXQgdGhlIFJFU1QgQVBJIHJlZnVzZXMgdG8gaG9ub3IgaXQsIGkuZS4sIHRoZSB1c2VyIGRvZXMgbm90IGhhdmUgdGhlIG5lY2Vzc2FyeSBwZXJtaXNzaW9ucyBmb3IgdGhlIHJlc291cmNlLiBBIDQwMyByZXNwb25zZSBpcyBub3QgYSBjYXNlIG9mIGluc3VmZmljaWVudCBjbGllbnQgY3JlZGVudGlhbHM7IHRoYXQgd291bGQgYmUgNDAxICgiVW5hdXRob3JpemVkIikuIEF1dGhlbnRpY2F0aW9uIHdpbGwgbm90IGhlbHAsIGFuZCB0aGUgcmVxdWVzdCBTSE9VTEQgTk9UIGJlIHJlcGVhdGVkLiBVbmxpa2UgYSA0MDEgVW5hdXRob3JpemVkIHJlc3BvbnNlLCBhdXRoZW50aWNhdGluZyB3aWxsIG1ha2Ugbm8gZGlmZmVyZW5jZS4KKiAqKjQwNCAoTm90IEZvdW5kKSoqIFRoZSA0MDQgZXJyb3Igc3RhdHVzIGNvZGUgaW5kaWNhdGVzIHRoYXQgdGhlIFJFU1QgQVBJIGNhbid0IG1hcCB0aGUgY2xpZW50J3MgVVJJIHRvIGEgcmVzb3VyY2UgYnV0IG1heSBiZSBhdmFpbGFibGUgaW4gdGhlIGZ1dHVyZS4gU3Vic2VxdWVudCByZXF1ZXN0cyBieSB0aGUgY2xpZW50IGFyZSBwZXJtaXNzaWJsZS4gTm8gaW5kaWNhdGlvbiBpcyBnaXZlbiBvZiB3aGV0aGVyIHRoZSBjb25kaXRpb24gaXMgdGVtcG9yYXJ5IG9yIHBlcm1hbmVudC4gVGhlIDQxMCAoR29uZSkgc3RhdHVzIGNvZGUgU0hPVUxEIGJlIHVzZWQgaWYgdGhlIHNlcnZlciBrbm93cywgdGhyb3VnaCBzb21lIGludGVybmFsbHkgY29uZmlndXJhYmxlIG1lY2hhbmlzbSwgdGhhdCBhbiBvbGQgcmVzb3VyY2UgaXMgcGVybWFuZW50bHkgdW5hdmFpbGFibGUgYW5kIGhhcyBubyBmb3J3YXJkaW5nIGFkZHJlc3MuIFRoaXMgc3RhdHVzIGNvZGUgaXMgY29tbW9ubHkgdXNlZCB3aGVuIHRoZSBzZXJ2ZXIgZG9lcyBub3Qgd2lzaCB0byByZXZlYWwgZXhhY3RseSB3aHkgdGhlIHJlcXVlc3QgaGFzIGJlZW4gcmVmdXNlZCwgb3Igd2hlbiBubyBvdGhlciByZXNwb25zZSBpcyBhcHBsaWNhYmxlLgoqICoqNDA1IChNZXRob2QgTm90IEFsbG93ZWQpKiogVGhlIEFQSSByZXNwb25kcyB3aXRoIGEgNDA1IGVycm9yIHRvIGluZGljYXRlIHRoYXQgdGhlIGNsaWVudCB0cmllZCB0byB1c2UgYW4gSFRUUCBtZXRob2QgdGhhdCB0aGUgcmVzb3VyY2UgZG9lcyBub3QgYWxsb3cuIEZvciBpbnN0YW5jZSwgYSByZWFkLW9ubHkgcmVzb3VyY2UgY291bGQgc3VwcG9ydCBvbmx5IEdFVCBhbmQgSEVBRCwgd2hpbGUgYSBjb250cm9sbGVyIHJlc291cmNlIG1pZ2h0IGFsbG93IEdFVCBhbmQgUE9TVCwgYnV0IG5vdCBQVVQgb3IgREVMRVRFLiBBIDQwNSByZXNwb25zZSBtdXN0IGluY2x1ZGUgdGhlIEFsbG93IGhlYWRlciwgd2hpY2ggbGlzdHMgdGhlIEhUVFAgbWV0aG9kcyB0aGF0IHRoZSByZXNvdXJjZSBzdXBwb3J0cy4gRm9yIGV4YW1wbGU6IEFsbG93OiBHRVQsIFBPU1QKKiAqKjQwNiAoTm90IEFjY2VwdGFibGUpKiogVGhlIDQwNiBlcnJvciByZXNwb25zZSBpbmRpY2F0ZXMgdGhhdCB0aGUgQVBJIGlzIG5vdCBhYmxlIHRvIGdlbmVyYXRlIGFueSBvZiB0aGUgY2xpZW50J3MgcHJlZmVycmVkIG1lZGlhIHR5cGVzLCBhcyBpbmRpY2F0ZWQgYnkgdGhlIEFjY2VwdCByZXF1ZXN0IGhlYWRlci4gRm9yIGV4YW1wbGUsIGEgY2xpZW50IHJlcXVlc3QgZm9yIGRhdGEgZm9ybWF0dGVkIGFzIGBhcHBsaWNhdGlvbi94bWxgIHdpbGwgcmVjZWl2ZSBhIDQwNiByZXNwb25zZSBpZiB0aGUgQVBJIGlzIG9ubHkgd2lsbGluZyB0byBmb3JtYXQgZGF0YSBhcyBgYXBwbGljYXRpb24vanNvbmAuIElmIHRoZSByZXNwb25zZSBjb3VsZCBiZSB1bmFjY2VwdGFibGUsIGEgdXNlciBhZ2VudCBTSE9VTEQgdGVtcG9yYXJpbHkgc3RvcCByZWNlaXB0IG9mIG1vcmUgZGF0YSBhbmQgcXVlcnkgdGhlIHVzZXIgZm9yIGEgZGVjaXNpb24gb24gZnVydGhlciBhY3Rpb25zLgoqICoqNDEyIChQcmVjb25kaXRpb24gRmFpbGVkKSoqIFRoZSA0MTIgZXJyb3IgcmVzcG9uc2UgaW5kaWNhdGVzIHRoYXQgdGhlIGNsaWVudCBzcGVjaWZpZWQgb25lIG9yIG1vcmUgcHJlY29uZGl0aW9ucyBpbiBpdHMgcmVxdWVzdCBoZWFkZXJzLCBlZmZlY3RpdmVseSB0ZWxsaW5nIHRoZSBSRVNUIEFQSSB0byBjYXJyeSBvdXQgaXRzIHJlcXVlc3Qgb25seSBpZiBjZXJ0YWluIGNvbmRpdGlvbnMgd2VyZSBtZXQuIEEgNDEyIHJlc3BvbnNlIGluZGljYXRlcyB0aGF0IHRob3NlIGNvbmRpdGlvbnMgd2VyZSBub3QgbWV0LCBzbyBpbnN0ZWFkIG9mIGNhcnJ5aW5nIG91dCB0aGUgcmVxdWVzdCwgdGhlIEFQSSBzZW5kcyB0aGlzIHN0YXR1cyBjb2RlLgoqICoqNDE1IChVbnN1cHBvcnRlZCBNZWRpYSBUeXBlKSoqIFRoZSA0MTUgZXJyb3IgcmVzcG9uc2UgaW5kaWNhdGVzIHRoYXQgdGhlIEFQSSBpcyBub3QgYWJsZSB0byBwcm9jZXNzIHRoZSBjbGllbnQncyBzdXBwbGllZCBtZWRpYSB0eXBlLCBhcyBpbmRpY2F0ZWQgYnkgdGhlIENvbnRlbnQtVHlwZSByZXF1ZXN0IGhlYWRlci4gRm9yIGV4YW1wbGUsIGEgY2xpZW50IHJlcXVlc3QgaW5jbHVkaW5nIGRhdGEgZm9ybWF0dGVkIGFzIGBhcHBsaWNhdGlvbi94bWxgIHdpbGwgcmVjZWl2ZSBhIDQxNSByZXNwb25zZSBpZiB0aGUgQVBJIGlzIG9ubHkgd2lsbGluZyB0byBwcm9jZXNzIGRhdGEgZm9ybWF0dGVkIGFzIGBhcHBsaWNhdGlvbi9qc29uYC4gRm9yIGV4YW1wbGUsIHRoZSBjbGllbnQgdXBsb2FkcyBhbiBpbWFnZSBhcyBpbWFnZS9zdmcreG1sLCBidXQgdGhlIHNlcnZlciByZXF1aXJlcyB0aGF0IGltYWdlcyB1c2UgYSBkaWZmZXJlbnQgZm9ybWF0LgoqICoqNTAwIChJbnRlcm5hbCBTZXJ2ZXIgRXJyb3IpKiogNTAwIGlzIHRoZSBnZW5lcmljIFJFU1QgQVBJIGVycm9yIHJlc3BvbnNlLiBNb3N0IHdlYiBmcmFtZXdvcmtzIGF1dG9tYXRpY2FsbHkgcmVzcG9uZCB3aXRoIHRoaXMgcmVzcG9uc2Ugc3RhdHVzIGNvZGUgd2hlbmV2ZXIgdGhleSBleGVjdXRlIHNvbWUgcmVxdWVzdCBoYW5kbGVyIGNvZGUgdGhhdCByYWlzZXMgYW4gZXhjZXB0aW9uLiBBIDUwMCBlcnJvciBpcyBuZXZlciB0aGUgY2xpZW50J3MgZmF1bHQsIGFuZCB0aGVyZWZvcmUsIGl0IGlzIHJlYXNvbmFibGUgZm9yIHRoZSBjbGllbnQgdG8gcmV0cnkgdGhlIHNhbWUgcmVxdWVzdCB0aGF0IHRyaWdnZXJlZCB0aGlzIHJlc3BvbnNlIGFuZCBob3BlIHRvIGdldCBhIGRpZmZlcmVudCByZXNwb25zZS4gVGhlIEFQSSByZXNwb25zZSBpcyB0aGUgZ2VuZXJpYyBlcnJvciBtZXNzYWdlLCBnaXZlbiB3aGVuIGFuIHVuZXhwZWN0ZWQgY29uZGl0aW9uIHdhcyBlbmNvdW50ZXJlZCBhbmQgbm8gbW9yZSBzcGVjaWZpYyBtZXNzYWdlIGlzIHN1aXRhYmxlLgoqICoqNTAxIChOb3QgSW1wbGVtZW50ZWQpKiogVGhlIHNlcnZlciBlaXRoZXIgZG9lcyBub3QgcmVjb2duaXplIHRoZSByZXF1ZXN0IG1ldGhvZCwgb3IgaXQgY2Fubm90IGZ1bGZpbGwgdGhlIHJlcXVlc3QuIFVzdWFsbHksIHRoaXMgaW1wbGllcyBmdXR1cmUgYXZhaWxhYmlsaXR5IChlLmcuLCBhIG5ldyBmZWF0dXJlIG9mIGEgd2ViLXNlcnZpY2UgQVBJKS4KCiMjIyBIb3cgaXQgV29ya3MKCldlIHVzZSBWdWUgMyB3aXRoIHRoZSBDb21wb3NpdGlvbiBBUEkgdG8gcHJvdmlkZSBhbiBlbnRpcmUgd2Vic2l0ZS9hcHBsaWNhdGlvbiBpbiBhIHNpbmdsZSBwYWdlLiAgVGhpcyBpcyBkb25lIHVzaW5nIGEgY29tYmluYXRpb24gb2YgVnVlIFNGQydzIChTaW5nbGUgRmlsZSBDb21wb25lbnRzKSB3aGljaCBhbmQgdGhlIFZ1ZSBSb3V0ZXIgdG8gY2hhbmdlIHRoZSB1cmwgaW4gdGhlIGJyb3dzZXIgd2l0aG91dCBhY3R1YWxseSBuYXZpZ2F0aW5nIHRvIGEgbmV3IHBhZ2UuCgpWYXJpYWJsZXMgYXJlIG1vc3RseSBoYW5kbGVkIGJ5IHJlZmVyZW5jZSAobGlrZSBhIHBvaW50ZXIpLiAgVGhpcyBhbGxvd3MgdXMgdG8gcGFzcyBhcm91bmQgdmFyaWFibGVzIHRoYXQgYXJlIHVrZXB0IHVwIHRvIGRhdGUgd2hlbiBjaGFuZ2VkIGluIG90aGVyIHNlY3Rpb25zIG9mIHRoZSBzaXRlLgoKIyMjIyBDb3JlIEZ1bmN0aW9uYWxpdHkKClRoZXNlIGFyZSB0aGUgbGlicyB3aGljaCBwb3dlciB0aGUgbWFqb3JpdHkgb2YgdGhlIHNpdGVzIGZ1bmN0aW9uYWxpdHkuICBZb3Ugc2hvdWxkIGF0IGxlYXN0IGJyZWlmbHkgcmVhZCBvcHZlciBlYWNoIG9mIHRoZW0uCgoqIFsqKlZ1ZSAzKipdKGh0dHBzOi8vdnVlanMub3JnL2d1aWRlL2ludHJvZHVjdGlvbi5odG1sKSBpcyB0aGUgKipUZW1wbGF0ZSBFbmdpbmUqKiB3aXRoIGFsbCB0aGUgbW9kZXJuIGJlbGxzIGFuZCB3aGlzdGxlcyBsaWtlIGF1dG9tYXRpY2FsbHkgdXBkYXRpbmcgdGhlIGRpc3BsYXkgcmVuZGVyIGFzIGRhdGEgY2hhbmdlcy4KKiBbKipQaW5pYSoqXShodHRwczovL3BpbmlhLnZ1ZWpzLm9yZy9pbnRyb2R1Y3Rpb24uaHRtbCkgaXMgdXNlZCB0byBwcm92aWRlICoqRGF0YSBTdG9yZXMqKiB3aGljaCBhbGxvdyB1cyB0byBsb2FkIGRhdGEgdGhhdCBpcyByZXVzYWJsZSBiZXR3ZWVuIHBhZ2VzIHdpdGhvdXQgaGF2aW5nIHRvIHJlbG9hZCB0aGUgZGF0YS4KKiBbKipWdWUgUm91dGVyKipdKGh0dHBzOi8vcm91dGVyLnZ1ZWpzLm9yZy9pbnN0YWxsYXRpb24uaHRtbCkgaXMgdXNlZCBmb3IgKipSb3V0aW5nKiogdG8gdHJpZ2dlciBjYWxsaW5nIHBhZ2VzIGJhc2VkIG9uIHRoZSB1cmwgd2hpbGUgYWxsIGJlaW5nIGluIGEgc2luZ2xlIHBhZ2UpLgoKIyMjIyBBZGRpdGlvbmFsIEZ1bmN0aW9uYWxpdHkKClRoaXMgc3R1ZmYgcHJvdmlkZXMgZ29vZCBmZWF0dXJlcyBidXQgZG9lcyBub3QgcmVxdWlyZSB5b3UgdG8gcmVhbGx5IGJlIGZhbWlpYXIgd2l0aCBpdC4gIFNraXAgb3ZlciB0aGVzZSB1bmxlc3MgeW91IGZpbmQgeW91IG5lZWQgdG8ga25vdyBtb3JlIGFib3V0IG9uZSBvZiB0aGVtIGZvciBzb21lIHJlYXNvbi4KCiogWyoqVml0ZSoqXShodHRwczovL3ZpdGVqcy5kZXYvZ3VpZGUvKSBpcyBvdXIgKipGcm9udGVuZCBUb29saW5nKiogc3lzdGVtIHdoaWNoIHByb3ZpZGVzIGEgbmljZSBkZXYgc2V0dXAgYW5kIGhhbmRsZXMgYnVpbGRpbmcgdGhlIHByb2plY3QgZm9yIHByb2R1Y3Rpb24gdXNlLgoqIFsqKlZpdGUgUFdBKipdKGh0dHBzOi8vdml0ZS1wd2Etb3JnLm5ldGxpZnkuYXBwL2d1aWRlLykgYXV0b21hdGljYWxseSBnZW5lcmF0ZXMgdGhlIHRoZSBmaWxlcyBuZWVkZWQgc28gd2UgYXJlIGEgWyoqUFdBKipdKGh0dHBzOi8vd2ViLmRldi9sZWFybi9wd2EvKSAoKipQcm9ncmVzc2l2ZSBXZWIgQXBwKiopLgoqIFsqKkVsZWN0cm9uKipdKGh0dHBzOi8vd3d3LmVsZWN0cm9uanMub3JnLykgYWxsb3dzIHVzIHRvIGJ1aWxkIGEgKipEZXNrdG9wIEFwcCoqIGZvciBtYWNPUywgV2luZG93cywgTGludXgsIGFzIHdlbGwgYXMgTW9iaWxlIERldmljZSB2ZXJzaW9ucy4KKiBbKipFU0xpbnQqKl0oaHR0cHM6Ly9lc2xpbnQub3JnLykgaXMgb3VyICoqTGludGVyKiogd2hpY2ggY2FuIGRldGVjdCBhIHdpZGUgcmFuZ2Ugb2YgcHJvYmxlbXMgeW91ciBjb2RlLgoqIFsqKlByZXR0aWVyKipdKGh0dHBzOi8vcHJldHRpZXIuaW8vKSBpcyBvdXIgKipDb2RlIEZvcm1hdHRlcioqIGFsbG93aW5nIGF1dG9tYXRpYyBmb3JtYXR0aW5nIG9mIGNvZGUgYmFzZWQgb24gb3VyIHNldCBvZiBwcmVkZWZpbmVkIHJ1bGVzLgoqIFsqKlZpdGVzdCoqXShodHRwczovL3ZpdGVzdC5kZXYvZ3VpZGUvKSBpcyBvdXIgKipVbml0IFRlc3RpbmcqKiBmcmFtZXdvcmsuCiogWyoqVmVlVmFsaWRhdGUqKl0oaHR0cHM6Ly92ZWUtdmFsaWRhdGUubG9nYXJldG0uY29tL3Y0L2d1aWRlL292ZXJ2aWV3LykgaXMgaW5zdGFsbGVkIGZvciAqKkZvcm0gVmFsaWRhdGlvbioqCiogWyoqVnVlLWkxOG4qKl0oaHR0cHM6Ly92dWUtaTE4bi5pbnRsaWZ5LmRldi9ndWlkZS9pbnRyb2R1Y3Rpb24uaHRtbCkgaXMgb3VyICoqVHJhbnNsYXRpb24qKiBsaWIuCgojIyMjIEluc3BlY3RpbmcgYW5kIERlYnVnZ2luZyBUaGUgTGl2ZSBEYXRhCgpUaGVyZSBhcmUgc2V2ZXJhbCBEZXZlbG9wZXIgQ29uc29sZSB0eXBlIGludGVyZmFjZXMgc2V0dXAgd2hpY2ggd2UgY2FuIHVzZSB0byB2aWV3IGFuZCBtb2RpZnkgdGhlIGxpdmUgdmFyaWFibGVzIGdlbmVyYXRpbmcgdGhlIHNpdGUuCgpCcm93c2VyIEV4dGVuc2lvbiBbVnVlIERldnRvb2xzXShodHRwczovL2RldnRvb2xzLnZ1ZWpzLm9yZy9ndWlkZS9pbnN0YWxsYXRpb24uaHRtbCkKIVt2dWUtZGV2dG9vbHMtZXh0ZW5zaW9uXShodHRwczovL2dpdGh1Yi5jb20vZGV0YWluL215YWRtaW4tY2xpZW50LXZ1ZS9hc3NldHMvMTM2NDUwNC81MzZlMDViZS05NjUzLTQzZmYtYWNjZS0yYjIwODBmNzZhOTQpCgpUaGUgb3RoZXIgd2F5IGlzCiFbdnVlLWRldnRvb2xzLXBvcHVwXShodHRwczovL2dpdGh1Yi5jb20vZGV0YWluL215YWRtaW4tY2xpZW50LXZ1ZS9hc3NldHMvMTM2NDUwNC85YjUwMmE2OS0wOWM0LTQ4YjctYWM4OC0yZmU1MGQ0YWIxNWMpCgojIyBSZWNvbW1lbmRlZCBJREUgU2V0dXAKCltWU0NvZGVdKGh0dHBzOi8vY29kZS52aXN1YWxzdHVkaW8uY29tLykgKyBbVm9sYXJdKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1WdWUudm9sYXIpIChhbmQgZGlzYWJsZSBWZXR1cikgKyBbVHlwZVNjcmlwdCBWdWUgUGx1Z2luIChWb2xhcildKGh0dHBzOi8vbWFya2V0cGxhY2UudmlzdWFsc3R1ZGlvLmNvbS9pdGVtcz9pdGVtTmFtZT1WdWUudnNjb2RlLXR5cGVzY3JpcHQtdnVlLXBsdWdpbikuCgojIyBDdXN0b21pemUgY29uZmlndXJhdGlvbgoKU2VlIFtWaXRlIENvbmZpZ3VyYXRpb24gUmVmZXJlbmNlXShodHRwczovL3ZpdGVqcy5kZXYvY29uZmlnLykuCgojIyBQcm9qZWN0IFNldHVwCgpgYGBzaApucG0gaW5zdGFsbApgYGAKCiMjIyBDb21waWxlIGFuZCBIb3QtUmVsb2FkIGZvciBEZXZlbG9wbWVudAoKYGBgc2gKbnBtIHJ1biBkZXYKYGBgCgojIyMgQ29tcGlsZSBhbmQgTWluaWZ5IGZvciBQcm9kdWN0aW9uCgpgYGBzaApucG0gcnVuIGJ1aWxkCmBgYAoKIyMjIExpbnQgd2l0aCBbRVNMaW50XShodHRwczovL2VzbGludC5vcmcvKQoKYGBgc2gKbnBtIHJ1biBsaW50CmBgYAo= + readmeEtag: '"6e31d86772a4175734cccecde67437c12dbc43f08140842671484669aedad425"' + readmeLastModified: Fri, 15 Dec 2023 04:11:07 GMT repositoryId: 614741193 description: MyAdmin Vue3 Client Frontend created: '2023-03-16T08:15:57Z' @@ -24120,7 +24120,7 @@ forks: 0 owner: detain logo: https://avatars.githubusercontent.com/u/1364504?v=4 - repoEtag: '"fbba723b49e7b7d3809b78d31ca893fb47dbbd58e8b4d9f0c734fe2e9bec03f6"' + repoEtag: '"f5e82236df47adc60f7f6be744a550f7dde824166d0cf4f03134587036e1dc7a"' repoLastModified: Fri, 28 Apr 2023 04:23:19 GMT category: - SDK @@ -24460,7 +24460,7 @@ forks: 0 owner: TheAirBlow logo: https://avatars.githubusercontent.com/u/68467762?v=4 - repoEtag: '"29fa546bcf242ebbbaca84fd74e679b7e1c4eae370d99f5204cf95d99a565939"' + repoEtag: '"8ad53f1dfad0784e093165f597b9cee4c73e8b32455c72c3e1769099804f2259"' repoLastModified: Tue, 03 Jan 2023 13:13:05 GMT foundInMaster: true category: @@ -25715,7 +25715,7 @@ owner: hiroyoshii logo: https://avatars.githubusercontent.com/u/40140638?v=4 license: Apache-2.0 - repoEtag: '"63ffac58e8078ab09fb0a64da3eeaf2bf86e0c5b44b202f34a19c2868202e705"' + repoEtag: '"1f613e090e6b09528cd6d9677c446aa3ace43c15e149af86a16ee4715465c9fe"' repoLastModified: Sat, 02 Sep 2023 16:28:12 GMT category: Server Implementations foundInMaster: true @@ -25882,16 +25882,16 @@ repositoryId: 683896092 description: Beff Framework, easy to learn, fast to code, safe to use created: '2023-08-28T02:32:08Z' - updated: '2023-09-28T03:40:31Z' + updated: '2023-12-15T15:36:06Z' language: Rust archived: false - stars: 1 + stars: 2 watchers: 1 forks: 0 owner: lucasavila00 logo: https://avatars.githubusercontent.com/u/12750442?v=4 - repoEtag: '"b66d77a2d034475cf2303028670c5cdd6fc53b0cd9a4bf7ead0498536c3141fe"' - repoLastModified: Thu, 28 Sep 2023 03:40:31 GMT + repoEtag: '"258d27477217e079495d06933fc1921d19063fc31797ee7fecbdbf18c3e9dd70"' + repoLastModified: Fri, 15 Dec 2023 15:36:06 GMT category: Server Implementations foundInMaster: true - source: openapi3 tags @@ -26346,7 +26346,7 @@ owner: protung logo: https://avatars.githubusercontent.com/u/81255167?v=4 license: MIT - repoEtag: '"94bb2bb6370f302fffc7c034faf1494a59374640aa29219bf8010ecb63fa51f7"' + repoEtag: '"e0d7b31ed9810b5eafcf4f29d7b7b391c59a859a12bc062179e05696bcf412c6"' repoLastModified: Fri, 16 Dec 2022 13:24:18 GMT category: - Server @@ -26729,17 +26729,17 @@ Generate a C# Refit client interface and contracts from an OpenAPI specifications document using Refitter. created: '2023-07-28T09:08:49Z' - updated: '2023-07-28T11:58:10Z' + updated: '2023-12-15T04:34:25Z' language: null archived: false - stars: 0 + stars: 1 watchers: 1 forks: 0 owner: Refitter logo: https://avatars.githubusercontent.com/u/140486945?v=4 license: GPL-3.0 - repoEtag: '"679a13d981e6cb79c09d3ca9636162731a4fd8aa861c21030aa972da611c3a98"' - repoLastModified: Fri, 28 Jul 2023 11:58:10 GMT + repoEtag: '"c2a7be12a1e6e65c15b18ac8fbb61fa9ff48781e67b26287b37323d32132facb"' + repoLastModified: Fri, 15 Dec 2023 04:34:25 GMT category: Parsers foundInMaster: true - source: openapi3 tags @@ -26836,7 +26836,7 @@ owner: christianhelle logo: https://avatars.githubusercontent.com/u/710400?v=4 license: GPL-3.0 - repoEtag: '"35fdd2055681ddd6335a40f06b2dfc878ae67883efefa8fff39bc40a10ad5a28"' + repoEtag: '"7985e40165a4dc984c061daebfc547b23bc2a2395d30e37b74e78abda1acfba5"' repoLastModified: Mon, 15 May 2023 20:33:59 GMT category: Parsers foundInMaster: true @@ -29406,7 +29406,7 @@ owner: dashotv logo: https://avatars.githubusercontent.com/u/20273052?v=4 license: MIT - repoEtag: '"6ea5212f8e8e448ef90214bf7288d6b4537063683a00b7f40818a6d3b934f780"' + repoEtag: '"df8d4b49a31638dd70aa646264aa48f670482a868e069f21d5f36f54f1fdda76"' repoLastModified: Tue, 31 Oct 2023 03:24:53 GMT category: Server Implementations foundInMaster: true @@ -30376,7 +30376,7 @@ owner: maciek1839 logo: https://avatars.githubusercontent.com/u/16246708?v=4 license: MIT - repoEtag: '"6968a17f6c0a632bd816e5e632112978a42fd83ac925e60282b72148e016b452"' + repoEtag: '"0e4af1cd09cf63d29fbfb9bb03928bbb2dfa826c51611ad228cbaf6cf31ac5ad"' repoLastModified: Sun, 03 Sep 2023 01:27:23 GMT category: Server Implementations foundInMaster: true @@ -31264,7 +31264,7 @@ owner: interserver logo: https://avatars.githubusercontent.com/u/29833539?v=4 license: MIT - repoEtag: '"34201c24500de348140593dc8180747fc6b1047137c45d1eec70500a831bd8a6"' + repoEtag: '"bc53d9d254229857d4eefd4d53fa8bb2a7939b6e2c2febd5b6fd75fb0c2f8660"' repoLastModified: Tue, 08 Aug 2023 16:13:20 GMT category: Parsers foundInMaster: true @@ -31371,7 +31371,7 @@ forks: 0 owner: bryopsida logo: https://avatars.githubusercontent.com/u/8363252?v=4 - repoEtag: '"165873ec8bd333a323335c7fdcc20c53ba5a9ae3b763ba00738f28528c672229"' + repoEtag: '"27d476a631d66cbe1c207afc8f840b4ca252b7e0d094708c009caf696fe11b1c"' repoLastModified: Sat, 11 Nov 2023 23:08:22 GMT category: Server Implementations foundInMaster: true @@ -32240,7 +32240,7 @@ forks: 0 owner: wasedatime logo: https://avatars.githubusercontent.com/u/32608719?v=4 - repoEtag: '"84dafc9b775bde803c0b579ba088872c7a594f4313b0e6bb1a9bccc9119c57c2"' + repoEtag: '"19fe977954c1480cebc45b38378baa15b5ede549f46cb1dbae5ab0756c85fa52"' repoLastModified: Tue, 18 Jul 2023 09:13:10 GMT foundInMaster: true category: @@ -32899,7 +32899,7 @@ owner: ignatandrei logo: https://avatars.githubusercontent.com/u/153982?v=4 license: MIT - repoEtag: '"1ae9e647f8a019e2d85c6afd91b905df0b23b7c8da4d0cff4bc79f8af3cabcba"' + repoEtag: '"0fb6d3a68dbccdf69bc377fd8d376dae8080ac0133413e186c1c9ffa124abfb1"' repoLastModified: Wed, 22 Nov 2023 18:23:38 GMT foundInMaster: true id: aa2b2e89cc4f3ca16559d1e0a1cef89d @@ -33158,17 +33158,17 @@ repositoryId: 154916760 description: Build, Validate, Route, Authenticate and Mock using OpenAPI created: '2018-10-27T02:31:25Z' - updated: '2023-12-12T23:42:47Z' + updated: '2023-12-15T21:06:38Z' language: TypeScript archived: false - stars: 549 + stars: 548 watchers: 6 forks: 81 owner: openapistack logo: https://avatars.githubusercontent.com/u/147298423?v=4 license: MIT - repoEtag: '"f39e4873b8f74e549ed54762f02aa5d778d5f6d88ff2dc1a78c269bc1ec11e42"' - repoLastModified: Tue, 12 Dec 2023 23:42:47 GMT + repoEtag: '"4687e4f251e46db07045a1905024102e5065ec51d2afed1ef1810ba5bee66ace"' + repoLastModified: Fri, 15 Dec 2023 21:06:38 GMT foundInMaster: true id: 13cdf61fc6370ba6543e5a21256c2dfb oldLocations: @@ -35965,7 +35965,7 @@ owner: char0n logo: https://avatars.githubusercontent.com/u/193286?v=4 license: Apache-2.0 - repoEtag: '"f547c1fdefd7496a4642db10e9b96a2d27c7fd216ac8e541de416d5199816388"' + repoEtag: '"682d73a47fd01c70f4b664c65c8c7a61b67a6fe1ddd1464dab104dfd86fae562"' repoLastModified: Wed, 02 Aug 2023 07:09:44 GMT foundInMaster: true - source: IMPLEMENTATIONS.md @@ -36193,17 +36193,17 @@ repositoryId: 30567860 description: Single file PHP script that adds a REST API to a SQL database created: '2015-02-10T01:08:52Z' - updated: '2023-12-13T22:56:24Z' + updated: '2023-12-14T16:19:55Z' language: PHP archived: false - stars: 3460 + stars: 3461 watchers: 179 - forks: 1031 + forks: 1030 owner: mevdschee logo: https://avatars.githubusercontent.com/u/1288217?v=4 license: MIT - repoEtag: '"24d7fa02ab20cd6dfddbdcd1185c17f1aafd75800c5fa359cd98c543d8880ed9"' - repoLastModified: Wed, 13 Dec 2023 22:56:24 GMT + repoEtag: '"459004762db9d9a3db07765d0950e3975bab9055509ac858114f84605e2fb553"' + repoLastModified: Thu, 14 Dec 2023 16:19:55 GMT id: 84a7be428932f7789a8ad1a220b22216 - source: IMPLEMENTATIONS.md name: Fastify OpenAPI v3 @@ -36812,17 +36812,17 @@ Connexion is a modern Python web framework that makes spec-first and api-first development easy. created: '2015-05-19T13:05:58Z' - updated: '2023-12-12T17:38:52Z' + updated: '2023-12-15T17:48:18Z' language: Python archived: false stars: 4353 watchers: 86 - forks: 738 + forks: 739 owner: spec-first logo: https://avatars.githubusercontent.com/u/58754196?v=4 license: Apache-2.0 - repoEtag: '"256ab950843cc684c6a69085450cc2ec316222884b809a38d8fa236a48a8b664"' - repoLastModified: Tue, 12 Dec 2023 17:38:52 GMT + repoEtag: '"6f8beb97f62db958dbf18286ff041301a46f2788a5a4ec7b948d9cbd30f70393"' + repoLastModified: Fri, 15 Dec 2023 17:48:18 GMT foundInMaster: true homepage: https://github.com/zalando/connexion id: 2d575abdf2671028868058b2442d9131 @@ -36861,7 +36861,7 @@ owner: j-d-carmichael logo: https://avatars.githubusercontent.com/u/49351986?v=4 license: MIT - repoEtag: '"3fa7836affb63c818112cc0e1e16568bb85fa951674551c7578ac4271b8e3e16"' + repoEtag: '"1e0026cee66625df4ac4797cc6bc158f9fa4d98f53b1a683f01ad2de9b2fe5ef"' repoLastModified: Mon, 21 Aug 2023 04:50:10 GMT foundInMaster: true id: 8049f9d9f009ed969457a47b97bb22a5 @@ -37002,17 +37002,17 @@ repositoryId: 36670476 description: Swagger 2.0 and OpenAPI 3.0 command-line tool created: '2015-06-01T15:36:25Z' - updated: '2023-12-07T06:10:41Z' + updated: '2023-12-15T02:59:02Z' language: JavaScript archived: true - stars: 514 + stars: 513 watchers: 14 forks: 68 owner: APIDevTools logo: https://avatars.githubusercontent.com/u/43750074?v=4 license: MIT - repoEtag: '"d8589529dd729ed0d69d878aa0aebd4097447988308d4db29b10a7ebc042f9a8"' - repoLastModified: Thu, 07 Dec 2023 06:10:41 GMT + repoEtag: '"432842b87d81f8e257e883de10a834b30a07f37268aa66f731d857194345fb5c"' + repoLastModified: Fri, 15 Dec 2023 02:59:02 GMT foundInMaster: true id: 1861975d6734eb6c3e0ab0980e241853 oldLocations: @@ -37086,7 +37086,7 @@ owner: guardrail-dev logo: https://avatars.githubusercontent.com/u/77855402?v=4 license: MIT - repoEtag: '"dca8ca8be8f41dfe95b902a699d3fc8c9ad5f05319391a6fddf8b44ab42b2dc1"' + repoEtag: '"3586c134148e9c20b94ee8d6dc560fad83b79dd6dcbab0a70813f3a034c9f276"' repoLastModified: Mon, 11 Dec 2023 07:54:44 GMT foundInMaster: true id: 5a3fd6a978abf3303c9cce3950582502 @@ -37114,7 +37114,7 @@ LoopBack makes it easy to build modern API applications that require complex integrations. created: '2017-01-09T17:27:14Z' - updated: '2023-12-13T04:59:37Z' + updated: '2023-12-15T15:13:08Z' language: TypeScript archived: false stars: 4699 @@ -37123,8 +37123,8 @@ owner: loopbackio logo: https://avatars.githubusercontent.com/u/22173486?v=4 license: NOASSERTION - repoEtag: '"197a8a66d2b66364f57ba389f981b0c7be9ffe09fcdcbadfff6a5f98c62786ef"' - repoLastModified: Wed, 13 Dec 2023 04:59:37 GMT + repoEtag: '"6b5f847fc2e3ec69fc680319b95df3dfcc782d047b82ff7574e50f176a8d9633"' + repoLastModified: Fri, 15 Dec 2023 15:13:08 GMT foundInMaster: true id: 9132c25ad468bed25b9dbbe3a352abc2 v3: true @@ -37196,17 +37196,17 @@ testing cloud services through their REST APIs and finding security and reliability bugs in these services. created: '2020-07-24T21:40:11Z' - updated: '2023-12-13T13:04:49Z' + updated: '2023-12-14T07:47:12Z' language: Python archived: false - stars: 2353 + stars: 2354 watchers: 36 forks: 270 owner: microsoft logo: https://avatars.githubusercontent.com/u/6154722?v=4 license: MIT - repoEtag: '"b603e411513dc7a72518262c3d588dbcbb8fd195020c25ff366eb76158c59657"' - repoLastModified: Wed, 13 Dec 2023 13:04:49 GMT + repoEtag: '"ab393a88bb4208cc8984f846de34c4a243848de600c2d33297976dc34f0efc54"' + repoLastModified: Thu, 14 Dec 2023 07:47:12 GMT foundInMaster: true oldLocations: - https://github.com/microsoft/restler @@ -37359,7 +37359,7 @@ owner: weikangchia logo: https://avatars.githubusercontent.com/u/2174882?v=4 license: MIT - repoEtag: '"99d4b105c07df530a9a7fb60de479e1605acfe0b521261f7cfc0176b68435603"' + repoEtag: '"932f76073c5c3d69e502dd09fc476ee2d32e2797c5a6cec2410e2747dd02041f"' repoLastModified: Sat, 20 Nov 2021 15:06:15 GMT foundInMaster: true category: @@ -38002,17 +38002,17 @@ An OpenAPI (fka Swagger) client & converter in python, which is type-safe, dynamic, spec-compliant. created: '2014-07-27T06:47:30Z' - updated: '2023-11-29T18:52:16Z' + updated: '2023-12-14T19:20:24Z' language: Python archived: false - stars: 371 + stars: 372 watchers: 14 forks: 86 owner: pyopenapi logo: https://avatars.githubusercontent.com/u/35984678?v=4 license: MIT - repoEtag: '"49fedad8298914dc71438722386e35c26f1ad0151e2d992b68383d66f3d6b55b"' - repoLastModified: Wed, 29 Nov 2023 18:52:16 GMT + repoEtag: '"f3eac3e7ef9ee3e241ff9c523ffe81b5c60c906404e19cc149917e554232feb2"' + repoLastModified: Thu, 14 Dec 2023 19:20:24 GMT foundInMaster: true v3_link: https://github.com/mission-liao/pyswagger/blob/develop/docs/md/news.md id: 83585666ce7c5a42bc3e5463ac9b3c47