// Package api provides primitives to interact with the openapi HTTP API. // // Code generated by github.com/deepmap/oapi-codegen version v1.9.0 DO NOT EDIT. package api import ( "bytes" "compress/gzip" "encoding/base64" "fmt" "net/url" "path" "strings" "github.com/getkin/kin-openapi/openapi3" ) // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ "H4sIAAAAAAAC/+R97XIbt7Lgq6B4typJLUXqy3as82d97DhHOXbsteSTrTp2SeBMk4Q1BCYARjSjUtV9", "iH2T3Vu1P/b+2hfIfaMtND4GM4MhKdmyldz8cCTNDNBoNPq7G1eDTCxKwYFrNTi6GqhsDguKPz5Ris04", "5KdUXZjfc1CZZKVmgg+OGk8JU4QSbX6iijBtfpeQAbuEnExWRM+B/CLkBcjRYDgopShBagY4SyYWC8pz", "/JlpWOAP/0XCdHA0+JdxDdzYQTZ+aj8YXA8HelXC4GhApaQr8/sHMTFfuz8rLRmfub+flZIJyfQqeoFx", "DTOQ/g3718TnnC7SD9aPqTTV1cblGPyd2DfNiqi66AekqlhuHkyFXFA9OLJ/GLZfvB4OJPxaMQn54Oif", "/iWDHLeWAFu0hBaWIpTEUA3r/Xof5hWTD5BpA+CTS8oKOingJzE5Aa0NOB3KOWF8VgBR9jkRU0LJT2JC", "zGgqQSBzwTL7Y3OcX+bAyYxdAh+Sgi2YRjq7pAXLzb8VKKKF+ZsC4gYZkVe8WJFKGRjJkuk5sUjDyc3c", "gQQ7yG8TWw5TWhW6C9fpHIh7aOEgai6W3AFDKgWSLA3sOWiQC8Zx/jlTHiUjO3w0ZnqK8JexFqLQrHQT", "MV5PZOhRTmkGOCjkTJul2xEd/FNaKBh2kavnIA3QtCjEkphP24ASOtXmnTmQD2JC5lSRCQAnqposmNaQ", "j8gvoipywhZlsSI5FGA/KwoCH5myA1J1ochUSDv0BzEZEspzw0DEomSFeYfp0TteE/pEiAIoxxVd0qKL", "n9crPRecwMdSglJMIPInQMzbFdWQGxwJmdsF+n0AXElz6wJcYW+GXdK4gFUXhuMcuGZTBtINEkh+SBaV", "0gaeirNfK0uIbtM+uIOQnMccDCpnibPwhK8IfNSSEipn1cJwGE9vk3I1Mh+q0YlYwGt7tlbffkcysw2V", "gty8mUmgGuxS3flbRTDUR7zmLDcgIbZYQM6ohmJFJJihCMWl5jBlnJkPhoYR4PRmyiHiRFTaQUSlZllV", "UBn2oYceVDXx7HMd100wqhP3ZTjqNx7h1H1+yRRzh+yGI/zDfMkKw4DbXNzQmINsS857UqOixYCryY55", "YjFuac6jlTytpASuixURhlVSPy4SccQs1Yic/+3Jyd9+eHb2/PjFD2evn5z+7dwqAjmTkGkhV6Skek7+", "Kzl/Nxj/C/73bnBOaFkCzyG3Wwi8Wpj1TVkBZ+b9wXCQM+l/xD87oTWnag75Wf3m+8QZ6duXLg91GIhW", "Hx1MKyGoIsfP/JHBZRvG8dfCwC9H5GdBOCjDTpSWVaYrCYp8ixJCDUnOMjMVlQzUd4RKIKoqSyF1e+kO", "+KFRHg72zaILQfVgiHS97SIj0olPZiDGYUp6aoEio8nhyLn75vyI0GJJVwpfGpFz5OvIT8+PLHng1451", "vT22shwR6iSAJN8W7AII9UgjNM93BP9uRM6XMEkNs4RJLbWQ6haU0xkYpjYkk0oTLrQVoG4WK5aQjkfk", "fM7yHAyAHC5B4tB/adOyY40GUitkzIuIHFRgzeycFk1e43erRqidaYBMx+FlMBwsYbJxz9IU6ZWgmk6s", "8swUeYkokFYyMo0ckS6M3EpoTAWdQHEzTdatdHstPKXpdZSkFgtzx9iCF825iZ8ZbCVk3gumtD/AyJH6", "8dbFkddub7fi04ag6FluPUVqgd6M6SzLPSASjPKCkpwSZXVmp3wb+oWPkFUaNplX/bZLIKDosQcvvXHR", "J6kV/SClkN31/AgcJMsImMdEgioFV5AyBPPEmfjb6elrYq0VYt4IWkIYiBybE5sVVW7VOoONkq4KQXOi", "zDmnukaghbaBW6OLImiMW7uKCT56x5+ayR7sHhiRhkoSchxUEKmmE6rAPJlUajUiRh1HQD1QZMmKgmSC", "a8o4oeSbN6DlaueJUZe/sa/OgaL6acBjPGcZ1aCcQr2cs2xONFtYjdRsBShNMsqNbJKgJTO69XNhNHPP", "/dyATCF/NGRCjQz2LOMbRarSM76sYMA16r6CKLEAo3/OiASqBEcOiVwbPtpDwGhBJjS7ENOp5YXBAPUS", "q2v9LkApOkvRXou4cN/r91OU9bygC+CZ+AdI5eyhLan8sv5iPRT+RccjU1D8ZL0LtCheTQdH/1zPLU68", "CWS+uh62AaaZZpdBVscE/6z+zetnBVWa+C+IMWacoZQ0Eqwmn2Is5gHaQmwBStNFGe9kTjXsmCepMVli", "uLdvj595CH9C38IGt8S2HhEjUYJDpCrz9GpO/SIMDIgh++poy0W19h8B9qirp408JWHL3l+/t9Tw10Jk", "FwVTul82LZEtK8eFJODZRIMacpKBRP6AjjMrwYThFqqEjE1Z5rd4K/EUw/MD13KV8ll0X+ocpfUeKLue", "s9u4oepPY4dSz0F7QZV+gwoj5McLOoNjPhVdNP/ARTWbx5wbFUYaMbiSQWYUvpk1RnM2nYIxcJwtg2ay", "+ZpQMhdK70goqGaXQN6+eeHZpSGvHenAIczAMyKnwjB4q/hb/ffNi6H5k+Hk3BjT7wZXRk5cj68ED8aW", "qqZT9hHU9buB5aVN9JsPmriVRfIouWEa6ssGn1VrQ3CqaKSerXgJmhqRh2wrz9FYp8XrJtG0J255J+SE", "aUnliizcYB77I/JSSNRrygI+xmaUE3YLkUNhFbrKyHByTkeTUXZuDlK94QaxF4AOC/hIzViOsHEdR4OT", "UjIN5Llks7kxrCoFcgQLygoD9Woigf+3ibPqhJz5N6xYGZzgC+RE/7//ewlFhNcGnk4iFTqNJy0r6Pk2", "MEZvZSC3QX8r5ZnBgHW9lgVo97MjPSb4zpQy+0b4oaRGZxkMB79WUOEPVGZzdhn9aE1OO/yOUzHwMf5c", "gX1eGZzsxLMljZuwhqdzymfQZStWtUh7Mu2zyNXm1D0cavRZBEmL9ANTd2D1kP4pVRfqpFosqFyl/NiL", "smBTBjkpHLu3vkxvBY/IU6sBWi0TH9YWrPmTYVzmdaBG36PqoqsW41dbGykYTXAAb2Gf9B569d8rsGuO", "zhM62QdHD4yyVvOEvlN2PRygh/VsssIoRFuivvc/nTHeoPhAso6a3193DFwLyNVgwThbmAOzl1ZBP5lz", "PWeFUcgnNecaej704vjvP9RsKOkrFdOpgiaguylAazxd3SAAobZkOH0rihxf6iarinatfSTegK4kt94W", "Q142xEL9iWZOdcUl3ESziQJkbYrup943oFx8pmP6b3+grPp+y4PkvA9PBZ+yWSWpThovak4XlP+Adlee", "DHNZN/ocyAm+SqasAKIl5WoKkjx5fYx+V++fGKUd41pIOoMXIqPpmNKz4LVFc9dwY0MhOJf7eLRRyWvP", "Mmytbg2W/kEl87GpJoKYOtNLsaQJHvyKw86Srsil+1ihkm1QtRDGYhaLhbGjOFgzGJ2whm0boVMWNEOv", "IplKsSDnV0bcX587pY9JGwEaOmt8jm5rZd0AlPiwN8YfMUrmXTDkdCkSMNFCCT9p3nFfUhv3Ws7BgV8W", "VBsdcCcYAzYehZ4PN8hkFYDuC4fgR5utX+fgqRHtv9xiv55UOQOeQay9OLPH6VEqqTK0hlHruPS6E9om", "nw4Pf0nL0uAYd9lvCjFLxtCUDgEvZsPPiQWv/g5Qvqk4Twa0j4P7ZhmdVYsDsqArcgFQEmk/x2dpUb/o", "zNPd0FqP6lGKrAL2Juhza6D1rrFY3SJBEwyK9dLR9bEmao7h3EpZIj23jwx3hnNiluIcDHFM1R4fMwni", "eybMvxw+6hE5dr48psi5kVXnQ3LeRMI5efn25NQYAucYY+wh9BY5txAZsNaHoxSVv4EZU9oYfPZcd9kS", "zXMJSt0wZcSd6/QOiqleUglrtnfTafgl7IiVl8ElfhZsbnUzNeOTkk4cY/GoihNPPCKGg8yGHBHCQYSF", "HuhTu3UCWSWZXgUfdOtkbeuMXOeFtML36RyyC1ElfD4ngDaAEZhO8bFi5ORvT/YfPCSZ+VBViyFR7DeM", "I05WGpQVTDkoAwIpnOD0juzMzVbHVFs2Ls6G3kiMiB4N6oj6aCas/B0cDQ4eTHYPH+9l+48muwcHB/ne", "dHL4YJrtPvr+Md3bz+juw8le/vBwN99/8PDxo+93J9/vPsrhwe5h/mh3/zHsmoHYbzA42jvcP0R3pp2t", "ELMZ47N4qocHk0f72cODyePD/cNpvncweXzwaHc6ebi7+/Dx7ve72QHde/Bo71E2PaD54eH+w4MHk73v", "H2UP6fePH+w+elxPtf/ouqv7e4y8RgA6iR9UzyMp6mSD51txkoMfB/kaSlXn93E+H6dqhQ3AUDZVJHPK", "HOTWExsmGZFjTkSRgyTOmay8z8eNhfMuqSIfKmVdRu/Ccsjxs3cDaxx6LdmNQljw/FMLBfrmz53dtaOK", "ajZWGXDYMadtbHNKdo6fNXllfcAdyWypAFvYn7MCTkrINurCdvBhc5s2n6ZaV0+5B8wza1W3diWVLXYL", "8nB+3zZhnOKvFvW131DPKSdLIzrNVgZxOTTEEQ+KISDgqjLKn8/0qY8xBo1wOz8L8aW2uh1o2W5LwlZ3", "GZxTRakPTlBrHThe5YCObIXm1pTJLfGmgj8r8Yge4qQLaE4TEDZZbTxmcgzkM1ddCxmaPDoR4GrbPXPq", "+dZwUG6H4F+YnteOv61Q7Y2RDNnZpAf1QyKkMeGHJIcSeI5Zlhw1XSt+/+R7s62uFG1Hj5uws6ux92rd", "9nb8uRW/4GLJMbRUCJpbvdRsWEP/rNdvB3tjocGEPqev3lrxQEWjgbteXeKOlIYvoiB8AfHWv/nN/bLJ", "AGmpZncLbVJKZPSZFynDeCudjSaaxx3kpdE7nuNQIcSIhGYkiXvN/A0+ugQJnNAmFdSJGF+KBuqDGc7D", "3ZBFPFE4bp+ZViL2/alUYzPim4yjdcTd/t9U5n4uRriG6YnsAvTxq5/E5C26+JP5pgp0SPQfEmX0KHEJ", "kvivvVsNM/LQOlcj8tyIMViiJ3loFF64ZKJSZxaac6thTWriTsVTP1PmgrfnmwP9TBdxEm06ZbsB9I18", "3XF5SUjofJCMIEiYSlDzsxAtWuvziVKAnGXkvrdxKruab5SNWDk9GBNEuXYJmUq5dAvlnZb4q9E0MJbF", "eM4uWV5RG/YiS5xlBhyk9QMJsqB85Qdx6fmlpJlmGS16s7tvjsT+YpqbZpZ8QmJJIp3EldNEBTfNPVx3", "1uLsiL5D57ZcyHrLE2kMIZ3OHDxjzzhI0wmTWzmChgM9rxYTjsH1jRuVTvRIpVLWiSP2pzDJOkwZ1tNf", "RnMCHL3ogQvZQ6GMqXU+VtG35wQu0fjD2gQtXE6yl87Rm+ahQaaj7BF56se0qdQz0PFza/Kjq9WcE38e", "/O+FmKFVuSIcwOV9lgXLmC5WftoJWFaJgQ3zaDUMCzHWq82w9u+aMQS3uc/faoHwNKaeepL5ICbfoc5o", "XjevfKMMPASdxob2U/xWlBuFTWJrXnnX8bbVF6lBfFKud1j2M32b7ahFEytjUvH6D0ZRGm0WDS1CFeW6", "Io31S4+shQAGZmDUvyUNhT5UJCKJVJMLZnZ0eiMchKSUovhJTDAZrih+CTEeJ/qouijEzD6Mj/VaqE+p", "unghZn1c7NQdApLNK37hNAeMtoUzK4VYkBysgMvtQ5fta0DC00ovBcvNx7lddFP6pOjYrKSbQWmACETk", "QBuRl3QVcn0XVaFZiQm0HKwDED7qZBKL52VrSfXU+sRvRoU1lzTLWEeJZvht1LZTxGS/3obI6ChuLuPl", "dppbnCJ744TU7dA2vIlU26wCuvjFp+qAzYrg23zzJVWbIJpdqGdt5uwaSrTsZBtatG+uo0YXevX0eAuz", "wMX8tqAgg8UzBZBQLwwT9Fn8THmojJZl3veVG1GJynbJ2JsJcemh/1RS7EQTP+GrsyykBm77cSNOe5eE", "fYNCgQ207sdJknpcE5Cs/qqDd3UNtZFfvgCi5azZJg3v05Nd3YOD3/8n+Y9//f3ffv/33//37//2H//6", "+//5/d9//1+xCYO2aZyV5mY5yxb54Ghw5X69xvBQxS/OrL/mwKxJG9PvjFY5Ez5vbcoKcGHGsbVaxmo6", "/iAmyoa79vYPRjhkvMmvf/7R/FqqwdH+4XAwlXRhTvxgb2dvdzAcoNGjzoQ8u2Q5CGNE418Gw4GodFlp", "W10KHzVwSw+DUelSCHAp7q0uXHamANk4jS5XBtsZTwqh144X+ZhsAtOOw6Yz6AYd31ZMHBuMsJDivW2z", "iw3eiJgGNhnq/tV+Uz2dq9S2n1MHLt255NQrb7ZXCTYiUN6h5qN3vshrSNgIRmQCUyGhzh6KssdGN9Nc", "Pme/k7so9bFJt2eT1ZlP4rpJ7rGTmwlYt9SybqCQoeTVosrmGyWC1Qv4Kshg8788lFL5dKybyd+v3w7m", "rmqjfJ3PTXZ823qqtr6Y6kQT95sJh2lD65kIcTcoowgFEyHpXImp3mnXUaQs2HrC+1TzENPPLYoe4vqB", "roZSKU2gW3JFJ7ZRh2OrvqlA3dHEuZKxTGLUo4tvbX/dp2N3W6NpS9r3M/Xt1DqviX0W3PaTVbCczAbZ", "kW1BmqW8d9Xu7v5D63BEMwt3DOuGbak5toZ4UhRRtiyGFkVpM3b/QoRTWFsvsBkXEnLyLUpS4VOez/3J", "du4ALjQBSV1qaSh39c1oYiP7u03+gm6SeMG4a0XjQiGYwvONIlnod2IzvA1oPvBqBQN5dQlyaXRqRbz9", "VKwsWgOYvp4tKahSvqQXYuZ8RIEHWHeV9434NikGaNwVnBCoLJi1FpMOpZPbcIkkcdVpry0voiUiCZgP", "lQEmPmHJAOM2Ld6Ok8gyWZcx+2lcYM0h85OmDlG9xu2qup1xGgqsOpUK5Vm0xlZA5jVxzzpOhrVZwi1a", "tu5iPiNqpTQsNo/1qRnA2/CvaN2NzN66qj6dyXv9vlMq6qrimrLFs656z15sU3bdpcCb6rTtDV+PGz96", "P6nZrPK+SqBbZo1DJm2V2V3vvZupscXJKdZ0UXAYZTP+6iYY8EnhZ/2Oms++XE/l6RV2IFqzWk019GmJ", "zjsm44qN7b1rSR0vGmwroPI+qD4DLBsgaKrrSlOpbWocXdILZN+qADDmKzZpMQwOlHtFTKdGgia18343", "YqJo0bZXsZ0Dah3JFcTUaZPmj+cuhJFQY9VZQX9brS/ga9bauOQLq3jETfIwg7Nurmj5Sq2sON1MkSnj", "TM19/OS2+RLb7OIwrG/NfvYZDn+limVr2PqtbYKv53z/XOU5n801HvHFJiJc0xwjFr0b2aLEUTpTvjTt", "drZLP/uzsgnrck7MEmIRfEarVMbxWwUSK/OYiovojp8NSUmVWgqZ+0dWGLkCTKr9qzKSsGZbEXl4LAwR", "1kuca10Org2MzLUWwRBupmsxFPoOkVOgRtZVsnBfqqPxeOqd8kyMu1WHNvpNnlO5cMkiWKk7GA4KloFL", "C3Xz/Pj6xeVBZ/zlcjma8Wok5GzsvlHjWVnsHIx2R8BHc72wzSiYLhrQuumivTka7I12R7tYa14CpyUb", "HA0O8E82sRl3ZkxLNr48GGfteuWZVS9Cgd9xjn29dLOw2dCKzSnF0fZ3dz1WgeP3tCwLl9I+/uA8I5a2", "t6zxbM6Hm9dEOjdnuAi5rZYEPVcyENvUt3iYkAEVsQJNZ8pWg2mK7QfqMX7geSmYy4ObuTa4nQHDVoRB", "r4dp9I5DlfD4irpK2uvxlVewrtehvy6dbbZz++fVgBlsuIx1R2R+9EF8pm2k5Uab0Kn7vTZ2UGLCSEns", "n7DNcN7fPRXVaEtQ0M9NChr1kFBd290mH/JW1U3Pm00vjf4gIRMzzhQQ3S4Tt5WAoeq20QbTdmpLhR/I", "hKq6HGgixVKhquCx71SDG1J0c42YNN6m6W9Uk+4bNO57LJRCJWjXBkJt6q1TVf8q8tVn2+hm87XuJmOj", "TeFCrB3yvL5DElwDEKomVZaBmlZFsfKNSXNDBaKdUKtGrRbknwU6Wz2bgA8fEF8c2zwSFtmE+lRtpKM2", "sUQdK2MGaztnNIb7yXePtX27wVFnh7rGjWzWXjb5HHQ2/7EQE9rIScMs07vd577M1i1YznCwv3uYihu4", "RN1cgOLfaDKnl4BhrVSDsh7OhW3N5lTb6hHVlxisNmzTqwmmu2EDo9r/P0NE94DT2r9ffYehNI/AFi4u", "2/AueETd5CixJZ3yO1t2hy1tbM7s6EuzjUZPm34qQqwGWhr68lVYlHpl21SxKeHCZn8uqM7mWPcK9sP7", "w1Xw3Ia+Wgbx2xFk3XVoio2OsLkKz4kSMlyt0CBDo4CMr8y/P9MFrNW3fOPfbbQtP+C9UX667Yt75KJ9", "1mYdLqPW91ru6UO9Zn+Oa07R7HDprjtI7YvaYjfU4AsiLakyhpfqTtQJBBadbtXYyBnrB7ZGYj1VELAf", "6ptT2ii8srH26/XC0aphmyk6BO776XlTlvL7r6NZMV9S0mYvLenlO+quV07sRzyP2tL3Yn48abaILcCG", "a5vb8AYW4hIaDWW/5IbciWytl5LYlNOqNGbFt0uXyRsa4H7nCsEkYiSqVg14HA26cvaw36dLswxK7M4A", "XEsGyupMeEuNm+TLyry3HD6WkGnIbdfxtppmaSFA6+qDzSGPUJCg0bXn++vQ1d0d9LXEhYruGgIzuu9M", "aIvPKAkMT/99IgXLo1A/7+sm7deAZJIL9EUlm0o3OoavkS/G/FQ1qcXlgf3y5SamWNswsnbYn4Eo/+D2", "XnOrb2H7JQeNr/VaQ0AKdB0/6fEZocZ3EjKm/tjisZE4mJKQnVgh+g4Rlm1Mz8PeFgJuuCVVQTjixhzu", "7/dlKvqGgE2A3EUT9r4977X0AUoV+hUExerrs9Y1JB30hdYi/bpslGk9EYfa+7XcD3tK/0lYXqM/do8o", "tjhmoOIEPtURLPdM6lIHN6YdhubdfgkRNWwjTtMr9kRkG+SOfT+lsU2aXsMIm20I78iD3pwk5SKLmw5h", "tgRkF8T1ZPtynrFkG7kEuP4NZHy+31vkbrc8cPfx3RNggIQWEmi+cgUojgkf3j0Ap9ivY2n+sbuHvnY+", "w9AVOVctjNadibA1su0/RxCV6BQVHL5wNKJqHeHWCX5quzxG9xDayJpaLQrGL8KVSthw02LAhli0bcrn", "kFIp26O/NhhtKyGbkesa77i6oIwWRbgctQ5Z1MzBIrXFHk4cQJSo+DAhMI3mn1QCXcsz4v5R23KOeGfv", "lIukephty1C+Ai9JtvBKwRtKkrFft0AVKd6Ioc819wFV1/PKLvF+HRlsEVf314xx4BoPuivphNTKHXy7", "U8YMdQvbSPBPikIsVeN6His22gPWNzW6uLZtdWahqNmO7eeuWVHUIHRPCQ47vvJt8K7HV/gX9tsab3/c", "EUtIeOposaW0bd3gEO866Gp4/tUbBQmG3XtIfoN2h8bQ3i8xq1/9NrPW/S7f3/nB63RB29J2vleHKM7y", "rLu1Jfv2NRIzovOyjnkHivzPTYzDlKHqmApr9jpz3ZNzmIIkoRmgldSIDZT57wb7u9+/G7QucDT2LXZP", "srcuVpLH90Da5amgx9m0jdB9sbPhttUT3gNhr38QCxAcCBT2Lsm6EikFJlILItBe9Fij8H/s2Gl2nlK+", "88ysc+ctDjBI4DBqmZ/CoZBsxjgtcE4zPjbpt6VOhYhLo0KXSqZDyVL7Gk67bqxeCp1rKSeU4Rs5TCrb", "PXyLtb1ygO08d4ANNgZSt9FnRKZB7ygtgS6aHCKY1hPGzfnuGtddzd7OoVqtbW/hq/FqaNdNs7/7/abX", "HTk2CNGxHLQx9h4lR5Duc2MOYGIAmYBegiN2fwdpzXR8/JLQTFeOYmx7WSE7fCeozp6W0dh5kKhcb7Ql", "3HBq/QmsT46//1WKzBVaTcB8GOafrBrnzmoU571H6IjgvRQub5xrP4F3xdmV3BcJhJLBZWL1yx3ys8DS", "T9cVsPEQz+dUyIxNihXJCuHKMfHK2kxwDngHnC+oF1jY4BivK0ZQjf0CAh9ppomiC3CapBZYRmk+yUVl", "lDz7gRq9435XbXKhPU2OFiaQ2gEyEfmqV5TWqLHbWVsXXbTEmiN6bMZXro/WhgC66zW1RU5IaMt1Pz16", "uJAeZ7StOOFTcU+9dXXDtw0+ucQXa3Z+XIiZdp0s11PACzE7NS/eH0LQ8FGPy4Ky1kZslGOncXe73ujU", "m45ChN/MqSIcK5bJCvS9jahSpckUllGbvnnc5HIrIoo/CeP5su51/GTLeFdUpf1FqerzO4I6vTL+9CEv", "y4n+BDEv2wIBQ9ELurLeUJhOIdNeu8B7JO0IVJElFIV73ztCDd4WQF2JwbxaUK5s9hTqCBgduWS0W/Yw", "cjVqCt1rWH7pT5RNhcCDVZ+rc8K40kBzp5f5l6PauN5amlCpfmfitX2L/a3rl0Lu32Vd2hfXoKyv93ga", "tQa2F7mxKIDj72OzSn2xIrSeLqEo2W3YWcz0OCqt75eUddPYO0Nz1B8ggeG/o1XkYe1P04w6CHhc1mtN", "50P4Tz3NNgywVCFYF3njq3BL+vU2iNxKLsQXr99PxTP0kOpsl69R3TKDcxnKiTdumtnsHDQ2evK1o0G/", "3W6HthHjjsl2S3e/9NZ9fqG+phz5Pkj3eyJ4ewlwO/HrKbpDlGPpLqjcqXu19ZGgfTGwjLsjhkZ7k/7j", "jFtvgfqiAb7OnZ7biOD7497x4DsPT93lt0FqHTKrt8RIp/pLlSAqxWZ8R0yna+wSNuOvptPBNif0/uHS", "tSNAfttoRPBP7EVUo+0llRdxBwJqNHvbbmQDwp/SorCORq8IaEEKp7r5ckijG+C9Dt9IIDNM3HXDj3p3", "hW/YFH6nR9tN0X+oQ7/ZL3miu/11/hBHemsyfFLpOXBtO9a5Fn2GGrwXtE/h+WSatDEELXAG6yVvtA1k", "9YYnKVa7HLakBhvt2uBrE4e9mLp9+XWv14sL0v/F/aaqm1OIT84I/YukDXjyVQ8SeklhJ4saTSVZWKIp", "1V2rrWGiVKJBEJN2qbdTUf/AnOeX+A4F6wgDfyWuj8egym3YRgG5rYSzOQ+Oo+w0/WieXLC5FeN1rN1x", "GZA7hchogQyOFupzc7VLaKymUilq1a5leI+czeaQVwW4kM/d1Z0qgwPIeyMyrs9uaKnQx65+Fs6/VmdU", "hZKMX2rT4nD34PMl8zSuYk8A/xqk7+7wDDizrNOl3qatf+t2dSLPtnS2FDUkSvjHtCjE0t+RhWhxS8d7", "EAgXS+f0PfiyAsYfJMoxncT6iqLbcSaVtsmmM4FXFbmgqj1wNzy0zhNFw/gRNjadJqQp5QhcphtvJL2u", "/ccl6lH8JwhguJX0HUenG0Vd7m6f++HG6kYsUqekDs8qQh3jiCnJF0Eq4VIxwth4bL6Kz+QThdPbun21", "u+NrVbIM/dVxi+dSipkEpYbE9XxngqP0mVJWVBI2ShgvVxTwvOFrNOj2oxtGZlSjzSdlvKCrHbYjq/5Q", "xEu6cq6Uiv8pkgpe0tXfAco3rsXgn8s8O40uUo4SDyONObiWVSygZMXJmFwAlL73Ytxu3DVUL8KtcopQ", "Yi8oiHXS+rqARvrLWkLuaPRo7EWQtWAKl2NsJG17kc1OKUVeZesUfcMsX+HLr/2790I4YMXq+EMJs5sm", "ArprhcYln32tHML9LXMIUftz2XG+Hc7h3t7dH7QXwGd6Hupu/hLfQZyzHEURcllKHAp23Cc2JdRBenD3", "kL6mK0wV00KQgkrXuupw78GXiCSEXtPkJeSMklN73+wc3HW9lqK8MjkJmY51y8E40Hi4//iLlJOF1GvV", "vWPT3mPlKrBsJp+eS6F1ga2VoZj+oTQPm2JpEL0QShMJmU08DYXvuF6rD0SJlgyRU5U+HFwHQoCrSkKI", "u6P27nZZ2xsqcjYDpdF2a+0xeRoSXzFN/fXPPyKef3r9w4/EkZIZtCwo56FL9NYKT7hiWY3x3gtYerbE", "pC3399yeWO7v1SDEqLz03Ny2tR0PIidU97bqRhy30z7QU0oQB5jY0M1h/0lMvJsUdbRfK5DMkF/dUnDY", "at4zalRcq8SgT14fN5saxi4ysVhU3N0owvQ80fq1Fc1NTOCo4WWAiTx5fTzsbwVqm7yZZZizIkXhIepM", "hnHHRJWGzXwNs6CcqNN2HQaxTNb8bm/lt2WD8Rwu0/b6/fX/DwAA//9in5sSR7IAAA==", } // GetSwagger returns the content of the embedded swagger specification file // or error if failed to decode func decodeSpec() ([]byte, error) { zipped, err := base64.StdEncoding.DecodeString(strings.Join(swaggerSpec, "")) if err != nil { return nil, fmt.Errorf("error base64 decoding spec: %s", err) } zr, err := gzip.NewReader(bytes.NewReader(zipped)) if err != nil { return nil, fmt.Errorf("error decompressing spec: %s", err) } var buf bytes.Buffer _, err = buf.ReadFrom(zr) if err != nil { return nil, fmt.Errorf("error decompressing spec: %s", err) } return buf.Bytes(), nil } var rawSpec = decodeSpecCached() // a naive cached of a decoded swagger spec func decodeSpecCached() func() ([]byte, error) { data, err := decodeSpec() return func() ([]byte, error) { return data, err } } // Constructs a synthetic filesystem for resolving external references when loading openapi specifications. func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error) { var res = make(map[string]func() ([]byte, error)) if len(pathToFile) > 0 { res[pathToFile] = rawSpec } return res } // GetSwagger returns the Swagger specification corresponding to the generated code // in this file. The external references of Swagger specification are resolved. // The logic of resolving external references is tightly connected to "import-mapping" feature. // Externally referenced files must be embedded in the corresponding golang packages. // Urls can be supported but this task was out of the scope. func GetSwagger() (swagger *openapi3.T, err error) { var resolvePath = PathToRawSpec("") loader := openapi3.NewLoader() loader.IsExternalRefsAllowed = true loader.ReadFromURIFunc = func(loader *openapi3.Loader, url *url.URL) ([]byte, error) { var pathToFile = url.String() pathToFile = path.Clean(pathToFile) getSpec, ok := resolvePath[pathToFile] if !ok { err1 := fmt.Errorf("path not found: %s", pathToFile) return nil, err1 } return getSpec() } var specData []byte specData, err = rawSpec() if err != nil { return } swagger, err = loader.LoadFromData(specData) if err != nil { return } return }