// 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/+R9224cN7borxA1B3CC0+qWJV/1dDx2PFEmiX0seXKA2JDYVau7aVWRHZIluWMImI84", "f7L3APthz9P+Ac8fbXAtsorVxVK3bMtxsv1gtOpCLi6uG9et3mW5qpZKgrQmO3iXmXwBFcefj4wRcwnF", "MTdn7u8CTK7F0gols4POXSYM48y6X9wwYd3fGnIQ51Cw6YrZBbCflD4DPc5G2VKrJWgrAGfJVVVxWeBv", "YaHCH/9Lwyw7yP40aYGbeMgmj+mF7HKU2dUSsoOMa81X7u83aure9peN1ULO/fWTpRZKC7uKHhDSwhx0", "eIKuJl6XvErfuHpMY7mtNy7H4e+InnQr4uZsGJC6FoW7MVO64jY7oAuj9QcvR5mGX2qhocgOfg4POeT4", "tTSwRUtYw1KEkhiqUbtfr5t51fQN5NYB+Oici5JPS/hOTY/AWgdOj3KOhJyXwAzdZ2rGOPtOTZkbzSQI", "ZKFETj+74/y0AMnm4hzkiJWiEhbp7JyXonD/12CYVe6aAeYHGbNnslyx2jgY2YWwC0ZIw8nd3A0J9pC/", "TmwFzHhd2j5cxwtg/ibBwcxCXUgPDKsNaHbhYC/Agq6ExPkXwgSUjGn4aMz0FM2ViVWqtGLpJxKyncjR", "o57xHHBQKIR1S6cRPfwzXhoY9ZFrF6Ad0Lws1QVzr64DyvjMumcWwN6oKVtww6YAkpl6WglroRizn1Rd", "FkxUy3LFCiiBXitLBm+FoQG5OTNspjQN/UZNR4zLwgkQVS1F6Z4RdvxKtoQ+VaoELnFF57zs4+f5yi6U", "ZPB2qcEYoRD5U2Du6ZpbKByOlC5ogWEfAFfS3boGrmZvRn3SOINVH4bDAqQVMwHaD9KQ/IhVtbEOnlqK", "X2oiRL9pbzwjJOdxjMH1PMELj+SKwVurOeN6XldOwgR6my5XY/eiGR+pCp4Tb62++prlbhtqA4V7MtfA", "LdBSPf+tIhhaFm8lyzVISFQVFIJbKFdMgxuKcVxqATMhhXth5AQBTu+mHCFOVG09RFxbkdcl180+DNCD", "qadBfF4ldROC6si/2bD6tUc49q+fCyPWmczq+ioEOcbtspanh5eHJCAdsgJbafZVKc6AcfbnEqQjYl4U", "O0p+PWZHYN1wp7ghpyRmSB9zSbJA8rKZwy64dVPXZSFvIUE2kgpkgQLEpBG9pmIcA/iHtlQLR+0+rWmH", "errj7hA5EEOEPWePa61B2nLFlJPjPIyLHBZJcjNmp98+Ovr2mycnTw+//+bk+aPjb0/JSimEhtwqvWJL", "bhfsf7PTV9nkT/jvVXbK+HLpUFrQskHWlVvfTJRw4p7PRlkhdPiJl71GXXCzgOKkffJ1goGHiKYv4D0G", "otVHUoPUFzfs8EngZ1y2IxpPEmP2o2ISjJN1xuo6t7UGw75C9WVGrBC5m4prAeZrxjUwUy+XStv1pXvg", "R86y2d9ziy4Vt9kIaWHjItOrC9q+nZOsRGHYD1zyOWhSAcIi6/PKCeiEaVDyKZTXM9k8Mrc3N1MmTc8a", "WGMHTxIEXjTnJt5w2EoI9++FsYEYkLqH8dbHUTDjPmzFxx2JOLDcdorUAoO93luWv8E0OC2NKoszQ8ah", "tzJREr2FvLaw6RwxbKQ3BBTdDuClNy56JbWib7RWur+ev4AELXIG7jbTYJZKGkideIoET3x7fPyckVnO", "3BONOmwGYoeGCZmXdUH2i8PGkq9KxQtmFAnzBoEEbQe3zuhC0ISkA4RQcvxKPnaT3d3dd+IRrQFUGmgJ", "ccun3IC7M63Nasyc3YmABqDYhShLlitpuZCMs1svwOrVziNnF96iRxfA0c5y4AlZiJxbMN5yvFiIfMGs", "qMj0clsBxrKcSyfnNFgtnBH5VDkTlDQWhAGFYVJZ5siEO3keRMYtw+plMH7yUoBElVgoZlQFztCaMw3c", "KIlSFDUpvCUmELxkU56fqdmMpGBz0grSr3/Mq8AYPk/R3hpx4b63z6co62nJK5C5+hto4w3/Lan8vH3j", "aijCg15GpqD4jo7RvCyfzbKDn6+WFkfB1ndvXY7WAea5Fef+iNwl+CftX0HXl9xYFt5gzmr3J4KkNUwm", "a0qwuBto9IsKjOXVMt7JglvYcXdSY4rEcC9fHj4JEH6Hh+gN5+9tj/5OozQn/3pZpFdzHBbhYEAM0aPj", "LRe1tv8IcEBdO23kEmi27PXla6KGH8ByJwxwQ4sC7XVePu9sdA8HawcUPRVWc71ilR/M22tmzH5QGiX+", "soS3sbHixUCl3MERVV3tpBs75ePpOD917E/7HM5XZ4BnFnjL3Viee5CqD7KjpRYW2FMt5gtnvjjjdgwV", "F6WDejXVIP/P1NtOSs/DE8Rw2RE+wI7sf/3nOZSRRuxwzVFkXKTxRMeA5LsNyQTLC/cBXS5c5g4D5H1Z", "lmD9b0nIEkruzLigJ5ofS+6keTbKfqmhxh9c5wtxHv0kw46G3/HCF2/jb3qpdhjZiedKGn3NCh4vuJxD", "X3KRyE27MuhedNb2ahCHGn8SBlvjgobYPVgDYvCYmzNzVFcV16uUI6talu6EX7DSm2jkzAgntjF7TJqR", "tC/eHLFpbVFzuUtOFbvHgTs9yM1Z31zAt7Y23tCd6AHewm4zQyt/iXIheTwzYBun3Yg544Kpc9DsSOVn", "YA+fkQFBR1baQuNUuGYSLtxFM2KnSw3nQtXmhDbilOyIqdPEZOCQ+u1i4hMJ56BDuwP9yKv4zJl2v3SA", "vpZ4j13FjVPg7m7KoNAw02AWJ83Gr/mVGhsKTarIyqGTPPPvE8nRam4ZIj5nwQnD0M0gLTJcxY3xGsWM", "3NZpoD+dpEWydEbbuShqThTMLnCWubN20WWklDPCVmEQ72pbaie/cl4Oemquj8Rhx/h1ledH6M6ExvSu", "8ch53t3DAR4z/7cGkiuRxkJPdnZw1xmKrdYd0mOXowzdmCfTFbr612F7HX6dCNnRKY189/ri9WXvcE2A", "vMsqIUXlVNLttPn70bbBU1G6w8C0tQ1GQdN/f/jXb1pFn3RIqtnMQBfQJFu1eHp3DS+/2VKlD60ocuCY", "66wq2rV1mn4BttaSPGBOnFIcgwetKbzZjEvohDSuyWeR1him3hdgfBCk53bYXmnR0eEDlZX3fDxWcibm", "teY2eXAyC15x+Q2e+YpkLIlcsQtgR/gom4kSmNVcmhlo9uj5IfoPg29kPCDTlOZz+F7lPB24edJ4H/Go", "7QSwoxCcy7883iiG1mcZra0ujaXVXwGWL2opk0G5VqtcRKi4QGcLq/iKnQEsmabX8V7aWql68/Sx1JqC", "A3Yd2ZAvGoN0kw7kXYuRNaZsczKghYzZYaMla0M+h1O65YgfTplbij87xnEh8lO4SZy+Y3Pl/pfw1o7Z", "oXfTCMNOnSg4HbHTLhJO2Q8vj46dTvRu+a1c6muIbLA2hKPUpr+AuTAWNBTkNeuzBS8KDSYtCp26PInP", "731LSuRnw363klunY9P7rGb2gmu4ggg2CY2fmn0jodX4RE+acLW5nqz/qPB6g4tRg9Q4zB6QMcpyimEg", "lNk6liPMDKwotc9HkNfO8Ggck2s8ua2H6irXFEnFxwvIz1SdiHof0anASTKvkewChGZH3z7au3uP5e5F", "U1cjZsSvGKiYrtDi5LJgBRgHAiu9RAvezdzP1gZt1o73OBu6qDDkcpC18cTxXJFgzA6y/bvT3TsPb+d7", "96e7+/v7xe3Z9M7dWb57/8FDfnsv57v3preLe3d2i7279x7ef7A7fbB7v4C7u3eK+7t7D2HXDSR+hezg", "9p29O+jjotlKNZ8LOY+nurc/vb+X39ufPryzd2dW3N6fPty/vzub3tvdvfdw98Fuvs9v371/+34+2+fF", "nTt79/bvTm8/uJ/f4w8e3t29/7Cdau/+Zd8oCxh5jgD0wt7cLrwJ79DnNWOQeHGIN4yDEhGdzCV3lmHw", "m3od2GwAxsq4YbnXslCQe66ZZMwOJVNlAZp5D6MJpyk/Fs57wQ17Uxs6trxqlsMOn7zK6GQczBc/ChON", "O5gTFOiwPfUG8Y4p6/nE5CBhx3HfhCLqO4dPulK2ZXpPMltaJgT7U1HC0RLyjUYKDT7qbtNmbmqNqJRv", "xN2jA/farqRyZT6APLwzcJ0w8KToUV+I2Qw0etIXXLILp3TdVjaKduSIIx4Uz/MgTa3dxvk8h5aNMZKA", "2/lJiC+11eve9+22pNnqvoBbQi5mwkso3A8027ys8kBHRlx3a5bJLQk2XOCVeMQAcdL/teAJCLuiNh4z", "OQbKmXf9owt0ZXQi6rFukC54kFujbLkdgn8SdtH6PLdC9cjbYTmKs+kA6kdMaXe2GrECliALzDGTGEsm", "dfwH35tt7adoOwZ8pL1djd0KV21vz5VdyzOpLiR6T0rFC7Jo3YZ1LNd2/TTYC4IG05m8pfvBhgcaGh3c", "DdoSN2Q0fBYD4TOot+HN7+4XRYjTWo12a6ZVxTjT0WtBpYzirfSnO9Vld9Dnzu54ikPROVADQ0JzmsQ/", "5q4FpzJNSJHmNjr/uWigZcyGH26GLOKJGnb7xLQSie+PpRrKB+4KjjUW9/t/XZ37qQThFULPxzyO6ukV", "6bpHIDF82URIyGFvnFFzOjHRu6cMztHMwhxIi551PofAB9GT7uYbNQ1e9zF7HMYsL/jKsDnY+D4Z1+gO", "4eas8dWHv0s1R/ttxSSAT7tZliIXtlyFaadAYRyDYa9c2NWoWYizE9Eh2TzrxlCS8ve+sgrh6UxNrhmO", "UH6N0tk97h65ZRw8DB07VlSQigWp5cZtTWzNs+De2TbLMzVIyIkK7oLhgBQlm1jVxcqE1bK94ETSeHPY", "ao0k1bINO+AL2xJni4FIPTfQYLy3/SupmYcwkvCpcsvOhNvY2bVQEcB6o6ZXgnDMzdk2cUr33FWBSiTL", "XqTSR2s/LFR5pdtsE9kck2doYyDzjZqebOWx2ibm6d1RHxv07JazfMg7nzOW5zHYlMVcmQ2T4rA4+SmZ", "5to6pNqqCEf5IdNrzQDZJub38bkr/sb++//P/vX39/94/8/3//7+H//6+/v/eP/P9/8WBzIxQh2HwPws", "J3lVZAfZO//nJbo8anl2QjbIvluT1Ty3J7wuhApBMqe7vetsovHNiZlN3qipIRfO7b39MQ4Zb+nzH//i", "/lya7MDZUDPNK8dj2e2d286+EhWfgzlR+uRcFKDcSQivZKNM1XZZW0rJhrcWJGXIZeOld6jjUvxTfbho", "pgaySRpdPne8N55Wyl45XmQ3oUaFHY/NHXol69lrMXFsCKc1GVvblq9tyEmIaWBTGDE8OhywT2fdrkfR", "UwyXrkU89vLLVx9iaZEJRmLwSIVs1hETYxizKcyUBnbOtcA8UA3Lkud4CBlfT5x/ygrGm8tpvAlt8tsX", "RN5U0uQou2giZpuA9bG1rRMt15VOqhYzrriMgkNXFl9GiLtGFmGTL9hkhBg1szvraYQpO6yd8EtK+ovp", "5wOy/uIEur5Gr41lIFU9X8RZ9IxPqVTNi6FQ0NXW9PkELMwTHA8ktv0u2e5DLa8taT/MNLRTQ+Z/e69J", "dpuuGPfVI26DaGQqyyTKe1Xv7u7do6Mwnhtwx7CggGpQfPnntgnuzyTslEL6CkifsYCxk1uG5U0l2wJL", "ztzpKHi8KLWCPTsHfeEMP8OCEe4O2G4tTY58yKFOkUup5imn9pw5oKKKW4vHo3CqCQVwDmhEBU4IXJeC", "ym76YfSO3LkGayZ39EMyFT6Of64gzzBpivwIUEqxGMo6+ogECcg1ZbX1b31kosO6UKSZOjkKySmiHIdh", "fByJuXx2XUyEnIeT4SqWT77sKF9jYLU9qK5YteUWhpSgT+XTcTrT9oktSRUWDbYVUMUQVJ8Alg0QdK0R", "Y7m2FP3hF/wMecyUAM6axeI0TKSobUHRIgvGP61mMye2EnYIMQvmvxw5qGl5ZL6d8DoV2XtpQLu9d7oh", "SnM7fDJiS27MhdJFuEXcQW0mGLfhUR2xvROKiC9M5+JG5K3wWVi7zC4djM5coOo/aXlu22KupuiLHQN3", "zFfr0r9pDiaTWXAUCDXpp86+oPrvp1xX3lWMqYrZKCtFDj784uf5y/Pvz/d7419cXIznsh4rPZ/4d8xk", "vix39se7Y5Djha2o3kXYsgOtny6Las+y2+Pd8S4m2y5B8qXIDrJ9vEQBRNyZCV+KSb6erTknYdfk3x0W", "WFFpu2mdjv4ocIND7e3uBpSCxPf5cln6uPHkjTc9iZY3UXoyjRR3rotx6bRM2QSQiP6CveggpvhwPExT", "yhkV6VruDtM/45kek6/bMb6RxVIJn54/96X6vQGbfWgGvRwRbkPq7VKZBE7JZUWlEl6K/FkVq0+Gx249", "YB9/WPutvDMsiwWK1TVc3uAOXwHQBTfM1HkOZlaX5YpR5xEss/W2W1QAYcZr7V8+CXSUu5eAD2+wkJrX", "JTdCNuOhtAZJZp0yoiLqmPIooboz3HehyQT1TAFPiF3SmvwSqhbSBIZp4d+5wW+GwNrCiQSyepkjlDGC", "afIUhBp/bprr5MknQP6RBApitREro5B5BdXSrqi8TMyYVBRHqbjNF5iyBfTil0OST8Hmi6YeziF+A9E9", "m2LteFvJMMPiCewTJAtmlG56IrU06NTr5J37/0deweVVGiR0Meh2Avj5XSbcUnxei1eRYcAejYwilK3b", "H69vkH76vRgGJCrdW1dFvhlAaBwx0FTjis05lDPlvRucGc9cUZOi3qaYLbbCZJ8RYyaFsuahtqdGAntl", "r+8GtqTAUPzWGGynauTym7bZWQd/78gzOEzNyFukujfTcuNmHKbkTTHn17+NNkZTOSVVREuN3q+2hUKj", "l2ThDdbKQZ5E+8SAbU9FA9YTEvFR47X6bLtwI3q047xNbMZx6xzzlTVWhQStbfToncFUHj+cs7t4nsPS", "QoHMcGdvb8hbHEp6ugD5LiDU9S9U+3jnWpM3NmvJ5XOqyZcS3i4hd0Dj2XZMXq9hcvU5jr16prAuOoWG", "dSQouCkZvlJ8YFX7H0SGdCr0E3uAWhBvCzBxroNpTmVfCF2sCzvu4V6hMzq0DwhLiEjhavXjDjVmYMVI", "QXhr8g5dXxuVj09N2cKSouG+WNLBhQyIPPL7y5n6QsmCjLpQf3nF5ifeGNr2LZVf5MH/rFTw6dVfL3j5", "h9d/RDB/AAVI4TGsT6r4ii34OTCYzSC3IUUcq+5pBG7YBZSlfz64NBzeKuDeybaoKy4NGYhtS9pzwck7", "DNOoja4PIRrmeAR7bSI7kV8YuaplqlMmpLHAMUUwMF4U4xg6J/2t6dF1Y/JvvdPYB3s6m1NNKNhbc3Ze", "7et8HOUPU0W2QEcNVm00hdU8tzUvyxXj7XQ+/b9Bq98A7Uued9r8jbQwC7XRPt54M0ImESNMILoNSgfo", "P6uPqlclvg0tfEYpUq9JkTVCDOB7L+hF2M9Adf7C68RLrTe9fdOsU5QRc7mjZrMr9KKYy2ezWbaN/P/y", "EOljZ6jCO1Gzn1873dvi7Aeuz+JwGXeahaJyG7D9mJe+gVsQnlax0guQ4KU+k9gCGVa3NLC5otbwOPw4", "vSVyw47IG2VqP8UwOzfZmp+Tl/vh6N8FM29Ng49quwBpKZXGJ+w4agipVhdNd9hPTJAaeLFyT7nxqGtB", "J4lItBveJ1frc5SS+j7asuy3pgzqcLLeRcWtZ0CYseE3vmySuj55kEkSdcfRQH3VVwNISNPBTh5lZCSF", "VyJ740YFWTxRKj7VqEZa54ede37HMsfLc79vhITQHiFUouM5zgmMEgryMVMKoZclO93jW6AVLFUXsu2m", "7OUL6J1S5bxE0cZL86nl2Tl0VlObHqlan2c/oF7zBRR1Cd4bdHOxnPgLRKnzuU+2baLbQ4LqR+XPdN0v", "BuD5IjQUd6fv3f1PlwfR6cmTAP456BBofwJSkNC8s/swUUhHBOiP+l7TUV43kdOIGRVu49daoNM5nZaO", "xUNMqgvvaNj/vKolcBGXDkpFQd+ozm5aW/rAATXX4lKhnCVuuybH+pAyb8aPsLGJlZCmjCdwnciBSJ70", "h3klylL+A3jM/EqGeNHbQ1Fq/Idpi+MFhLH6LrIUi7RuW8O4lxoxGdGmjahPfmds5Jl4/N+LWnrZJrBT", "BrddLUWObpI433yp1VyDMSPfYdt/a0ezGRdlrWGjbgkaxYAsOhFYh+4wupNiziLawCaTiq92xI6uh91f", "P/CV95rU8g8RaVjrvPjHOo8dR700oq87JHpIChOrJl1LNhnoKcmeLanLKibihf7ZjOqTYlO0rRai/k/b", "UHHPisfTXQTZGky+PoLomtpsTkLznwlVd11hJ3V75t1QwmV3klRSXNwhpznJ+AZin883kex5lgA3PIHi", "OTQni7IzYy1ws8zRQMJLOv9TZak3oO7cPADHeMq8cP/R7qHFKOdj9tIAOzVrGG3b6Jy6faZmaQxRiWmQ", "SoIZf0m+28fUkjD6Khe5VsyqKoU8az4Kg90hCQOUkWupg5xHijMbeVlSJAi/QEh9b4ijfZcYX/DrNGTD", "2q1114oPQuqa+DjyAHFmYmZCYDqdKrkGnhYWcZejbUVGvKU3Kj5Snba2lSS/gRBJNppKwdt0AcGPJSk8", "gccbMQpKK2gg35mJlvhl8Qo2Mmu7QMY48O3x/Ne0lLbGczztFNfNwjZS+iOnCt007aeTgs7sDtgepX3Q", "lSJyBEUrb+jbclaUZQtCxB443uRd6NJ2OXmHV8SvVyT1xg2blIbHngjXTMWt++9hj/S+XRkevVYu8Kj/", "jZBfYb2BYNN9LjFrWP02s7btGF/fOMf1mnQNZ7K3vdW+NO6Jq33bZmLJtnIdizJilKukdkOR/7OJcZQ6", "nHtpIrqN231z3wJmoFnTq450M2IDtfyrbG/3wats7aNz6EaS5cp/Ka7WMv52HS3PNJYb1fU0zQF7G04O", "KF4aRWMYVYGSwKCk79+19dopMJFaEIH0cboWhf9vh6bZeczlzhO3zp2XOECWwGHUCz6FQ6XFXEhe4pxu", "fOw+TwXhpYoLyJsmisI2hd3rnw6kdWONd9NYlUvGBT5RwLSm5tZbrO2ZB2znqQcs21gvsY0ho3ILdsdY", "DbzqSojmPD8V0vF3/0Tft+VpDrPWefUDnVNIXj3X1N7ug02Pe3LsEGKUynLn9v3kCNq/7g4AWPzDpmAv", "wBN7+G5iK3RCpYJPnfEfmED21z250xjLgZbxeHM30YSm852hDVwbOLDlnPDNSq0wJ1XN2BTci83801WH", "78iUOB1koQOGH1yg6j2SLjE6/Eq+FA2EmsH7pIf1DvtRoVPPf9mpcxP5c6Z0LqbliuWl8p+wwM9s5kpK", "wO+z+bZ23vPpBe9MSGEWYDr7BQze8twywyvwJqRV2GzCvVKo2ll39IIZv5JhV29hK27iJk8LU0jtAJuq", "YjWoSmNXJn7EtDlW9NHi3VLuNylUKmKeZFEst/+RkE61SK8sUlgD5WzcyjPMT+uL3u/UNKQaoM/zlxq0", "ADOKSiVHawUm404KvUkM+uj5YbdYM440q6qqpW8X4kR6v9a3Gd47uxK6nvD36PnhCCdCkms33y8I3Svu", "b/pYG506TTS+36/L15f/HQAA//8MDWjsKoQAAA==", } // 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 }