diff --git a/404.html b/404.html index 94ce1212..16d8e82c 100644 --- a/404.html +++ b/404.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/assets/js/0e384e19.503bbf13.js b/assets/js/0e384e19.e7fe3df7.js similarity index 73% rename from assets/js/0e384e19.503bbf13.js rename to assets/js/0e384e19.e7fe3df7.js index 56673dc1..8571fafa 100644 --- a/assets/js/0e384e19.503bbf13.js +++ b/assets/js/0e384e19.e7fe3df7.js @@ -1 +1 @@ -"use strict";(self.webpackChunkopenapi_stack=self.webpackChunkopenapi_stack||[]).push([[9671],{4137:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>k});var n=a(7294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var s=n.createContext({}),l=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},c=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,c=p(e,["components","mdxType","originalType","parentName"]),d=l(a),u=i,k=d["".concat(s,".").concat(u)]||d[u]||m[u]||r;return a?n.createElement(k,o(o({ref:t},c),{},{components:a})):n.createElement(k,o({ref:t},c))}));function k(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=a.length,o=new Array(r);o[0]=u;var p={};for(var s in t)hasOwnProperty.call(t,s)&&(p[s]=t[s]);p.originalType=e,p[d]="string"==typeof e?e:i,o[1]=p;for(var l=2;l{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>p,toc:()=>l});var n=a(7462),i=(a(7294),a(4137));const r={title:"Overview",hide_title:!0,sidebar_position:0},o=void 0,p={unversionedId:"intro",id:"intro",title:"Overview",description:"openapi-stack",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/docs/intro",draft:!1,editUrl:"https://github.com/openapistack/docs/edit/main/docs/intro.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{title:"Overview",hide_title:!0,sidebar_position:0},sidebar:"tutorialSidebar",next:{title:"Why API First?",permalink:"/docs/api-first"}},s={},l=[{value:"Benefits",id:"benefits",level:2},{value:"Backend",id:"backend",level:2},{value:"Client",id:"client",level:2},{value:"CLI",id:"cli",level:2},{value:"Features",id:"features",level:2},{value:"Star History",id:"star-history",level:2}],c={toc:l},d="wrapper";function m(e){let{components:t,...a}=e;return(0,i.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("div",{className:"text-center mt-4 mb-8"},(0,i.kt)("img",{alt:"openapicmd logo",src:"/img/openapi-stack-logo.png",className:"max-w-[150px] mb-4"}),(0,i.kt)("h1",null,"openapi-stack",(0,i.kt)("a",{href:"https://github.com/openapistack/docs",target:"_blank"},(0,i.kt)("img",{className:"w-[1em] ml-2 relative top-1",src:"https://img.icons8.com/material-sharp/96/000000/github.png",alt:"GitHub"}))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/docs/blob/master/LICENSE"},(0,i.kt)("img",{parentName:"a",src:"http://img.shields.io/:license-mit-blue.svg",alt:"License"})),"\n",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-backend"},(0,i.kt)("img",{parentName:"a",src:"https://img.shields.io/npm/dw/openapi-backend?label=backend",alt:"npm downloads"})),"\n",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-backend"},(0,i.kt)("img",{parentName:"a",src:"https://img.shields.io/npm/dw/openapi-client-axios?label=client",alt:"npm downloads"})),"\n",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/docs"},(0,i.kt)("img",{parentName:"a",src:"https://img.shields.io/github/stars/openapistack/docs?label=github%20stars",alt:"GitHub stars"})))),(0,i.kt)("p",null,(0,i.kt)("strong",{parentName:"p"},"openapi-stack")," is a collection of open source libraries and tools for full stack software development using ",(0,i.kt)("a",{parentName:"p",href:"https://www.openapis.org/"},"OpenAPI specification"),"."),(0,i.kt)("p",null,"The goal is to unlock great developer experience and full stack type safety for software teams using REST; inspired by tools like ",(0,i.kt)("a",{parentName:"p",href:"https://graphql.org/"},"GraphQL")," and ",(0,i.kt)("a",{parentName:"p",href:"https://trpc.io"},"tRPC"),"."),(0,i.kt)("details",null,(0,i.kt)("summary",null,(0,i.kt)("b",null,"How does openapi-stack compare to ",(0,i.kt)("i",null,"GraphQL"),"?")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://graphql.org/"},(0,i.kt)("em",{parentName:"a"},"GraphQL"))," is a query language for APIs developed by Facebook. It gives API clients full control over the data they query, making it extremely flexible and efficient for client-centric use cases."),(0,i.kt)("p",null,"Similar to ",(0,i.kt)("a",{parentName:"p",href:"https://www.openapis.org/"},"OpenAPI specification"),", GraphQL APIs define a strongly typed schema for the data and mutations they support which makes them discoverable and intuitive to develop against."),(0,i.kt)("p",null,"OpenAPI stack achieves the same type safety and great developer experience by using the OpenAPI specification as a single source of truth for the API contract, used to generate types for both client and server side and utilising it for routing and validation during runtime."),(0,i.kt)("p",null,"Both GraphQL and openapi-stack encourage an ",(0,i.kt)("a",{parentName:"p",href:"/docs/api-first/"},"API First")," approach where the API contract is treated as a first class citizen in software design instead of treating it as merely documentation."),(0,i.kt)("p",null,"While REST APIs don't generally provide the same level of control to clients as GraphQL, many times this could be seen as a benefit especially in scenarios where strict control over data access and operations is crucial."),(0,i.kt)("p",null,"Many organizations choose REST over GraphQL due to more established conventions, simplicity, and the ability to leverage standard HTTP features directly. Widespread knowledge around REST contribute to its choice among organizations looking for a tried-and-tested approach to building APIs.")),(0,i.kt)("details",null,(0,i.kt)("summary",null,(0,i.kt)("b",null,"How does openapi-stack compare to ",(0,i.kt)("i",null,"tRPC"),"?")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://trpc.io/"},"tRPC")," is a ",(0,i.kt)("em",{parentName:"p"},"Remote Procedure Call")," (RPC) library for Typescript to build and consume typesafe APIs."),(0,i.kt)("p",null,"Designed for full-stack Typescript applications, tRPC allows direct sharing of types between both the client and server, without relying on code generation."),(0,i.kt)("p",null,"Unlike GraphQL and REST, tRPC doesn't expose a standard machine-readable API schema to be consumed by clients, instead taking a more straightforward approach of exposing endpoints or ",(0,i.kt)("em",{parentName:"p"},"procedures"),", essentially ",(0,i.kt)("a",{parentName:"p",href:"https://trpc.io/docs/concepts#its-just-functions"},(0,i.kt)("em",{parentName:"a"},'"just functions"'))," invoked by the client to the server."),(0,i.kt)("p",null,"OpenAPI stack achieves type safety using a similar workflow to tRPC's procedures with ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#operation-object"},(0,i.kt)("em",{parentName:"a"},"OpenAPI operations")),", also avoiding code generation by only generating types from OpenAPI spec and using the machine readable contract in the runtime for routing and validation."),(0,i.kt)("p",null,"While the lightweight tRPC approach is optimal for teams just looking to build full stack applications, teams looking to build robust APIs are better served by the API design first approach of openapi-stack or GraphQL.")),(0,i.kt)("h2",{id:"benefits"},"Benefits"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"\ud83d\ude80 ",(0,i.kt)("strong",{parentName:"li"},"No code generation.")," Write your own code the way you like it. Only generate types from OpenAPI spec if you want."),(0,i.kt)("li",{parentName:"ol"},"\ud83e\udd1d ",(0,i.kt)("strong",{parentName:"li"},"Single source of truth for your API contract.")," No more manually updating your OpenAPI specs to keep up with your backend code. Ensure your API docs and SDKs stay up to date by using the spec in runtime to route and validate."),(0,i.kt)("li",{parentName:"ol"},"\ud83e\uddd9\u200d\u2642\ufe0f ",(0,i.kt)("strong",{parentName:"li"},"Type safety and validation.")," Build your product faster and with a better developer experience using strongly typed Typescript and code autocomplete both in the server and client side."),(0,i.kt)("li",{parentName:"ol"},"\u2764\ufe0f ",(0,i.kt)("strong",{parentName:"li"},"Testing & Collaboration."),". Leverage API mocks to make testing and development easier and iterate fast on your API design as you build your app's interface. Being blocked by the backend team is a thing of the past!")),(0,i.kt)("h2",{id:"backend"},"Backend"),(0,i.kt)("p",null,"Build, Validate, Route, Authenticate, and Mock your backend using the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/openapi-backend"},"openapi-backend")," library."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/openapi-backend/intro"},"Quickstart")," - ",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-backend"},"NPM")),(0,i.kt)("h2",{id:"client"},"Client"),(0,i.kt)("p",null,"Easily consume your API using the typesafe ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/openapi-client-axios"},"openapi-client-axios")," library."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/openapi-client-axios/intro"},"Quickstart")," - ",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-client-axios"},"NPM")),(0,i.kt)("h2",{id:"cli"},"CLI"),(0,i.kt)("p",null,"Generate types, design and test your API using the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/openapicmd"},"openapicmd")," command line tool."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/openapicmd/intro"},"Quickstart")," - ",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapicmd"},"NPM")),(0,i.kt)("h2",{id:"features"},"Features"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Battle-tested in production. High test coverage."),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","\ufe0fNo code generation \u2013 we only generate types"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Built with TypeScript, types included with full autocomplete support"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Framework agnostic \u2013 works with your stack"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Lightweight - small frontend bundle + optimized for serverless cold starts"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," "," OpenAPI 3.x support"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ",(0,i.kt)("a",{parentName:"li",href:"/docs/examples/boilerplate/"},"Samples")," included")),(0,i.kt)("h2",{id:"star-history"},"Star History"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://star-history.com/#openapistack/openapi-backend&openapistack/openapi-client-axios&openapistack/openapicmd&openapistack/docs&Date"},(0,i.kt)("img",{parentName:"a",src:"https://api.star-history.com/svg?repos=openapistack/openapi-backend,openapistack/openapi-client-axios,openapistack/openapicmd,openapistack/docs&type=Date",alt:"Star History Chart"}))))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkopenapi_stack=self.webpackChunkopenapi_stack||[]).push([[9671],{4137:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>k});var n=a(7294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var s=n.createContext({}),l=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},c=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,c=p(e,["components","mdxType","originalType","parentName"]),d=l(a),u=i,k=d["".concat(s,".").concat(u)]||d[u]||m[u]||r;return a?n.createElement(k,o(o({ref:t},c),{},{components:a})):n.createElement(k,o({ref:t},c))}));function k(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=a.length,o=new Array(r);o[0]=u;var p={};for(var s in t)hasOwnProperty.call(t,s)&&(p[s]=t[s]);p.originalType=e,p[d]="string"==typeof e?e:i,o[1]=p;for(var l=2;l{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>p,toc:()=>l});var n=a(7462),i=(a(7294),a(4137));const r={title:"Overview",hide_title:!0,sidebar_position:0},o=void 0,p={unversionedId:"intro",id:"intro",title:"Overview",description:"openapi-stack",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/docs/intro",draft:!1,editUrl:"https://github.com/openapistack/docs/edit/main/docs/intro.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{title:"Overview",hide_title:!0,sidebar_position:0},sidebar:"tutorialSidebar",next:{title:"Why API First?",permalink:"/docs/api-first"}},s={},l=[{value:"Benefits",id:"benefits",level:2},{value:"Backend",id:"backend",level:2},{value:"Client",id:"client",level:2},{value:"CLI",id:"cli",level:2},{value:"Features",id:"features",level:2},{value:"Star History",id:"star-history",level:2}],c={toc:l},d="wrapper";function m(e){let{components:t,...a}=e;return(0,i.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("div",{className:"text-center mt-4 mb-8"},(0,i.kt)("img",{alt:"openapicmd logo",src:"/img/openapi-stack-logo.png",className:"max-w-[150px] mb-4"}),(0,i.kt)("h1",null,"openapi-stack",(0,i.kt)("a",{href:"https://github.com/openapistack/docs",target:"_blank"},(0,i.kt)("img",{className:"w-[1em] ml-2 relative top-1",src:"https://img.icons8.com/material-sharp/96/000000/github.png",alt:"GitHub"}))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/docs/blob/master/LICENSE"},(0,i.kt)("img",{parentName:"a",src:"http://img.shields.io/:license-mit-blue.svg",alt:"License"})),"\n",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-backend"},(0,i.kt)("img",{parentName:"a",src:"https://img.shields.io/npm/dw/openapi-backend?label=backend",alt:"npm downloads"})),"\n",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-backend"},(0,i.kt)("img",{parentName:"a",src:"https://img.shields.io/npm/dw/openapi-client-axios?label=client",alt:"npm downloads"})),"\n",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/docs"},(0,i.kt)("img",{parentName:"a",src:"https://img.shields.io/github/stars/openapistack/docs?label=github%20stars",alt:"GitHub stars"})))),(0,i.kt)("p",null,(0,i.kt)("strong",{parentName:"p"},"openapi-stack")," is a collection of open source libraries and tools for full stack software development using ",(0,i.kt)("a",{parentName:"p",href:"https://www.openapis.org/"},"OpenAPI specification"),"."),(0,i.kt)("p",null,"The goal is to unlock great developer experience and full stack type safety for software teams using REST; inspired by tools like ",(0,i.kt)("a",{parentName:"p",href:"https://graphql.org/"},"GraphQL")," and ",(0,i.kt)("a",{parentName:"p",href:"https://trpc.io"},"tRPC"),"."),(0,i.kt)("details",null,(0,i.kt)("summary",null,(0,i.kt)("b",null,"How does openapi-stack compare to ",(0,i.kt)("i",null,"GraphQL"),"?")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://graphql.org/"},(0,i.kt)("em",{parentName:"a"},"GraphQL"))," is a query language for APIs developed by Facebook. It gives API clients full control over the data they query, making it extremely flexible and efficient for client-centric use cases."),(0,i.kt)("p",null,"Similar to ",(0,i.kt)("a",{parentName:"p",href:"https://www.openapis.org/"},"OpenAPI specification"),", GraphQL APIs define a strongly typed schema for the data and mutations they support which makes them discoverable and intuitive to develop against."),(0,i.kt)("p",null,"OpenAPI stack achieves the same type safety and great developer experience by using the OpenAPI specification as a single source of truth for the API contract, used to generate types for both client and server side and utilising it for routing and validation during runtime."),(0,i.kt)("p",null,"Both GraphQL and openapi-stack encourage an ",(0,i.kt)("a",{parentName:"p",href:"/docs/api-first/"},"API First")," approach where the API contract is treated as a first class citizen in software design instead of treating it as merely documentation."),(0,i.kt)("p",null,"While REST APIs don't generally provide the same level of control to clients as GraphQL, many times this could be seen as a benefit especially in scenarios where strict control over data access and operations is crucial."),(0,i.kt)("p",null,"Many organizations choose REST over GraphQL due to more established conventions, simplicity, and the ability to leverage standard HTTP features directly. Widespread knowledge around REST contribute to its choice among organizations looking for a tried-and-tested approach to building APIs.")),(0,i.kt)("details",null,(0,i.kt)("summary",null,(0,i.kt)("b",null,"How does openapi-stack compare to ",(0,i.kt)("i",null,"tRPC"),"?")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://trpc.io/"},"tRPC")," is a ",(0,i.kt)("em",{parentName:"p"},"Remote Procedure Call")," (RPC) library for Typescript to build and consume typesafe APIs."),(0,i.kt)("p",null,"Designed for full-stack Typescript applications, tRPC allows direct sharing of types between both the client and server, without relying on code generation."),(0,i.kt)("p",null,"Unlike GraphQL and REST, tRPC doesn't expose a standard machine-readable API schema to be consumed by clients, instead taking a more straightforward approach of exposing endpoints or ",(0,i.kt)("em",{parentName:"p"},"procedures"),", essentially ",(0,i.kt)("a",{parentName:"p",href:"https://trpc.io/docs/concepts#its-just-functions"},(0,i.kt)("em",{parentName:"a"},'"just functions"'))," invoked by the client to the server."),(0,i.kt)("p",null,"OpenAPI stack achieves type safety using a similar workflow to tRPC's procedures with ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#operation-object"},(0,i.kt)("em",{parentName:"a"},"OpenAPI operations")),", also avoiding code generation by only generating types from OpenAPI spec and using the machine readable contract in the runtime for routing and validation."),(0,i.kt)("p",null,"While the lightweight tRPC approach is optimal for teams just looking to build full stack applications, teams looking to build robust APIs are better served by the API design first approach of openapi-stack or GraphQL.")),(0,i.kt)("h2",{id:"benefits"},"Benefits"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"\ud83d\ude80 ",(0,i.kt)("strong",{parentName:"li"},"No code generation.")," Write your own code the way you like it. Only generate types from OpenAPI spec if you want."),(0,i.kt)("li",{parentName:"ol"},"\ud83e\udd1d ",(0,i.kt)("strong",{parentName:"li"},"Single source of truth for your API contract.")," No more manually updating your OpenAPI specs to keep up with your backend code. Ensure your API docs and SDKs stay up to date by using the spec in runtime to route and validate."),(0,i.kt)("li",{parentName:"ol"},"\ud83e\uddd9\u200d\u2642\ufe0f ",(0,i.kt)("strong",{parentName:"li"},"Type safety and validation.")," Build your product faster and with a better developer experience using strongly typed Typescript and code autocomplete both in the server and client side."),(0,i.kt)("li",{parentName:"ol"},"\u2764\ufe0f ",(0,i.kt)("strong",{parentName:"li"},"Testing & Collaboration.")," Leverage API mocks to make testing and development easier and iterate fast on your API design as you build your app's interface. Being blocked by the backend team is a thing of the past!")),(0,i.kt)("h2",{id:"backend"},"Backend"),(0,i.kt)("p",null,"Build, Validate, Route, Authenticate, and Mock your backend using the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/openapi-backend"},"openapi-backend")," library."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/openapi-backend/intro"},"Quickstart")," - ",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-backend"},"NPM")),(0,i.kt)("h2",{id:"client"},"Client"),(0,i.kt)("p",null,"Easily consume your API using the typesafe ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/openapi-client-axios"},"openapi-client-axios")," library."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/openapi-client-axios/intro"},"Quickstart")," - ",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapi-client-axios"},"NPM")),(0,i.kt)("h2",{id:"cli"},"CLI"),(0,i.kt)("p",null,"Generate types, design and test your API using the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/openapistack/openapicmd"},"openapicmd")," command line tool."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/docs/openapicmd/intro"},"Quickstart")," - ",(0,i.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/openapicmd"},"NPM")),(0,i.kt)("h2",{id:"features"},"Features"),(0,i.kt)("ul",{className:"contains-task-list"},(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Battle-tested in production. High test coverage."),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","\ufe0fNo code generation \u2013 we only generate types"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Built with TypeScript, types included with full autocomplete support"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Framework agnostic \u2013 works with your stack"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ","Lightweight - small frontend bundle + optimized for serverless cold starts"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," "," OpenAPI 3.x support"),(0,i.kt)("li",{parentName:"ul",className:"task-list-item"},(0,i.kt)("input",{parentName:"li",type:"checkbox",checked:!0,disabled:!0})," ",(0,i.kt)("a",{parentName:"li",href:"/docs/examples/boilerplate/"},"Samples")," included")),(0,i.kt)("h2",{id:"star-history"},"Star History"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://star-history.com/#openapistack/openapi-backend&openapistack/openapi-client-axios&openapistack/openapicmd&openapistack/docs&Date"},(0,i.kt)("img",{parentName:"a",src:"https://api.star-history.com/svg?repos=openapistack/openapi-backend,openapistack/openapi-client-axios,openapistack/openapicmd,openapistack/docs&type=Date",alt:"Star History Chart"}))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.2647a98b.js b/assets/js/runtime~main.730ecb0d.js similarity index 98% rename from assets/js/runtime~main.2647a98b.js rename to assets/js/runtime~main.730ecb0d.js index ac83d7a6..a79caba0 100644 --- a/assets/js/runtime~main.2647a98b.js +++ b/assets/js/runtime~main.730ecb0d.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,c,d,t,f={},r={};function b(e){var a=r[e];if(void 0!==a)return a.exports;var c=r[e]={id:e,loaded:!1,exports:{}};return f[e].call(c.exports,c,c.exports,b),c.loaded=!0,c.exports}b.m=f,b.c=r,e=[],b.O=(a,c,d,t)=>{if(!c){var f=1/0;for(i=0;i=t)&&Object.keys(b.O).every((e=>b.O[e](c[o])))?c.splice(o--,1):(r=!1,t0&&e[i-1][2]>t;i--)e[i]=e[i-1];e[i]=[c,d,t]},b.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return b.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,b.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var t=Object.create(null);b.r(t);var f={};a=a||[null,c({}),c([]),c(c)];for(var r=2&d&&e;"object"==typeof r&&!~a.indexOf(r);r=c(r))Object.getOwnPropertyNames(r).forEach((a=>f[a]=()=>e[a]));return f.default=()=>e,b.d(t,f),t},b.d=(e,a)=>{for(var c in a)b.o(a,c)&&!b.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},b.f={},b.e=e=>Promise.all(Object.keys(b.f).reduce(((a,c)=>(b.f[c](e,a),a)),[])),b.u=e=>"assets/js/"+({53:"935f2afb",117:"62e5798c",334:"efd1d6d2",533:"b2b675dd",738:"57078c21",981:"e0105f9c",1069:"12270f25",1477:"b2f554cd",1513:"cc143930",1534:"c70cd9ce",1713:"a7023ddc",1794:"a498f142",1901:"af5bd2c6",2027:"bae34c37",2044:"f99a0c18",2362:"e273c56f",2394:"4d937ca4",2535:"814f3328",2668:"ac3c7a65",2734:"d53c8af8",3089:"a6aa9e1f",3178:"1da23019",3237:"1df93b7f",3608:"9e4087bc",3920:"afc8c0cc",3939:"3b323550",4013:"01a85c17",4209:"54515deb",4375:"3f0fd536",4589:"69151fc0",4938:"bb5610d5",4994:"0724bfe4",4995:"5bb40fa4",5195:"a1640c12",6103:"ccc49370",6129:"1dd8b630",6307:"a79d6dac",6714:"1581e59b",7695:"687c9186",7845:"df8d2258",7918:"17896441",8008:"6da30924",8340:"edbbf0b8",8509:"b4726b2c",8594:"a095f7ca",8610:"6875c492",9003:"925b3f96",9011:"5be362f3",9322:"ba3a6899",9514:"1be78505",9649:"19f3f78d",9671:"0e384e19"}[e]||e)+"."+{53:"b0da058d",117:"3a57b3a9",207:"f711ba53",334:"ae9a0142",533:"cdf23cc3",738:"cf39b280",981:"c26c80c6",1011:"660c16b5",1069:"a96fd296",1477:"fcbbc731",1513:"1179e8a7",1534:"a9528a79",1713:"c5eab5f8",1794:"eb3233f7",1901:"911f1b84",2027:"a654e04c",2044:"91f9cad6",2362:"715463fa",2394:"9bde2101",2535:"282264bc",2668:"cd3baca1",2734:"1f6e121d",3089:"e85136f4",3178:"232b8a2b",3237:"43f06aed",3608:"9381f63b",3920:"4f0516f0",3939:"20995124",4013:"8fa3efba",4209:"ba1a03a9",4248:"0afb9a1d",4375:"5137b7fb",4589:"f033d98b",4938:"32938f69",4994:"acc75400",4995:"4e5700a9",5195:"ad1a977d",6103:"e517dc1e",6129:"ead5e1c5",6307:"f53d5b3f",6714:"74f897f8",7219:"9f8306dc",7695:"ee41d11d",7845:"8c8f93e1",7918:"bdc592a9",8008:"9b44c80c",8340:"29222172",8509:"0ac00d43",8594:"9fb3832c",8610:"39002535",9003:"6b763fb2",9011:"5cb504a0",9322:"764493de",9514:"7aedf505",9649:"2a122768",9671:"503bbf13"}[e]+".js",b.miniCssF=e=>{},b.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),b.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},t="openapi-stack:",b.l=(e,a,c,f)=>{if(d[e])d[e].push(a);else{var r,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{r.onerror=r.onload=null,clearTimeout(s);var t=d[e];if(delete d[e],r.parentNode&&r.parentNode.removeChild(r),t&&t.forEach((e=>e(c))),a)return a(c)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=l.bind(null,r.onerror),r.onload=l.bind(null,r.onload),o&&document.head.appendChild(r)}},b.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},b.p="/",b.gca=function(e){return e={17896441:"7918","935f2afb":"53","62e5798c":"117",efd1d6d2:"334",b2b675dd:"533","57078c21":"738",e0105f9c:"981","12270f25":"1069",b2f554cd:"1477",cc143930:"1513",c70cd9ce:"1534",a7023ddc:"1713",a498f142:"1794",af5bd2c6:"1901",bae34c37:"2027",f99a0c18:"2044",e273c56f:"2362","4d937ca4":"2394","814f3328":"2535",ac3c7a65:"2668",d53c8af8:"2734",a6aa9e1f:"3089","1da23019":"3178","1df93b7f":"3237","9e4087bc":"3608",afc8c0cc:"3920","3b323550":"3939","01a85c17":"4013","54515deb":"4209","3f0fd536":"4375","69151fc0":"4589",bb5610d5:"4938","0724bfe4":"4994","5bb40fa4":"4995",a1640c12:"5195",ccc49370:"6103","1dd8b630":"6129",a79d6dac:"6307","1581e59b":"6714","687c9186":"7695",df8d2258:"7845","6da30924":"8008",edbbf0b8:"8340",b4726b2c:"8509",a095f7ca:"8594","6875c492":"8610","925b3f96":"9003","5be362f3":"9011",ba3a6899:"9322","1be78505":"9514","19f3f78d":"9649","0e384e19":"9671"}[e]||e,b.p+b.u(e)},(()=>{var e={1303:0,532:0};b.f.j=(a,c)=>{var d=b.o(e,a)?e[a]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var t=new Promise(((c,t)=>d=e[a]=[c,t]));c.push(d[2]=t);var f=b.p+b.u(a),r=new Error;b.l(f,(c=>{if(b.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var t=c&&("load"===c.type?"missing":c.type),f=c&&c.target&&c.target.src;r.message="Loading chunk "+a+" failed.\n("+t+": "+f+")",r.name="ChunkLoadError",r.type=t,r.request=f,d[1](r)}}),"chunk-"+a,a)}},b.O.j=a=>0===e[a];var a=(a,c)=>{var d,t,f=c[0],r=c[1],o=c[2],n=0;if(f.some((a=>0!==e[a]))){for(d in r)b.o(r,d)&&(b.m[d]=r[d]);if(o)var i=o(b)}for(a&&a(c);n{"use strict";var e,a,c,d,t,f={},r={};function b(e){var a=r[e];if(void 0!==a)return a.exports;var c=r[e]={id:e,loaded:!1,exports:{}};return f[e].call(c.exports,c,c.exports,b),c.loaded=!0,c.exports}b.m=f,b.c=r,e=[],b.O=(a,c,d,t)=>{if(!c){var f=1/0;for(i=0;i=t)&&Object.keys(b.O).every((e=>b.O[e](c[o])))?c.splice(o--,1):(r=!1,t0&&e[i-1][2]>t;i--)e[i]=e[i-1];e[i]=[c,d,t]},b.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return b.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,b.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var t=Object.create(null);b.r(t);var f={};a=a||[null,c({}),c([]),c(c)];for(var r=2&d&&e;"object"==typeof r&&!~a.indexOf(r);r=c(r))Object.getOwnPropertyNames(r).forEach((a=>f[a]=()=>e[a]));return f.default=()=>e,b.d(t,f),t},b.d=(e,a)=>{for(var c in a)b.o(a,c)&&!b.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},b.f={},b.e=e=>Promise.all(Object.keys(b.f).reduce(((a,c)=>(b.f[c](e,a),a)),[])),b.u=e=>"assets/js/"+({53:"935f2afb",117:"62e5798c",334:"efd1d6d2",533:"b2b675dd",738:"57078c21",981:"e0105f9c",1069:"12270f25",1477:"b2f554cd",1513:"cc143930",1534:"c70cd9ce",1713:"a7023ddc",1794:"a498f142",1901:"af5bd2c6",2027:"bae34c37",2044:"f99a0c18",2362:"e273c56f",2394:"4d937ca4",2535:"814f3328",2668:"ac3c7a65",2734:"d53c8af8",3089:"a6aa9e1f",3178:"1da23019",3237:"1df93b7f",3608:"9e4087bc",3920:"afc8c0cc",3939:"3b323550",4013:"01a85c17",4209:"54515deb",4375:"3f0fd536",4589:"69151fc0",4938:"bb5610d5",4994:"0724bfe4",4995:"5bb40fa4",5195:"a1640c12",6103:"ccc49370",6129:"1dd8b630",6307:"a79d6dac",6714:"1581e59b",7695:"687c9186",7845:"df8d2258",7918:"17896441",8008:"6da30924",8340:"edbbf0b8",8509:"b4726b2c",8594:"a095f7ca",8610:"6875c492",9003:"925b3f96",9011:"5be362f3",9322:"ba3a6899",9514:"1be78505",9649:"19f3f78d",9671:"0e384e19"}[e]||e)+"."+{53:"b0da058d",117:"3a57b3a9",207:"f711ba53",334:"ae9a0142",533:"cdf23cc3",738:"cf39b280",981:"c26c80c6",1011:"660c16b5",1069:"a96fd296",1477:"fcbbc731",1513:"1179e8a7",1534:"a9528a79",1713:"c5eab5f8",1794:"eb3233f7",1901:"911f1b84",2027:"a654e04c",2044:"91f9cad6",2362:"715463fa",2394:"9bde2101",2535:"282264bc",2668:"cd3baca1",2734:"1f6e121d",3089:"e85136f4",3178:"232b8a2b",3237:"43f06aed",3608:"9381f63b",3920:"4f0516f0",3939:"20995124",4013:"8fa3efba",4209:"ba1a03a9",4248:"0afb9a1d",4375:"5137b7fb",4589:"f033d98b",4938:"32938f69",4994:"acc75400",4995:"4e5700a9",5195:"ad1a977d",6103:"e517dc1e",6129:"ead5e1c5",6307:"f53d5b3f",6714:"74f897f8",7219:"9f8306dc",7695:"ee41d11d",7845:"8c8f93e1",7918:"bdc592a9",8008:"9b44c80c",8340:"29222172",8509:"0ac00d43",8594:"9fb3832c",8610:"39002535",9003:"6b763fb2",9011:"5cb504a0",9322:"764493de",9514:"7aedf505",9649:"2a122768",9671:"e7fe3df7"}[e]+".js",b.miniCssF=e=>{},b.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),b.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},t="openapi-stack:",b.l=(e,a,c,f)=>{if(d[e])d[e].push(a);else{var r,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{r.onerror=r.onload=null,clearTimeout(s);var t=d[e];if(delete d[e],r.parentNode&&r.parentNode.removeChild(r),t&&t.forEach((e=>e(c))),a)return a(c)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=l.bind(null,r.onerror),r.onload=l.bind(null,r.onload),o&&document.head.appendChild(r)}},b.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},b.p="/",b.gca=function(e){return e={17896441:"7918","935f2afb":"53","62e5798c":"117",efd1d6d2:"334",b2b675dd:"533","57078c21":"738",e0105f9c:"981","12270f25":"1069",b2f554cd:"1477",cc143930:"1513",c70cd9ce:"1534",a7023ddc:"1713",a498f142:"1794",af5bd2c6:"1901",bae34c37:"2027",f99a0c18:"2044",e273c56f:"2362","4d937ca4":"2394","814f3328":"2535",ac3c7a65:"2668",d53c8af8:"2734",a6aa9e1f:"3089","1da23019":"3178","1df93b7f":"3237","9e4087bc":"3608",afc8c0cc:"3920","3b323550":"3939","01a85c17":"4013","54515deb":"4209","3f0fd536":"4375","69151fc0":"4589",bb5610d5:"4938","0724bfe4":"4994","5bb40fa4":"4995",a1640c12:"5195",ccc49370:"6103","1dd8b630":"6129",a79d6dac:"6307","1581e59b":"6714","687c9186":"7695",df8d2258:"7845","6da30924":"8008",edbbf0b8:"8340",b4726b2c:"8509",a095f7ca:"8594","6875c492":"8610","925b3f96":"9003","5be362f3":"9011",ba3a6899:"9322","1be78505":"9514","19f3f78d":"9649","0e384e19":"9671"}[e]||e,b.p+b.u(e)},(()=>{var e={1303:0,532:0};b.f.j=(a,c)=>{var d=b.o(e,a)?e[a]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var t=new Promise(((c,t)=>d=e[a]=[c,t]));c.push(d[2]=t);var f=b.p+b.u(a),r=new Error;b.l(f,(c=>{if(b.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var t=c&&("load"===c.type?"missing":c.type),f=c&&c.target&&c.target.src;r.message="Loading chunk "+a+" failed.\n("+t+": "+f+")",r.name="ChunkLoadError",r.type=t,r.request=f,d[1](r)}}),"chunk-"+a,a)}},b.O.j=a=>0===e[a];var a=(a,c)=>{var d,t,f=c[0],r=c[1],o=c[2],n=0;if(f.some((a=>0!==e[a]))){for(d in r)b.o(r,d)&&(b.m[d]=r[d]);if(o)var i=o(b)}for(a&&a(c);n - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/blog/first-blog-post/index.html b/blog/first-blog-post/index.html index cf9ba98f..ed7cd645 100644 --- a/blog/first-blog-post/index.html +++ b/blog/first-blog-post/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/blog/index.html b/blog/index.html index a177c0e1..f1c2dbfa 100644 --- a/blog/index.html +++ b/blog/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/blog/tags/index.html b/blog/tags/index.html index fdc56118..1cb37379 100644 --- a/blog/tags/index.html +++ b/blog/tags/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/blog/tags/openapi/index.html b/blog/tags/openapi/index.html index cf741e97..6939f996 100644 --- a/blog/tags/openapi/index.html +++ b/blog/tags/openapi/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/api-first/index.html b/docs/api-first/index.html index 081f2971..6ca2be45 100644 --- a/docs/api-first/index.html +++ b/docs/api-first/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/examples/boilerplate/index.html b/docs/examples/boilerplate/index.html index db90835e..f1232a88 100644 --- a/docs/examples/boilerplate/index.html +++ b/docs/examples/boilerplate/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/examples/building-apis/index.html b/docs/examples/building-apis/index.html index 6b4c722e..0a5d1dbc 100644 --- a/docs/examples/building-apis/index.html +++ b/docs/examples/building-apis/index.html @@ -10,7 +10,7 @@ - + @@ -30,7 +30,7 @@ - + \ No newline at end of file diff --git a/docs/examples/calling-apis/index.html b/docs/examples/calling-apis/index.html index 83dee0ae..44079f72 100644 --- a/docs/examples/calling-apis/index.html +++ b/docs/examples/calling-apis/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/examples/index.html b/docs/examples/index.html index 8e264a22..5b28105c 100644 --- a/docs/examples/index.html +++ b/docs/examples/index.html @@ -10,13 +10,13 @@ - +
- + \ No newline at end of file diff --git a/docs/examples/tanstack-query/index.html b/docs/examples/tanstack-query/index.html index af3bd586..44be1a78 100644 --- a/docs/examples/tanstack-query/index.html +++ b/docs/examples/tanstack-query/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/examples/testing-react-with-jest-and-openapi-mocks/index.html b/docs/examples/testing-react-with-jest-and-openapi-mocks/index.html index 5abc42a7..50dd88a2 100644 --- a/docs/examples/testing-react-with-jest-and-openapi-mocks/index.html +++ b/docs/examples/testing-react-with-jest-and-openapi-mocks/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 271893ca..c5dcbc6f 100644 --- a/docs/index.html +++ b/docs/index.html @@ -10,13 +10,13 @@ - +
- + \ No newline at end of file diff --git a/docs/intro/index.html b/docs/intro/index.html index ac4e8759..365e9916 100644 --- a/docs/intro/index.html +++ b/docs/intro/index.html @@ -10,7 +10,7 @@ - + @@ -18,7 +18,7 @@
openapicmd logo

openapi-stackGitHub

License npm downloads npm downloads -GitHub stars

openapi-stack is a collection of open source libraries and tools for full stack software development using OpenAPI specification.

The goal is to unlock great developer experience and full stack type safety for software teams using REST; inspired by tools like GraphQL and tRPC.

How does openapi-stack compare to GraphQL?

GraphQL is a query language for APIs developed by Facebook. It gives API clients full control over the data they query, making it extremely flexible and efficient for client-centric use cases.

Similar to OpenAPI specification, GraphQL APIs define a strongly typed schema for the data and mutations they support which makes them discoverable and intuitive to develop against.

OpenAPI stack achieves the same type safety and great developer experience by using the OpenAPI specification as a single source of truth for the API contract, used to generate types for both client and server side and utilising it for routing and validation during runtime.

Both GraphQL and openapi-stack encourage an API First approach where the API contract is treated as a first class citizen in software design instead of treating it as merely documentation.

While REST APIs don't generally provide the same level of control to clients as GraphQL, many times this could be seen as a benefit especially in scenarios where strict control over data access and operations is crucial.

Many organizations choose REST over GraphQL due to more established conventions, simplicity, and the ability to leverage standard HTTP features directly. Widespread knowledge around REST contribute to its choice among organizations looking for a tried-and-tested approach to building APIs.

How does openapi-stack compare to tRPC?

tRPC is a Remote Procedure Call (RPC) library for Typescript to build and consume typesafe APIs.

Designed for full-stack Typescript applications, tRPC allows direct sharing of types between both the client and server, without relying on code generation.

Unlike GraphQL and REST, tRPC doesn't expose a standard machine-readable API schema to be consumed by clients, instead taking a more straightforward approach of exposing endpoints or procedures, essentially "just functions" invoked by the client to the server.

OpenAPI stack achieves type safety using a similar workflow to tRPC's procedures with OpenAPI operations, also avoiding code generation by only generating types from OpenAPI spec and using the machine readable contract in the runtime for routing and validation.

While the lightweight tRPC approach is optimal for teams just looking to build full stack applications, teams looking to build robust APIs are better served by the API design first approach of openapi-stack or GraphQL.

Benefits

  1. 🚀 No code generation. Write your own code the way you like it. Only generate types from OpenAPI spec if you want.
  2. 🤝 Single source of truth for your API contract. No more manually updating your OpenAPI specs to keep up with your backend code. Ensure your API docs and SDKs stay up to date by using the spec in runtime to route and validate.
  3. 🧙‍♂️ Type safety and validation. Build your product faster and with a better developer experience using strongly typed Typescript and code autocomplete both in the server and client side.
  4. ❤️ Testing & Collaboration.. Leverage API mocks to make testing and development easier and iterate fast on your API design as you build your app's interface. Being blocked by the backend team is a thing of the past!

Backend

Build, Validate, Route, Authenticate, and Mock your backend using the openapi-backend library.

Quickstart - NPM

Client

Easily consume your API using the typesafe openapi-client-axios library.

Quickstart - NPM

CLI

Generate types, design and test your API using the openapicmd command line tool.

Quickstart - NPM

Features

  • Battle-tested in production. High test coverage.
  • ️No code generation – we only generate types
  • Built with TypeScript, types included with full autocomplete support
  • Framework agnostic – works with your stack
  • Lightweight - small frontend bundle + optimized for serverless cold starts
  • OpenAPI 3.x support
  • Samples included

Star History

Star History Chart

- + \ No newline at end of file diff --git a/docs/openapi-backend/api/index.html b/docs/openapi-backend/api/index.html index 8a6d0fed..a19369c3 100644 --- a/docs/openapi-backend/api/index.html +++ b/docs/openapi-backend/api/index.html @@ -10,7 +10,7 @@ - + @@ -61,7 +61,7 @@
- + \ No newline at end of file diff --git a/docs/openapi-backend/examples/index.html b/docs/openapi-backend/examples/index.html index f1da49c7..83d89234 100644 --- a/docs/openapi-backend/examples/index.html +++ b/docs/openapi-backend/examples/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/index.html b/docs/openapi-backend/index.html index 44d360d3..3a2b3755 100644 --- a/docs/openapi-backend/index.html +++ b/docs/openapi-backend/index.html @@ -10,13 +10,13 @@ - +
- + \ No newline at end of file diff --git a/docs/openapi-backend/intro/index.html b/docs/openapi-backend/intro/index.html index 358e52df..d62aa9d3 100644 --- a/docs/openapi-backend/intro/index.html +++ b/docs/openapi-backend/intro/index.html @@ -10,7 +10,7 @@ - + @@ -39,7 +39,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/mocking/index.html b/docs/openapi-backend/mocking/index.html index 978dc68d..cab53a7b 100644 --- a/docs/openapi-backend/mocking/index.html +++ b/docs/openapi-backend/mocking/index.html @@ -10,7 +10,7 @@ - + @@ -31,7 +31,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/operation-handlers/index.html b/docs/openapi-backend/operation-handlers/index.html index 15ff8d2b..c2681da0 100644 --- a/docs/openapi-backend/operation-handlers/index.html +++ b/docs/openapi-backend/operation-handlers/index.html @@ -10,7 +10,7 @@ - + @@ -37,7 +37,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/request-validation/index.html b/docs/openapi-backend/request-validation/index.html index 45cbe861..9b181ec2 100644 --- a/docs/openapi-backend/request-validation/index.html +++ b/docs/openapi-backend/request-validation/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/response-validation/index.html b/docs/openapi-backend/response-validation/index.html index 42a18a7f..55102d53 100644 --- a/docs/openapi-backend/response-validation/index.html +++ b/docs/openapi-backend/response-validation/index.html @@ -10,7 +10,7 @@ - + @@ -30,7 +30,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/security-handlers/index.html b/docs/openapi-backend/security-handlers/index.html index 4da4b560..836dd3f3 100644 --- a/docs/openapi-backend/security-handlers/index.html +++ b/docs/openapi-backend/security-handlers/index.html @@ -10,7 +10,7 @@ - + @@ -35,7 +35,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/typescript/index.html b/docs/openapi-backend/typescript/index.html index f446faa5..94c1bd76 100644 --- a/docs/openapi-backend/typescript/index.html +++ b/docs/openapi-backend/typescript/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-backend/versioning/index.html b/docs/openapi-backend/versioning/index.html index 7dfa2c47..b21bff05 100644 --- a/docs/openapi-backend/versioning/index.html +++ b/docs/openapi-backend/versioning/index.html @@ -10,7 +10,7 @@ - + @@ -32,7 +32,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-client-axios/bundling/index.html b/docs/openapi-client-axios/bundling/index.html index d8a1ed14..f92fcd37 100644 --- a/docs/openapi-client-axios/bundling/index.html +++ b/docs/openapi-client-axios/bundling/index.html @@ -10,7 +10,7 @@ - + @@ -36,7 +36,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-client-axios/index.html b/docs/openapi-client-axios/index.html index dfbb0b5d..bf1cb22f 100644 --- a/docs/openapi-client-axios/index.html +++ b/docs/openapi-client-axios/index.html @@ -10,13 +10,13 @@ - +
- + \ No newline at end of file diff --git a/docs/openapi-client-axios/intro/index.html b/docs/openapi-client-axios/intro/index.html index 1424c93c..2101df22 100644 --- a/docs/openapi-client-axios/intro/index.html +++ b/docs/openapi-client-axios/intro/index.html @@ -10,7 +10,7 @@ - + @@ -36,7 +36,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-client-axios/typegen/index.html b/docs/openapi-client-axios/typegen/index.html index 72f3b73c..7efd3d9e 100644 --- a/docs/openapi-client-axios/typegen/index.html +++ b/docs/openapi-client-axios/typegen/index.html @@ -10,7 +10,7 @@ - + @@ -30,7 +30,7 @@ - + \ No newline at end of file diff --git a/docs/openapi-client-axios/usage/index.html b/docs/openapi-client-axios/usage/index.html index df7cf9f2..6b21b4e0 100644 --- a/docs/openapi-client-axios/usage/index.html +++ b/docs/openapi-client-axios/usage/index.html @@ -10,7 +10,7 @@ - + @@ -36,7 +36,7 @@ - + \ No newline at end of file diff --git a/docs/openapicmd/call/index.html b/docs/openapicmd/call/index.html index 66cc5d41..c8297622 100644 --- a/docs/openapicmd/call/index.html +++ b/docs/openapicmd/call/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapicmd/config/index.html b/docs/openapicmd/config/index.html index fefba179..87a3725e 100644 --- a/docs/openapicmd/config/index.html +++ b/docs/openapicmd/config/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapicmd/index.html b/docs/openapicmd/index.html index 8f35d6e9..cc4a3a80 100644 --- a/docs/openapicmd/index.html +++ b/docs/openapicmd/index.html @@ -10,13 +10,13 @@ - +
- + \ No newline at end of file diff --git a/docs/openapicmd/intro/index.html b/docs/openapicmd/intro/index.html index f3275bed..ba94ab27 100644 --- a/docs/openapicmd/intro/index.html +++ b/docs/openapicmd/intro/index.html @@ -10,7 +10,7 @@ - + @@ -34,7 +34,7 @@ - + \ No newline at end of file diff --git a/docs/openapicmd/mock-server/index.html b/docs/openapicmd/mock-server/index.html index 4f51fbeb..7d6ad181 100644 --- a/docs/openapicmd/mock-server/index.html +++ b/docs/openapicmd/mock-server/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapicmd/swagger-ui/index.html b/docs/openapicmd/swagger-ui/index.html index b02b9156..b7f4287b 100644 --- a/docs/openapicmd/swagger-ui/index.html +++ b/docs/openapicmd/swagger-ui/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/docs/openapicmd/typegen/index.html b/docs/openapicmd/typegen/index.html index 4a5d9b0c..9b0269f6 100644 --- a/docs/openapicmd/typegen/index.html +++ b/docs/openapicmd/typegen/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/index.html b/index.html index b0ef028c..57266532 100644 --- a/index.html +++ b/index.html @@ -10,7 +10,7 @@ - + @@ -29,7 +29,7 @@ - + \ No newline at end of file diff --git a/search-index-docs-default-current.json b/search-index-docs-default-current.json index 458f446f..52c18082 100644 --- a/search-index-docs-default-current.json +++ b/search-index-docs-default-current.json @@ -1 +1 @@ -{"documents":[{"id":19,"pageTitle":"Why API First?","sectionTitle":"Why API First?","sectionRoute":"/docs/api-first/","type":"docs"},{"id":20,"pageTitle":"Why API First?","sectionTitle":"Design First Philosophy","sectionRoute":"/docs/api-first/#design-first-philosophy","type":"docs"},{"id":21,"pageTitle":"Why API First?","sectionTitle":"Type Safety","sectionRoute":"/docs/api-first/#type-safety","type":"docs"},{"id":22,"pageTitle":"Why API First?","sectionTitle":"No Code Generation","sectionRoute":"/docs/api-first/#no-code-generation","type":"docs"},{"id":23,"pageTitle":"Why API First?","sectionTitle":"Framework agnostic","sectionRoute":"/docs/api-first/#framework-agnostic","type":"docs"},{"id":3,"pageTitle":"Boilerplate projects","sectionTitle":"Boilerplate projects","sectionRoute":"/docs/examples/boilerplate/","type":"docs"},{"id":4,"pageTitle":"Building APIs","sectionTitle":"Building APIs","sectionRoute":"/docs/examples/building-apis/","type":"docs"},{"id":5,"pageTitle":"Building APIs","sectionTitle":"Prerequisites","sectionRoute":"/docs/examples/building-apis/#prerequisites","type":"docs"},{"id":6,"pageTitle":"Building APIs","sectionTitle":"Setting up express","sectionRoute":"/docs/examples/building-apis/#setting-up-express","type":"docs"},{"id":7,"pageTitle":"Building APIs","sectionTitle":"Setting up openapi-backend","sectionRoute":"/docs/examples/building-apis/#setting-up-openapi-backend","type":"docs"},{"id":8,"pageTitle":"Building APIs","sectionTitle":"Writing our API spec","sectionRoute":"/docs/examples/building-apis/#writing-our-api-spec","type":"docs"},{"id":9,"pageTitle":"Building APIs","sectionTitle":"Implementing Handlers","sectionRoute":"/docs/examples/building-apis/#implementing-handlers","type":"docs"},{"id":10,"pageTitle":"Building APIs","sectionTitle":"Use as express middleware","sectionRoute":"/docs/examples/building-apis/#use-as-express-middleware","type":"docs"},{"id":11,"pageTitle":"Building APIs","sectionTitle":"Full Example","sectionRoute":"/docs/examples/building-apis/#full-example","type":"docs"},{"id":12,"pageTitle":"Building APIs","sectionTitle":"Optional: Mocking Responses","sectionRoute":"/docs/examples/building-apis/#optional-mocking-responses","type":"docs"},{"id":13,"pageTitle":"Invoking APIs","sectionTitle":"Invoking APIs","sectionRoute":"/docs/examples/calling-apis/","type":"docs"},{"id":14,"pageTitle":"Invoking APIs","sectionTitle":"Prerequisites","sectionRoute":"/docs/examples/calling-apis/#prerequisites","type":"docs"},{"id":15,"pageTitle":"Invoking APIs","sectionTitle":"Creating a client instace","sectionRoute":"/docs/examples/calling-apis/#creating-a-client-instace","type":"docs"},{"id":16,"pageTitle":"Invoking APIs","sectionTitle":"Adding Types","sectionRoute":"/docs/examples/calling-apis/#adding-types","type":"docs"},{"id":17,"pageTitle":"Invoking APIs","sectionTitle":"Invoking the API","sectionRoute":"/docs/examples/calling-apis/#invoking-the-api","type":"docs"},{"id":18,"pageTitle":"Invoking APIs","sectionTitle":"Full Example","sectionRoute":"/docs/examples/calling-apis/#full-example","type":"docs"},{"id":31,"pageTitle":"Use with React Query","sectionTitle":"Use with React Query","sectionRoute":"/docs/examples/tanstack-query/","type":"docs"},{"id":32,"pageTitle":"Use with React Query","sectionTitle":"Example with React Query","sectionRoute":"/docs/examples/tanstack-query/#example-with-react-query","type":"docs"},{"id":33,"pageTitle":"Testing with msw + openapi-backend mocks","sectionTitle":"Testing with msw + openapi-backend mocks","sectionRoute":"/docs/examples/testing-react-with-jest-and-openapi-mocks/","type":"docs"},{"id":34,"pageTitle":"Testing with msw + openapi-backend mocks","sectionTitle":"Setting up msw","sectionRoute":"/docs/examples/testing-react-with-jest-and-openapi-mocks/#setting-up-msw","type":"docs"},{"id":35,"pageTitle":"Testing with msw + openapi-backend mocks","sectionTitle":"Even better with OpenAPI","sectionRoute":"/docs/examples/testing-react-with-jest-and-openapi-mocks/#even-better-with-openapi","type":"docs"},{"id":36,"pageTitle":"Testing with msw + openapi-backend mocks","sectionTitle":"Enabling Request Validation","sectionRoute":"/docs/examples/testing-react-with-jest-and-openapi-mocks/#enabling-request-validation","type":"docs"},{"id":37,"pageTitle":"Testing with msw + openapi-backend mocks","sectionTitle":"Custom Handlers","sectionRoute":"/docs/examples/testing-react-with-jest-and-openapi-mocks/#custom-handlers","type":"docs"},{"id":24,"pageTitle":"openapi-stack","sectionTitle":"openapi-stack","sectionRoute":"/docs/intro/","type":"docs"},{"id":25,"pageTitle":"openapi-stack","sectionTitle":"Benefits","sectionRoute":"/docs/intro/#benefits","type":"docs"},{"id":26,"pageTitle":"openapi-stack","sectionTitle":"Backend","sectionRoute":"/docs/intro/#backend","type":"docs"},{"id":27,"pageTitle":"openapi-stack","sectionTitle":"Client","sectionRoute":"/docs/intro/#client","type":"docs"},{"id":28,"pageTitle":"openapi-stack","sectionTitle":"CLI","sectionRoute":"/docs/intro/#cli","type":"docs"},{"id":29,"pageTitle":"openapi-stack","sectionTitle":"Features","sectionRoute":"/docs/intro/#features","type":"docs"},{"id":30,"pageTitle":"openapi-stack","sectionTitle":"Star History","sectionRoute":"/docs/intro/#star-history","type":"docs"},{"id":62,"pageTitle":"Reference","sectionTitle":"Reference","sectionRoute":"/docs/openapi-backend/api/","type":"docs"},{"id":63,"pageTitle":"Reference","sectionTitle":"Class OpenAPIBackend","sectionRoute":"/docs/openapi-backend/api/#class-openapibackend","type":"docs"},{"id":64,"pageTitle":"Reference","sectionTitle":"new OpenAPIBackend(opts)","sectionRoute":"/docs/openapi-backend/api/#new-openapibackendopts","type":"docs"},{"id":65,"pageTitle":"Reference","sectionTitle":".init()","sectionRoute":"/docs/openapi-backend/api/#init","type":"docs"},{"id":66,"pageTitle":"Reference","sectionTitle":".handleRequest(req, ...handlerArgs)","sectionRoute":"/docs/openapi-backend/api/#handlerequestreq-handlerargs","type":"docs"},{"id":67,"pageTitle":"Reference","sectionTitle":".validateRequest()","sectionRoute":"/docs/openapi-backend/api/#validaterequest","type":"docs"},{"id":68,"pageTitle":"Reference","sectionTitle":".validateResponse()","sectionRoute":"/docs/openapi-backend/api/#validateresponse","type":"docs"},{"id":69,"pageTitle":"Reference","sectionTitle":".validateResponseHeaders()","sectionRoute":"/docs/openapi-backend/api/#validateresponseheaders","type":"docs"},{"id":70,"pageTitle":"Reference","sectionTitle":".matchOperation()","sectionRoute":"/docs/openapi-backend/api/#matchoperation","type":"docs"},{"id":71,"pageTitle":"Reference","sectionTitle":".register(operationId, handler)","sectionRoute":"/docs/openapi-backend/api/#registeroperationid-handler","type":"docs"},{"id":72,"pageTitle":"Reference","sectionTitle":".register(handlers)","sectionRoute":"/docs/openapi-backend/api/#registerhandlers","type":"docs"},{"id":73,"pageTitle":"Reference","sectionTitle":".mockResponseForOperation(operationId, opts?)","sectionRoute":"/docs/openapi-backend/api/#mockresponseforoperationoperationid-opts","type":"docs"},{"id":74,"pageTitle":"Reference","sectionTitle":".registerSecurityHandler(name, handler)","sectionRoute":"/docs/openapi-backend/api/#registersecurityhandlername-handler","type":"docs"},{"id":75,"pageTitle":"Reference","sectionTitle":".router","sectionRoute":"/docs/openapi-backend/api/#router","type":"docs"},{"id":76,"pageTitle":"Reference","sectionTitle":".validator","sectionRoute":"/docs/openapi-backend/api/#validator","type":"docs"},{"id":77,"pageTitle":"Reference","sectionTitle":"Class OpenAPIRouter","sectionRoute":"/docs/openapi-backend/api/#class-openapirouter","type":"docs"},{"id":78,"pageTitle":"Reference","sectionTitle":"new OpenAPIRouter(opts)","sectionRoute":"/docs/openapi-backend/api/#new-openapirouteropts","type":"docs"},{"id":79,"pageTitle":"Reference","sectionTitle":".matchOperation(req)","sectionRoute":"/docs/openapi-backend/api/#matchoperationreq","type":"docs"},{"id":80,"pageTitle":"Reference","sectionTitle":".getOperations()","sectionRoute":"/docs/openapi-backend/api/#getoperations","type":"docs"},{"id":81,"pageTitle":"Reference","sectionTitle":".getOperation(operationId)","sectionRoute":"/docs/openapi-backend/api/#getoperationoperationid","type":"docs"},{"id":82,"pageTitle":"Reference","sectionTitle":".parseRequest(req, operation?)","sectionRoute":"/docs/openapi-backend/api/#parserequestreq-operation","type":"docs"},{"id":83,"pageTitle":"Reference","sectionTitle":"Class OpenAPIValidator","sectionRoute":"/docs/openapi-backend/api/#class-openapivalidator","type":"docs"},{"id":84,"pageTitle":"Reference","sectionTitle":"new OpenAPIValidator(opts)","sectionRoute":"/docs/openapi-backend/api/#new-openapivalidatoropts","type":"docs"},{"id":85,"pageTitle":"Reference","sectionTitle":".validateRequest(req, operation?)","sectionRoute":"/docs/openapi-backend/api/#validaterequestreq-operation","type":"docs"},{"id":86,"pageTitle":"Reference","sectionTitle":".validateResponse(res, operation, statusCode?)","sectionRoute":"/docs/openapi-backend/api/#validateresponseres-operation-statuscode","type":"docs"},{"id":87,"pageTitle":"Reference","sectionTitle":".validateResponseHeaders(headers, operation, opts?)","sectionRoute":"/docs/openapi-backend/api/#validateresponseheadersheaders-operation-opts","type":"docs"},{"id":88,"pageTitle":"Reference","sectionTitle":"Operation Handlers","sectionRoute":"/docs/openapi-backend/api/#operation-handlers","type":"docs"},{"id":89,"pageTitle":"Reference","sectionTitle":"validationFail Handler","sectionRoute":"/docs/openapi-backend/api/#validationfail-handler","type":"docs"},{"id":90,"pageTitle":"Reference","sectionTitle":"notFound Handler","sectionRoute":"/docs/openapi-backend/api/#notfound-handler","type":"docs"},{"id":91,"pageTitle":"Reference","sectionTitle":"methodNotAllowed Handler","sectionRoute":"/docs/openapi-backend/api/#methodnotallowed-handler","type":"docs"},{"id":92,"pageTitle":"Reference","sectionTitle":"notImplemented Handler","sectionRoute":"/docs/openapi-backend/api/#notimplemented-handler","type":"docs"},{"id":93,"pageTitle":"Reference","sectionTitle":"unauthorizedHandler Handler","sectionRoute":"/docs/openapi-backend/api/#unauthorizedhandler-handler","type":"docs"},{"id":94,"pageTitle":"Reference","sectionTitle":"postResponseHandler Handler","sectionRoute":"/docs/openapi-backend/api/#postresponsehandler-handler","type":"docs"},{"id":95,"pageTitle":"Reference","sectionTitle":"Interfaces","sectionRoute":"/docs/openapi-backend/api/#interfaces","type":"docs"},{"id":96,"pageTitle":"Reference","sectionTitle":"Document Object","sectionRoute":"/docs/openapi-backend/api/#document-object","type":"docs"},{"id":97,"pageTitle":"Reference","sectionTitle":"Operation Object","sectionRoute":"/docs/openapi-backend/api/#operation-object","type":"docs"},{"id":98,"pageTitle":"Reference","sectionTitle":"Context Object","sectionRoute":"/docs/openapi-backend/api/#context-object","type":"docs"},{"id":99,"pageTitle":"Reference","sectionTitle":"Request Object","sectionRoute":"/docs/openapi-backend/api/#request-object","type":"docs"},{"id":100,"pageTitle":"Reference","sectionTitle":"ParsedRequest Object","sectionRoute":"/docs/openapi-backend/api/#parsedrequest-object","type":"docs"},{"id":101,"pageTitle":"Reference","sectionTitle":"ValidationResult Object","sectionRoute":"/docs/openapi-backend/api/#validationresult-object","type":"docs"},{"id":38,"pageTitle":"Framework Examples","sectionTitle":"Framework Examples","sectionRoute":"/docs/openapi-backend/examples/","type":"docs"},{"id":39,"pageTitle":"Framework Examples","sectionTitle":"Express","sectionRoute":"/docs/openapi-backend/examples/#express","type":"docs"},{"id":40,"pageTitle":"Framework Examples","sectionTitle":"AWS Serverless (Lambda)","sectionRoute":"/docs/openapi-backend/examples/#aws-serverless-lambda","type":"docs"},{"id":41,"pageTitle":"Framework Examples","sectionTitle":"Azure Function","sectionRoute":"/docs/openapi-backend/examples/#azure-function","type":"docs"},{"id":42,"pageTitle":"Framework Examples","sectionTitle":"Fastify","sectionRoute":"/docs/openapi-backend/examples/#fastify","type":"docs"},{"id":43,"pageTitle":"Framework Examples","sectionTitle":"Koa","sectionRoute":"/docs/openapi-backend/examples/#koa","type":"docs"},{"id":44,"pageTitle":"Framework Examples","sectionTitle":"Hapi","sectionRoute":"/docs/openapi-backend/examples/#hapi","type":"docs"},{"id":45,"pageTitle":"Framework Examples","sectionTitle":"More Examples","sectionRoute":"/docs/openapi-backend/examples/#more-examples","type":"docs"},{"id":46,"pageTitle":"openapi-backend","sectionTitle":"openapi-backend","sectionRoute":"/docs/openapi-backend/intro/","type":"docs"},{"id":47,"pageTitle":"openapi-backend","sectionTitle":"Features","sectionRoute":"/docs/openapi-backend/intro/#features","type":"docs"},{"id":48,"pageTitle":"openapi-backend","sectionTitle":"Quick Start","sectionRoute":"/docs/openapi-backend/intro/#quick-start","type":"docs"},{"id":49,"pageTitle":"Mocking API responses","sectionTitle":"Mocking API responses","sectionRoute":"/docs/openapi-backend/mocking/","type":"docs"},{"id":50,"pageTitle":"Operation Handlers","sectionTitle":"Operation Handlers","sectionRoute":"/docs/openapi-backend/operation-handlers/","type":"docs"},{"id":51,"pageTitle":"Operation Handlers","sectionTitle":"validationFail Handler","sectionRoute":"/docs/openapi-backend/operation-handlers/#validationfail-handler","type":"docs"},{"id":52,"pageTitle":"Operation Handlers","sectionTitle":"notFound Handler","sectionRoute":"/docs/openapi-backend/operation-handlers/#notfound-handler","type":"docs"},{"id":53,"pageTitle":"Operation Handlers","sectionTitle":"methodNotAllowed Handler","sectionRoute":"/docs/openapi-backend/operation-handlers/#methodnotallowed-handler","type":"docs"},{"id":54,"pageTitle":"Operation Handlers","sectionTitle":"notImplemented Handler","sectionRoute":"/docs/openapi-backend/operation-handlers/#notimplemented-handler","type":"docs"},{"id":55,"pageTitle":"Operation Handlers","sectionTitle":"unauthorizedHandler Handler","sectionRoute":"/docs/openapi-backend/operation-handlers/#unauthorizedhandler-handler","type":"docs"},{"id":56,"pageTitle":"Operation Handlers","sectionTitle":"postResponseHandler Handler","sectionRoute":"/docs/openapi-backend/operation-handlers/#postresponsehandler-handler","type":"docs"},{"id":57,"pageTitle":"Request validation","sectionTitle":"Request validation","sectionRoute":"/docs/openapi-backend/request-validation/","type":"docs"},{"id":58,"pageTitle":"Response validation","sectionTitle":"Response validation","sectionRoute":"/docs/openapi-backend/response-validation/","type":"docs"},{"id":59,"pageTitle":"Auth with Security Handlers","sectionTitle":"Auth with Security Handlers","sectionRoute":"/docs/openapi-backend/security-handlers/","type":"docs"},{"id":60,"pageTitle":"Auth with Security Handlers","sectionTitle":"Security Handlers","sectionRoute":"/docs/openapi-backend/security-handlers/#security-handlers","type":"docs"},{"id":102,"pageTitle":"Typescript","sectionTitle":"Typescript","sectionRoute":"/docs/openapi-backend/typescript/","type":"docs"},{"id":103,"pageTitle":"Typescript","sectionTitle":"Using types in operation handlers","sectionRoute":"/docs/openapi-backend/typescript/#using-types-in-operation-handlers","type":"docs"},{"id":104,"pageTitle":"Typescript","sectionTitle":"Generic Types","sectionRoute":"/docs/openapi-backend/typescript/#generic-types","type":"docs"},{"id":61,"pageTitle":"API Versioning","sectionTitle":"API Versioning","sectionRoute":"/docs/openapi-backend/versioning/","type":"docs"},{"id":105,"pageTitle":"Bundling","sectionTitle":"Bundling","sectionRoute":"/docs/openapi-client-axios/bundling/","type":"docs"},{"id":106,"pageTitle":"Bundling","sectionTitle":"Optimizing the bundle","sectionRoute":"/docs/openapi-client-axios/bundling/#optimizing-the-bundle","type":"docs"},{"id":112,"pageTitle":"openapi-client-axios","sectionTitle":"openapi-client-axios","sectionRoute":"/docs/openapi-client-axios/intro/","type":"docs"},{"id":113,"pageTitle":"openapi-client-axios","sectionTitle":"Features","sectionRoute":"/docs/openapi-client-axios/intro/#features","type":"docs"},{"id":114,"pageTitle":"openapi-client-axios","sectionTitle":"Quick Start","sectionRoute":"/docs/openapi-client-axios/intro/#quick-start","type":"docs"},{"id":115,"pageTitle":"openapi-client-axios","sectionTitle":"Typesafe Clients","sectionRoute":"/docs/openapi-client-axios/intro/#typesafe-clients","type":"docs"},{"id":107,"pageTitle":"Typegen package","sectionTitle":"Typegen package","sectionRoute":"/docs/openapi-client-axios/typegen/","type":"docs"},{"id":108,"pageTitle":"Typegen package","sectionTitle":"Usage","sectionRoute":"/docs/openapi-client-axios/typegen/#usage","type":"docs"},{"id":109,"pageTitle":"Typegen package","sectionTitle":"Typesafe Clients","sectionRoute":"/docs/openapi-client-axios/typegen/#typesafe-clients","type":"docs"},{"id":110,"pageTitle":"Typegen package","sectionTitle":"Importing Schemas","sectionRoute":"/docs/openapi-client-axios/typegen/#importing-schemas","type":"docs"},{"id":111,"pageTitle":"Typegen package","sectionTitle":"Advanced: --transformOperationName","sectionRoute":"/docs/openapi-client-axios/typegen/#advanced---transformoperationname","type":"docs"},{"id":116,"pageTitle":"Using the client","sectionTitle":"Using the client","sectionRoute":"/docs/openapi-client-axios/usage/","type":"docs"},{"id":117,"pageTitle":"Using the client","sectionTitle":"Operation methods","sectionRoute":"/docs/openapi-client-axios/usage/#operation-methods","type":"docs"},{"id":118,"pageTitle":"Using the client","sectionTitle":"Parameters","sectionRoute":"/docs/openapi-client-axios/usage/#parameters","type":"docs"},{"id":119,"pageTitle":"Using the client","sectionTitle":"Data","sectionRoute":"/docs/openapi-client-axios/usage/#data","type":"docs"},{"id":120,"pageTitle":"Using the client","sectionTitle":"Config object","sectionRoute":"/docs/openapi-client-axios/usage/#config-object","type":"docs"},{"id":121,"pageTitle":"Using the client","sectionTitle":"Paths Dictionary","sectionRoute":"/docs/openapi-client-axios/usage/#paths-dictionary","type":"docs"},{"id":123,"pageTitle":"Call API operations","sectionTitle":"Call API operations","sectionRoute":"/docs/openapicmd/call/","type":"docs"},{"id":124,"pageTitle":"Call API operations","sectionTitle":"Interactive Mode","sectionRoute":"/docs/openapicmd/call/#interactive-mode","type":"docs"},{"id":125,"pageTitle":"Call API operations","sectionTitle":"Parameters","sectionRoute":"/docs/openapicmd/call/#parameters","type":"docs"},{"id":126,"pageTitle":"Call API operations","sectionTitle":"Authorization","sectionRoute":"/docs/openapicmd/call/#authorization","type":"docs"},{"id":127,"pageTitle":"Call API operations","sectionTitle":"Setting Headers","sectionRoute":"/docs/openapicmd/call/#setting-headers","type":"docs"},{"id":128,"pageTitle":"Call API operations","sectionTitle":"Basic Auth","sectionRoute":"/docs/openapicmd/call/#basic-auth","type":"docs"},{"id":129,"pageTitle":"Call API operations","sectionTitle":"Bearer Token","sectionRoute":"/docs/openapicmd/call/#bearer-token","type":"docs"},{"id":130,"pageTitle":"Call API operations","sectionTitle":"API Key","sectionRoute":"/docs/openapicmd/call/#api-key","type":"docs"},{"id":131,"pageTitle":".openapiconfig","sectionTitle":".openapiconfig","sectionRoute":"/docs/openapicmd/config/","type":"docs"},{"id":132,"pageTitle":".openapiconfig","sectionTitle":"Loading a definition file","sectionRoute":"/docs/openapicmd/config/#loading-a-definition-file","type":"docs"},{"id":133,"pageTitle":".openapiconfig","sectionTitle":"Authentication","sectionRoute":"/docs/openapicmd/config/#authentication","type":"docs"},{"id":134,"pageTitle":".openapiconfig","sectionTitle":"Unloading","sectionRoute":"/docs/openapicmd/config/#unloading","type":"docs"},{"id":143,"pageTitle":"openapicmd","sectionTitle":"openapicmd","sectionRoute":"/docs/openapicmd/intro/","type":"docs"},{"id":144,"pageTitle":"openapicmd","sectionTitle":"Features","sectionRoute":"/docs/openapicmd/intro/#features","type":"docs"},{"id":145,"pageTitle":"openapicmd","sectionTitle":"Quick Start","sectionRoute":"/docs/openapicmd/intro/#quick-start","type":"docs"},{"id":146,"pageTitle":"openapicmd","sectionTitle":"Commands","sectionRoute":"/docs/openapicmd/intro/","type":"docs"},{"id":147,"pageTitle":"openapicmd","sectionTitle":"openapi auth [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-auth-definition","type":"docs"},{"id":148,"pageTitle":"openapicmd","sectionTitle":"openapi call [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-call-definition","type":"docs"},{"id":149,"pageTitle":"openapicmd","sectionTitle":"openapi help [COMMAND]","sectionRoute":"/docs/openapicmd/intro/#openapi-help-command","type":"docs"},{"id":150,"pageTitle":"openapicmd","sectionTitle":"openapi info [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-info-definition","type":"docs"},{"id":151,"pageTitle":"openapicmd","sectionTitle":"openapi init","sectionRoute":"/docs/openapicmd/intro/#openapi-init","type":"docs"},{"id":152,"pageTitle":"openapicmd","sectionTitle":"openapi load DEFINITION","sectionRoute":"/docs/openapicmd/intro/#openapi-load-definition","type":"docs"},{"id":153,"pageTitle":"openapicmd","sectionTitle":"openapi mock [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-mock-definition","type":"docs"},{"id":154,"pageTitle":"openapicmd","sectionTitle":"openapi read [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-read-definition","type":"docs"},{"id":155,"pageTitle":"openapicmd","sectionTitle":"openapi swagger-editor [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-swagger-editor-definition","type":"docs"},{"id":156,"pageTitle":"openapicmd","sectionTitle":"openapi swagger-ui [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-swagger-ui-definition","type":"docs"},{"id":157,"pageTitle":"openapicmd","sectionTitle":"openapi swagger2openapi [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-swagger2openapi-definition","type":"docs"},{"id":158,"pageTitle":"openapicmd","sectionTitle":"openapi typegen [DEFINITION]","sectionRoute":"/docs/openapicmd/intro/#openapi-typegen-definition","type":"docs"},{"id":159,"pageTitle":"openapicmd","sectionTitle":"openapi unload","sectionRoute":"/docs/openapicmd/intro/#openapi-unload","type":"docs"},{"id":122,"pageTitle":"Mock Server","sectionTitle":"Mock Server","sectionRoute":"/docs/openapicmd/mock-server/","type":"docs"},{"id":135,"pageTitle":"Swagger UI","sectionTitle":"Swagger UI","sectionRoute":"/docs/openapicmd/swagger-ui/","type":"docs"},{"id":136,"pageTitle":"Swagger UI","sectionTitle":"Proxy (Avoiding CORS)","sectionRoute":"/docs/openapicmd/swagger-ui/#proxy-avoiding-cors","type":"docs"},{"id":137,"pageTitle":"Swagger UI","sectionTitle":"Swagger Editor","sectionRoute":"/docs/openapicmd/swagger-ui/#swagger-editor","type":"docs"},{"id":138,"pageTitle":"Swagger UI","sectionTitle":"Generating Documentation","sectionRoute":"/docs/openapicmd/swagger-ui/#generating-documentation","type":"docs"},{"id":139,"pageTitle":"Generating types","sectionTitle":"Generating types","sectionRoute":"/docs/openapicmd/typegen/","type":"docs"},{"id":140,"pageTitle":"Generating types","sectionTitle":"Usage","sectionRoute":"/docs/openapicmd/typegen/#usage","type":"docs"},{"id":141,"pageTitle":"Generating types","sectionTitle":"Importing Schemas","sectionRoute":"/docs/openapicmd/typegen/#importing-schemas","type":"docs"},{"id":142,"pageTitle":"Generating types","sectionTitle":"Typesafe Clients","sectionRoute":"/docs/openapicmd/typegen/#typesafe-clients","type":"docs"}],"index":{"version":"2.3.9","fields":["title","content","tags"],"fieldVectors":[["title/19",[0,0.639,1,2.325]],["content/19",[0,0.919,1,2.489,2,6.713,3,4.444,4,4.992,5,4.992,6,4.992,7,3.42,8,3.814,9,4.992,10,4.444,11,4.992,12,6.713,13,3.013,14,4.992,15,4.084,16,3.814,17,4.444,18,4.992,19,4.992,20,0.428,21,2.719,22,3.908,23,4.444,24,3.814,25,4.992,26,4.992,27,2.359,28,3.814,29,3.814,30,2.489,31,5.492,32,5.13,33,0.736,34,2.243,35,2.906,36,4.992]],["tags/19",[]],["title/20",[1,1.931,13,2.338,37,3.873]],["content/20",[0,1.104,1,3.817,13,3.689,16,3.327,20,0.246,21,2.372,24,3.327,31,5.776,32,4.669,33,1.129,38,4.354,39,4.354,40,3.876,41,3.327,42,3.327,43,2.3,44,2.732,45,4.354,46,4.354,47,3.999,48,2.535,49,3.327,50,3.139,51,3.876,52,2.005,53,4.354,54,3.876,55,4.354,56,4.354,57,3.876,58,4.354,59,3.876,60,4.354,61,1.669,62,3.876,63,1.228,64,3.876,65,3.876,66,3.562,67,4.354,68,3.876,69,2.983,70,3.327,71,1.32,72,3.876,73,0.929,74,3.562,75,3.562]],["tags/20",[]],["title/21",[73,0.995,76,3.815]],["content/21",[10,4.518,20,0.383,21,2.764,22,3.951,28,3.878,29,3.878,31,4.151,32,3.878,33,1.001,34,2.28,47,3.321,63,1.431,69,3.477,71,1.539,73,1.632,75,4.151,77,4.151,78,4.518,79,1.829,80,2.68,81,2.764,82,4.518,83,5.075,84,1.539,85,5.075,86,0.4,87,5.075,88,5.075,89,3.185,90,1.723,91,4.151,92,4.518,93,5.075,94,3.063,95,2.398,96,3.321,97,4.518,98,4.151]],["tags/21",[]],["title/22",[84,1.414,99,1.826]],["content/22",[0,0.719,20,0.296,22,3.056,28,5.304,29,4.01,43,2.772,47,3.435,50,3.784,63,1.48,73,1.12,75,4.294,84,2.358,90,1.782,99,3.371,100,5.249,101,3.784,102,5.249,103,4.673,104,6.18,105,4.673,106,3.294,107,5.249,108,5.249,109,3.435,110,3.056,111,5.249,112,5.249,113,5.249,114,5.249,115,3.784,116,4.294]],["tags/22",[]],["title/23",[117,2.715,118,3.563]],["content/23",[20,0.336,21,3.249,22,3.472,63,1.681,110,3.472,117,4.389,119,5.964,120,5.964,121,5.964,122,4.557,123,3.742,124,4.879,125,4.3,126,5.964,127,5.964,128,5.964,129,2.747,130,5.964,131,4.3,132,4.3,133,5.964,134,5.31,135,2.239,136,5.964]],["tags/23",[]],["title/3",[115,3.362,137,2.926]],["content/3",[20,0.464,22,3.599,33,0.508,34,2.318,61,1.322,63,2.532,117,3.599,129,3.384,131,5.298,135,1.294,137,2.163,138,1.878,139,1.148,140,0.803,141,3.447,142,2.362,143,1.512,144,2.362,145,2.634,146,3.447,147,3.447,148,3.447,149,3.447,150,8.062,151,3.447,152,3.447,153,3.447,154,2.82,155,2.646,156,2.634,157,5.504,158,3.942,159,3.447,160,2.82,161,3.447,162,2.82,163,3.447,164,2.82,165,3.447,166,3.069,167,3.447,168,3.069,169,3.72,170,3.447,171,3.942,172,3.447]],["tags/3",[]],["title/4",[0,0.639,123,2.926]],["content/4",[0,0.772,7,3.861,13,3.401,20,0.454,22,3.28,33,1.254,63,2.05,115,4.063,117,4.686,123,3.536,129,3.349,137,3.536,138,3.069,139,1.877,140,1.132,142,4.982,143,2.471,173,2.976,174,5.017,175,4.61]],["tags/4",[]],["title/5",[176,5.217]],["content/5",[20,0.42,30,2.916,34,2.628,63,2.1,77,4.786,129,3.43,137,4.674,142,4.008,158,4.47,174,5.208,177,5.208,178,5.85,179,5.85,180,2.448,181,5.208,182,4.008,183,4.786,184,2.838,185,4.218,186,4.786,187,3.828,188,4.786,189,3.531]],["tags/5",[]],["title/6",[30,1.931,129,1.783,180,1.621]],["content/6",[30,2.784,33,0.823,79,2.012,86,0.708,129,3.904,143,3.169,180,2.337,184,3.506,190,3.825,191,6.435,192,3.825,193,4.026,194,4.971,195,1.757,196,1.254,197,4.026,198,4.266,199,4.568,200,4.266,201,4.971,202,3.825]],["tags/6",[]],["title/7",[20,0.187,30,1.651,63,0.934,180,1.386]],["content/7",[0,0.841,20,0.473,63,2.166,86,0.691,195,2.417,196,1.38,203,5.025,204,1.556,205,2.127,206,3.726,207,2.459,208,2.514,209,3.855]],["tags/7",[]],["title/8",[0,0.53,43,2.045,210,2.534]],["content/8",[0,0.982,13,2.705,20,0.253,71,1.89,73,1.846,86,0.353,110,2.609,144,3.07,173,2.367,204,0.908,208,1.834,211,2.705,212,3.666,213,4.481,214,3.231,215,3.198,216,0.847,217,4.481,218,4.481,219,3.424,220,3.399,221,2.705,222,3.989,223,1.359,224,1.834,225,1.615,226,2.812,227,2.174,228,3.231,229,2.705,230,3.424,231,4.481,232,2.609,233,4.481,234,3.07,235,1.31,236,2.174,237,2.946,238,3.221,239,4.481,240,3.424,241,3.989,242,1.919]],["tags/8",[]],["title/9",[47,3.052,243,0.929]],["content/9",[35,2.366,43,2.147,47,2.66,73,0.867,80,2.147,84,1.232,86,0.709,208,1.663,212,3.325,215,2.085,216,1.286,237,1.921,240,3.106,242,1.741,243,1.159,244,3.325,245,2.287,246,2.782,247,2.222,248,5.562,249,2.1,250,5.562,251,2.931,252,2.214,253,2.366,254,3.171,255,1.584,256,4.065,257,1.972,258,1.872,259,4.065,260,4.065,261,1.641,262,2.785,263,0.996,264,2.551,265,3.619,266,2.785,267,2.615,268,2.66,269,3.106,270,2.931,271,1.741,272,3.619,273,2.785,274,2.454]],["tags/9",[]],["title/10",[33,0.571,129,1.783,198,2.959]],["content/10",[0,0.886,20,0.365,30,3.224,63,1.823,86,0.509,129,2.978,247,2.113,249,2.449,254,3.523,255,1.76,263,1.584,275,5.758,276,6.467,277,4.663,278,5.291,279,5.291]],["tags/10",[]],["title/11",[27,2.203,140,0.726]],["content/11",[0,0.424,20,0.268,33,0.702,63,1.342,65,2.759,73,0.661,79,1.117,84,0.939,86,0.736,129,2.668,140,0.483,143,2.087,182,2.123,184,1.503,191,2.759,194,2.759,195,1.497,196,1.069,197,2.234,198,2.368,199,2.535,200,2.368,201,2.759,202,2.123,204,0.628,206,2.308,207,1.24,208,2.37,209,1.945,215,1.589,216,0.9,237,1.464,240,2.368,242,1.327,243,0.617,244,2.535,245,1.743,246,2.37,247,2.123,248,4.739,249,2.165,250,4.739,251,2.234,252,1.688,253,1.804,254,1.688,255,0.843,261,1.342,262,2.123,263,1.592,264,1.945,265,2.759,266,2.123,267,2.138,268,2.028,269,2.368,270,2.234,271,1.327,272,2.759,273,2.123,274,1.871,277,2.234,278,2.535,279,2.535,280,2.123,281,2.759,282,2.368]],["tags/11",[]],["title/12",[61,1.485,225,1.395,283,1.368]],["content/12",[20,0.304,47,3.525,48,3.136,61,3.02,71,1.633,86,0.715,196,1.21,215,2.763,216,1.019,225,2.545,243,1.569,246,2.204,247,1.76,248,4.407,249,1.664,250,4.407,261,1.519,284,2.889,285,3.525,286,3.884,287,5.387,288,2.156,289,5.387,290,4.407]],["tags/12",[]],["title/13",[0,0.639,291,3.815]],["content/13",[0,1.065,61,2.403,84,1.901,138,3.415,139,2.088,140,0.976,173,3.311,210,4.102,291,5.128,292,4.52,293,6.269,294,4.295,295,6.269,296,5.581,297,5.581,298,3.934,299,2.816,300,3.041,301,1.433]],["tags/13",[]],["title/14",[176,5.217]],["content/14",[20,0.45,90,2.71,137,4.102,183,5.347,184,3.171,185,4.713,186,5.347,187,4.277,188,5.347,189,3.946,302,3.935]],["tags/14",[]],["title/15",[90,1.315,303,1.585,304,3.448]],["content/15",[0,0.9,20,0.421,48,2.814,86,0.659,90,2.718,195,2.067,196,1.476,204,1.512,207,1.935,209,4.122,235,1.413,301,1.501,302,2.881,305,3.955,306,2.367,307,3.104,308,3.578,309,3.486,310,3.694,311,3.164,312,3.164,313,3.312,314,3.312,315,4.304,316,4.304,317,3.312,318,4.304,319,2.345,320,2.479]],["tags/15",[]],["title/16",[73,0.995,321,4.152]],["content/16",[0,0.662,33,0.969,73,1.842,76,3.955,84,1.466,86,0.63,90,2.718,95,3.104,99,1.893,195,2.067,196,1.086,205,1.674,242,2.071,299,2.172,300,3.187,301,1.105,303,2.688,306,1.742,309,3.486,320,2.479,322,3.955,323,2.749,324,3.369,325,4.835,326,3.955,327,2.918,328,4.835,329,3.164,330,4.835,331,2.479,332,4.304]],["tags/16",[]],["title/17",[0,0.639,291,3.815]],["content/17",[0,1.032,33,0.88,43,3.15,73,1.272,80,3.15,86,0.651,196,1.694,208,2.44,216,1.128,220,3.306,275,5.31,286,4.3,301,1.363,320,3.059,333,5.31,334,2.149,335,5.31,336,4.557,337,5.31,338,4.879]],["tags/17",[]],["title/18",[27,2.203,140,0.726]],["content/18",[0,0.609,20,0.251,27,2.102,73,1.323,84,1.349,86,0.733,90,2.425,135,1.67,140,0.693,182,3.048,195,1.952,196,1.736,204,0.901,207,1.78,220,3.132,225,1.603,245,2.503,280,3.048,281,3.961,282,3.399,302,1.951,308,3.379,309,3.207,320,3.182,324,2.281,332,3.961,335,3.961,336,3.399,337,3.961,338,3.639,339,3.961,340,3.961,341,4.448,342,5.523,343,4.448,344,4.448]],["tags/18",[]],["title/31",[33,0.571,125,2.792,345,1.74]],["content/31",[20,0.433,22,3.576,33,1.133,73,1.311,90,2.608,124,5.025,125,4.429,282,4.694,302,2.694,303,2.514,314,4.209,345,3.451,346,6.143,347,4.429,348,6.143,349,6.143,350,6.143,351,5.469]],["tags/31",[]],["title/32",[125,2.792,140,0.603,345,1.74]],["content/32",[0,0.805,1,1.285,20,0.145,30,1.285,33,0.607,35,1.5,48,1.5,73,1.37,86,0.754,90,2.326,95,1.218,99,1.009,125,2.97,138,1.404,155,1.322,180,1.079,195,2.021,196,1.539,204,0.834,205,0.892,207,1.032,212,2.108,220,2.256,235,0.753,238,1.158,245,1.45,257,1.25,261,1.161,300,1.25,302,1.13,306,0.929,307,1.218,308,2.244,309,1.858,310,1.969,311,1.687,312,1.687,313,1.766,314,1.766,315,2.295,316,2.295,317,1.766,320,1.322,323,1.079,324,2.638,329,1.687,333,2.295,338,2.108,345,1.85,351,3.667,352,2.577,353,2.176,354,5.144,355,2.577,356,1.687,357,2.577,358,1.766,359,2.577,360,2.577,361,4.119,362,5.144,363,2.577,364,2.577,365,1.858,366,2.577,367,1.617,368,4.119,369,2.577,370,2.577,371,2.577,372,2.295,373,4.119,374,4.119,375,2.577,376,2.577,377,1.25,378,1.766]],["tags/32",[]],["title/33",[20,0.145,61,0.984,63,0.724,86,0.202,379,1.444,380,1.851]],["content/33",[33,0.974,61,3.08,96,4.324,173,3.49,263,1.618,379,3.717,380,4.764,381,5.882,382,6.607,383,6.607,384,4.527,385,5.882,386,6.607,387,6.607]],["tags/33",[]],["title/34",[30,1.931,180,1.621,380,2.792]],["content/34",[0,0.532,7,3.86,8,2.968,21,2.116,30,1.937,33,0.573,61,2.16,63,1.095,73,0.829,86,0.727,129,1.789,143,2.47,182,2.661,184,1.884,190,2.661,192,2.661,195,1.772,196,1.265,214,2.801,220,2.47,237,1.835,240,2.968,242,1.664,247,1.269,249,1.2,252,2.116,253,2.261,261,1.095,379,3.169,380,4.062,388,3.884,389,5.015,390,3.458,391,3.884,392,2.801,393,3.884,394,3.458,395,3.458,396,3.458,397,3.458,398,2.542,399,3.884,400,3.884,401,3.884,402,2.661,403,3.884,404,2.801,405,3.458,406,2.542,407,1.884,408,2.661,409,3.884,410,3.178,411,3.279,412,1.745,413,3.458]],["tags/34",[]],["title/35",[20,0.218,414,3.873,415,3.448]],["content/35",[0,0.978,7,2.784,20,0.359,27,1.198,33,0.599,48,1.476,50,1.828,52,1.167,61,2.846,63,1.917,66,2.074,71,0.768,80,1.339,86,0.73,99,0.993,140,0.395,143,1.112,195,1.831,196,1.143,197,1.828,204,1.179,206,1.972,207,1.627,210,1.659,216,0.479,221,1.53,223,0.768,225,0.913,243,0.505,245,2.287,246,1.663,247,0.828,249,1.797,261,0.715,263,0.621,282,1.937,288,1.014,303,1.663,320,1.3,329,1.659,334,0.913,339,2.257,345,1.139,380,4.196,385,2.257,389,3.618,390,2.257,392,4.196,394,2.257,395,2.257,396,2.257,397,2.257,404,1.828,408,1.737,416,2.535,417,2.535,418,1.937,419,3.325,420,2.535,421,2.074,422,2.535,423,1.937,424,2.074,425,2.074,426,2.535,427,2.535,428,2.535,429,1.737,430,2.535,431,2.535,432,1.828,433,1.264,434,2.535,435,2.535,436,1.828,437,0.844,438,2.535,439,1.937,440,2.535,441,2.257,442,1.591,443,2.074,444,2.257,445,1.737,446,2.257,447,2.535,448,2.535,449,2.535]],["tags/35",[]],["title/36",[35,2.254,255,1.054,263,0.948]],["content/36",[0,0.942,20,0.333,33,1.014,35,2.414,61,1.59,63,1.665,71,1.257,79,1.495,80,2.191,86,0.541,106,2.603,185,2.99,186,3.393,204,0.84,216,0.784,243,0.826,246,1.697,249,1.281,255,1.607,262,2.842,263,1.939,268,2.714,284,1.697,301,0.948,313,2.842,329,2.714,379,3.868,392,2.99,411,2.414,419,3.393,441,3.692,444,3.692,450,4.147,451,4.147,452,4.147,453,3.692,454,4.147,455,3.393,456,4.147,457,3.169,458,4.147,459,2.603,460,3.169,461,4.147,462,4.147,463,4.315,464,4.147,465,3.169,466,2.068,467,4.147,468,4.147,469,3.393,470,4.147]],["tags/36",[]],["title/37",[243,0.929,471,3.362]],["content/37",[0,0.623,20,0.256,61,2.771,63,1.282,86,0.74,145,3.475,185,3.279,196,1.415,214,3.279,215,2.332,216,1.191,224,1.861,237,2.149,242,1.948,243,0.906,249,1.404,258,2.094,284,1.861,301,1.44,379,3.544,392,3.279,398,2.976,418,4.813,472,4.548,473,3.279,474,4.548,475,3.72,476,4.548,477,3.279,478,3.72,479,6.299,480,4.548,481,4.548,482,4.548,483,4.548,484,4.548]],["tags/37",[]],["title/24",[20,0.263,22,2.715]],["content/24",[]],["tags/24",[]],["title/25",[455,4.793]],["content/25",[0,0.99,8,2.931,13,2.316,20,0.315,24,2.931,28,4.265,29,2.931,30,2.783,32,2.931,33,0.823,34,1.723,43,3.476,51,3.415,57,3.415,59,3.415,61,1.471,62,3.415,63,1.574,64,3.415,68,3.415,72,3.415,73,1.404,76,3.138,78,3.415,84,2.191,86,0.605,89,2.407,90,1.302,91,3.138,99,2.186,116,3.138,123,3.503,143,1.682,185,2.766,210,2.51,254,2.089,255,1.519,317,2.628,322,3.138,347,2.766,379,3.141,413,3.415,415,3.415,442,2.407,445,2.628,485,3.415,486,2.931,487,3.836,488,3.836,489,3.836,490,3.836,491,3.836,492,3.138,493,3.836,494,3.836,495,3.415,496,3.836,497,2.316,498,3.836]],["tags/25",[]],["title/26",[63,1.652]],["content/26",[20,0.385,33,1.007,61,2.618,63,2.31,123,4.285,189,4.121,254,3.719,255,1.858,384,4.678,499,4.468,500,5.585]],["tags/26",[]],["title/27",[90,1.99]],["content/27",[0,0.946,20,0.389,33,1.018,49,5.276,90,2.344,189,4.168,302,3.028,384,4.731,500,5.648,501,6.147,502,5.276]],["tags/27",[]],["title/28",[299,2.632]],["content/28",[0,0.935,13,4.121,33,1.007,73,1.457,99,2.674,101,4.923,189,4.121,300,3.312,323,2.857,379,3.841,500,5.585,503,5.217]],["tags/28",[]],["title/29",[504,4.477]],["content/29",[15,4.369,20,0.301,22,3.109,27,2.523,34,2.399,73,1.498,84,1.619,86,0.618,94,4.238,96,3.495,99,2.75,106,3.351,117,3.109,118,4.08,124,4.369,158,4.08,169,3.85,184,2.591,311,3.495,322,4.369,379,3.95,492,4.369,505,5.34,506,5.34,507,5.34,508,3.708,509,5.34,510,2.662,511,4.754,512,5.34]],["tags/29",[]],["title/30",[513,4.663,514,4.663]],["content/30",[]],["tags/30",[]],["title/62",[41,4.477]],["content/62",[]],["tags/62",[]],["title/63",[44,2.926,206,2.262]],["content/63",[20,0.462,44,3.211,52,2.357,63,2.31,86,0.691,195,2.578,196,1.533,206,4.259,207,2.048,243,1.019,258,2.357,292,3.69,303,2.094,319,2.482,331,2.624,342,4.556,347,3.69,515,3.506,516,4.556,517,5.215,518,5.117]],["tags/63",[]],["title/64",[207,1.866,519,4.663]],["content/64",[0,0.503,16,1.71,20,0.207,33,0.689,35,1.303,43,1.182,52,1.692,73,1.564,86,0.621,122,1.71,131,1.614,132,1.614,134,1.993,135,2.031,139,0.746,140,0.349,169,1.614,171,1.71,180,0.937,184,1.086,196,0.503,204,0.744,205,0.775,206,2.267,207,1.471,208,0.916,216,0.423,223,1.114,224,0.916,235,0.654,238,2.099,243,0.732,254,1.219,255,1.625,258,2.751,261,1.036,263,0.548,271,0.959,283,2.665,284,0.916,294,1.534,303,1.503,311,2.404,314,1.534,319,2.897,398,1.465,407,1.086,443,1.831,463,2.306,471,2.649,511,1.993,520,3.674,521,3.497,522,2.649,523,2.404,524,1.993,525,4.815,526,1.993,527,1.993,528,4.255,529,2.719,530,2.404,531,1.614,532,1.831,533,1.993,534,1.303,535,1.71,536,1.993,537,1.71,538,2.238,539,1.614,540,1.993,541,2.238,542,4.133,543,2.238,544,3.674,545,2.238,546,1.614,547,2.238,548,1.993,549,2.238,550,2.238,551,2.238,552,1.993,553,1.993,554,1.993,555,1.993,556,1.993,557,1.993,558,3.271,559,1.993,560,1.831,561,1.993,562,0.877,563,1.993,564,3.271,565,1.031,566,1.993,567,1.993,568,1.993,569,1.993,570,1.993]],["tags/64",[]],["title/65",[331,3.005]],["content/65",[0,0.623,20,0.408,33,0.929,52,2.901,63,1.282,71,1.379,123,2.854,140,0.708,180,1.903,206,3.056,207,1.82,209,2.854,211,2.745,216,1.191,236,3.056,243,0.906,255,1.714,261,1.282,283,2.225,284,1.861,301,1.44,303,1.861,304,4.049,306,2.27,319,3.056,331,4.202,334,2.604,521,2.477,523,2.976,531,4.542,571,2.976,572,4.548,573,6.299,574,4.548,575,4.548,576,4.049,577,2.094]],["tags/65",[]],["title/66",[578,4.663,579,4.152]],["content/66",[0,0.797,33,0.599,63,1.146,71,1.232,73,1.242,86,0.584,129,1.872,132,2.931,140,0.633,180,1.701,196,0.913,216,1.404,223,1.232,225,2.097,243,1.354,247,1.902,249,1.255,254,2.214,255,1.85,263,2.109,271,1.741,277,5.353,284,1.663,306,2.097,320,2.085,334,1.465,345,1.826,407,1.972,429,2.785,432,2.931,433,2.026,437,1.354,523,2.66,529,2.097,546,2.931,562,2.28,565,1.872,579,3.619,580,2.026,581,1.465,582,3.325,583,3.325,584,3.106,585,3.106,586,3.106,587,3.619]],["tags/66",[]],["title/67",[588,5.217]],["content/67",[139,2.437,255,1.991,261,2.063,263,1.792,466,3.648,589,7.317]],["tags/67",[]],["title/68",[590,5.217]],["content/68",[139,2.437,225,2.637,255,1.991,261,2.063,466,3.648,591,7.317]],["tags/68",[]],["title/69",[592,5.217]],["content/69",[139,2.408,225,2.605,255,1.967,261,2.039,437,2.408,466,3.605,593,7.23]],["tags/69",[]],["title/70",[594,5.217]],["content/70",[0,0.99,139,2.408,216,1.367,263,1.771,271,3.097,595,5.213,596,7.23]],["tags/70",[]],["title/71",[243,0.929,597,4.663]],["content/71",[73,1.506,86,0.683,135,2.022,140,0.839,216,1.489,224,2.889,226,3.381,238,2.42,243,1.729,244,4.407,246,2.204,247,1.76,249,1.664,261,1.519,284,2.889,288,2.156,433,2.686,529,2.545,581,1.941,598,5.387,599,4.796,600,4.407]],["tags/71",[]],["title/72",[601,5.859]],["content/72",[73,1.056,86,0.729,140,0.771,215,2.54,216,1.262,224,2.026,238,2.225,243,1.504,247,2.468,249,2.333,267,3.393,273,4.574,274,2.989,284,2.732,459,3.107,466,2.469,473,3.57,529,1.784,570,4.409,581,1.784,599,4.409,600,4.051,602,4.051,603,4.952,604,4.952,605,2.989]],["tags/72",[]],["title/73",[530,3.052,606,4.663]],["content/73",[21,2.064,33,0.559,61,3.159,71,1.149,73,1.63,84,1.677,86,0.665,140,1.119,196,0.851,216,1.235,224,2.263,225,3.044,226,2.377,229,2.287,235,1.107,238,2.935,245,2.131,246,1.55,247,1.238,249,1.17,258,2.548,261,1.56,263,0.928,283,2.699,285,2.479,286,2.731,288,2.214,290,3.099,424,3.099,425,3.099,529,2.753,530,2.479,581,1.365,602,3.099,607,3.788,608,3.788,609,2.895,610,3.788,611,3.788,612,3.788]],["tags/73",[]],["title/74",[243,0.929,613,4.663]],["content/74",[0,0.701,73,1.456,86,0.691,139,1.704,140,0.797,196,1.15,238,2.299,242,2.923,243,1.748,246,2.094,261,1.443,284,2.793,529,2.46,581,1.844,600,4.186,614,3.931,615,3.84,616,4.556,617,4.12,618,4.556,619,2.979,620,4.556]],["tags/74",[]],["title/75",[595,4.225]],["content/75",[20,0.381,33,0.996,206,3.276,216,1.277,263,1.654,271,2.892,303,2.763,319,3.949,331,3.463,457,5.159,621,5.524,622,4.869]],["tags/75",[]],["title/76",[255,1.594]],["content/76",[33,1.018,71,2.093,206,3.349,255,1.879,303,2.825,319,4.002,331,3.541,457,5.276,621,5.648,623,5.276]],["tags/76",[]],["title/77",[44,2.926,622,3.362]],["content/77",[20,0.452,44,4.683,63,2.104,81,2.633,86,0.695,195,2.348,196,1.086,216,0.914,235,1.413,236,2.345,263,1.184,271,2.071,298,3.034,301,1.105,303,1.978,319,2.345,331,2.479,334,1.742,353,2.554,515,3.312,517,3.694,622,6.226,624,4.304,625,4.835,626,4.304,627,3.694,628,4.835,629,4.304,630,4.835]],["tags/77",[]],["title/78",[207,1.866,631,4.663]],["content/78",[0,0.632,20,0.26,52,2.931,73,1.554,86,0.618,122,3.527,140,0.719,196,1.037,204,1.289,207,1.847,223,1.399,235,1.349,238,2.859,254,2.514,258,2.931,261,1.301,271,1.977,283,2.573,303,1.889,319,2.239,521,3.467,524,4.11,529,2.829,530,3.021,531,3.328,532,3.776,533,4.11,534,2.687,535,3.527,536,4.11,537,4.863,552,4.11,553,4.11,554,4.11,555,4.11,595,3.328,622,4.589,632,4.11]],["tags/78",[]],["title/79",[633,5.859]],["content/79",[0,0.744,73,1.159,86,0.661,140,0.846,196,1.221,216,1.646,220,2.383,223,1.648,229,3.281,235,1.589,247,1.776,261,2.002,263,1.938,271,3.593,334,1.958,437,1.81,529,1.958,581,1.958,595,3.919,634,5.435,635,5.435,636,3.919]],["tags/79",[]],["title/80",[637,5.859]],["content/80",[0,0.876,86,0.504,106,4.016,109,4.188,140,0.997,196,1.438,214,4.614,216,1.684,230,4.89,235,1.871,581,2.306,638,6.4,639,6.4,640,6.4,641,6.4]],["tags/80",[]],["title/81",[642,5.859]],["content/81",[73,1.324,86,0.609,140,0.966,196,1.394,215,3.182,216,1.592,224,3.445,238,2.788,486,4.741,529,2.236,581,2.236,643,2.932,644,6.205,645,6.205,646,4.741,647,6.205]],["tags/81",[]],["title/82",[216,0.882,648,4.663]],["content/82",[33,0.812,43,1.989,73,1.175,86,0.627,196,0.846,216,1.354,223,2.311,229,2.273,235,1.903,237,1.779,238,2.474,242,1.613,247,1.23,263,1.95,271,1.613,283,1.33,306,1.357,334,1.984,345,2.925,433,1.877,437,1.834,529,2.747,535,2.877,537,2.877,565,1.734,571,5.518,586,2.877,636,2.715,649,3.765,650,4.086,651,3.765,652,2.192,653,3.08,654,3.765,655,3.765,656,3.765,657,3.765,658,3.765,659,3.765,660,3.765,661,3.08,662,3.765,663,3.765,664,3.765,665,3.765,666,3.352]],["tags/82",[]],["title/83",[44,2.926,623,3.563]],["content/83",[20,0.35,44,3.894,71,1.881,79,2.236,204,1.257,236,3.01,255,1.688,298,3.894,301,1.418,303,2.539,312,4.061,319,3.01,331,3.182,334,2.236,580,3.094,623,5.906,624,5.525,626,5.525,627,4.741,667,6.205]],["tags/83",[]],["title/84",[207,1.866,668,4.663]],["content/84",[20,0.328,33,0.858,44,2.55,52,1.872,63,1.434,73,1.359,81,1.381,86,0.644,132,1.828,135,0.952,139,0.844,140,0.395,180,1.701,195,1.601,196,0.913,204,1.031,206,1.972,207,2.329,235,1.188,255,1.583,258,1.167,261,1.146,283,2.622,294,1.737,303,2.082,306,1.464,311,1.659,319,3.465,331,1.3,353,1.339,398,1.659,408,1.737,443,2.074,471,2.93,515,1.737,517,1.937,521,2.771,522,1.828,523,1.659,525,5.671,526,2.257,527,2.257,528,4.658,529,2.574,530,2.66,531,1.828,532,2.074,542,1.937,546,1.828,556,2.257,557,2.257,558,4.529,559,2.257,560,2.074,561,2.257,562,0.993,563,3.618,564,3.618,565,1.167,566,2.257,567,2.257,568,2.257,569,2.257,595,1.828,622,3.668,623,5.195,629,2.257,632,2.257,669,2.535,670,2.535,671,2.535,672,2.535,673,2.535,674,1.937,675,2.074,676,2.535]],["tags/84",[]],["title/85",[216,0.882,677,4.663]],["content/85",[0,0.525,1,2.783,33,0.97,71,1.163,73,1.191,86,0.605,140,0.597,180,1.605,196,0.862,216,1.452,223,1.163,224,2.284,235,1.632,238,1.723,247,1.253,255,2.306,261,1.574,263,1.881,271,2.391,277,2.766,283,1.355,301,1.276,334,2.011,345,1.723,408,2.628,432,2.766,433,1.912,437,1.278,463,2.407,466,1.912,521,2.089,528,2.407,529,2.011,577,1.767,580,1.912,581,1.382,582,3.138,583,3.138,584,2.931,585,2.931,586,2.931,588,3.415,594,3.415,674,2.931,678,3.138,679,3.836,680,3.415,681,3.836,682,2.628,683,3.415,684,2.628,685,3.836]],["tags/85",[]],["title/86",[216,0.732,686,3.873,687,2.959]],["content/86",[33,0.588,71,1.208,73,1.435,84,1.74,86,0.697,140,0.621,196,1.289,216,1.271,224,1.631,225,2.651,226,2.501,235,1.677,238,1.79,242,2.458,249,1.231,253,2.32,255,2.33,261,1.618,283,1.408,288,2.297,334,1.436,367,3.601,418,3.045,442,2.501,463,3.601,466,1.987,475,3.26,528,2.501,529,2.423,580,1.987,581,1.436,609,3.045,674,3.045,678,3.26,682,2.731,684,3.932,687,3.045,688,3.986,689,5.109,690,3.986,691,3.045]],["tags/86",[]],["title/87",[216,0.732,530,2.534,692,3.873]],["content/87",[33,0.429,43,3.978,71,0.882,73,1.607,80,3.318,84,0.882,86,0.63,97,2.589,140,0.453,180,1.896,196,0.653,216,1.052,224,1.19,225,2.454,226,1.825,228,2.096,235,1.324,238,1.306,255,2.049,258,1.339,261,1.277,271,2.383,283,2.219,288,1.164,312,1.903,334,1.048,367,1.825,437,2.971,463,1.825,466,1.45,475,2.379,528,1.825,529,2.454,530,1.903,546,2.096,580,1.45,581,1.048,609,2.222,674,2.222,678,2.379,682,1.992,684,1.992,687,2.222,693,2.908,694,2.908,695,4.033,696,4.954,697,2.908,698,2.908,699,2.908,700,5.565,701,5.565,702,4.909,703,2.908,704,2.379,705,4.53,706,2.379,707,2.908]],["tags/87",[]],["title/88",[216,0.882,243,0.929]],["content/88",[1,2.04,7,2.804,20,0.231,52,1.885,86,0.62,129,1.885,135,1.536,140,0.637,145,4.469,184,1.985,196,1.314,206,1.985,207,1.638,216,1.106,220,2.564,224,2.393,235,1.196,237,1.933,243,1.631,245,2.302,247,1.337,249,1.264,251,2.95,254,2.229,255,1.113,261,1.154,283,2.066,284,2.792,301,0.935,306,1.475,320,2.099,334,2.107,347,2.95,398,2.678,466,2.04,531,2.95,562,2.29,565,1.885,577,2.693,704,3.348,708,4.784,709,4.092,710,3.348,711,4.092,712,3.643,713,3.643,714,3.643,715,3.643,716,4.092,717,3.643,718,4.092]],["tags/88",[]],["title/89",[243,0.929,459,2.926]],["content/89",[84,1.677,86,0.628,135,2.077,140,0.862,243,1.589,247,1.808,249,1.709,255,1.505,261,2.026,262,4.923,263,1.355,264,3.472,266,3.791,267,2.486,268,3.621,288,2.876,301,1.265,459,3.472,460,4.228,577,2.548,643,2.614,719,2.758,720,3.014,721,3.472,722,4.526,723,4.526]],["tags/89",[]],["title/90",[243,0.929,605,2.815]],["content/90",[0,0.744,84,1.648,86,0.623,135,2.04,140,0.846,204,1.101,216,1.028,223,1.648,243,1.575,247,1.776,249,1.678,261,2.002,267,2.442,269,5.427,270,3.919,271,2.328,273,3.724,274,3.281,288,2.843,301,1.242,421,4.446,577,2.503,605,4.287,643,2.568,720,2.96,721,3.411,724,4.839]],["tags/90",[]],["title/91",[243,0.929,725,3.563]],["content/91",[33,0.755,48,2.979,84,1.551,86,0.605,135,1.921,140,0.797,216,0.968,223,1.551,243,1.7,247,1.672,249,1.58,261,1.924,263,1.253,267,2.299,271,2.192,284,2.094,288,2.732,301,1.17,334,2.46,577,2.357,605,3.089,643,2.418,720,2.787,721,3.211,725,5.215,726,4.556,727,6.077,728,4.556,729,4.556,730,3.69,731,4.556]],["tags/91",[]],["title/92",[243,0.929,285,3.052]],["content/92",[61,2.03,79,1.908,84,1.605,86,0.615,135,1.987,140,0.824,216,1.477,225,1.908,243,1.654,247,1.73,249,2.156,261,1.968,267,2.378,271,2.267,284,2.856,285,3.464,288,2.794,301,1.21,423,4.045,577,2.438,643,2.501,720,2.884,732,6.215,733,4.713,734,4.713,735,4.713]],["tags/92",[]],["title/93",[243,0.929,736,3.362]],["content/93",[1,2.202,79,1.591,84,1.339,86,0.56,90,1.5,110,3.593,135,1.658,140,0.688,216,0.835,236,2.142,243,1.672,247,1.443,249,1.906,261,1.74,263,1.082,267,1.984,284,1.807,288,2.47,298,2.771,301,1.626,499,4.039,577,2.034,614,3.548,617,2.666,643,2.087,702,4.45,720,2.406,721,2.771,736,5.13,737,3.932,738,5.495,739,3.932,740,3.932,741,3.932,742,3.932,743,3.932,744,3.613,745,3.932,746,2.571,747,3.932]],["tags/93",[]],["title/94",[243,0.929,748,3.195]],["content/94",[0,0.623,33,0.671,71,1.379,86,0.684,135,1.707,140,0.708,196,1.022,225,3.054,235,1.329,236,2.206,243,1.554,247,1.486,249,1.404,255,1.966,261,2.038,264,2.854,267,2.043,288,1.82,301,1.039,306,1.639,565,2.094,577,2.094,580,2.267,643,2.149,684,4.316,720,2.477,748,4.952,749,2.745,750,2.854,751,4.049,752,3.72,753,3.72,754,3.72,755,3.72,756,3.72,757,4.049]],["tags/94",[]],["title/95",[497,3.537]],["content/95",[20,0.394,34,3.137,63,1.969,73,1.49,195,2.197,204,1.415,353,3.689,515,4.784,586,5.336,758,5.035]],["tags/95",[]],["title/96",[52,2.148,235,1.363]],["content/96",[0,0.477,20,0.416,21,1.899,33,0.767,52,3.798,63,0.983,71,1.057,73,1.328,86,0.759,110,2.03,140,0.543,173,1.842,195,1.097,196,0.783,204,0.706,206,1.691,215,1.788,219,2.664,220,1.529,221,2.105,222,3.104,223,1.577,224,2.129,225,1.875,226,3.265,227,2.524,235,1.521,237,1.647,242,1.493,249,1.077,310,2.664,353,1.842,367,2.188,497,3.141,508,1.842,521,1.899,529,1.256,576,3.104,759,2.389,760,3.487,761,2.852,762,3.104,763,3.487,764,4.632,765,2.852,766,2.664]],["tags/96",[]],["title/97",[216,0.882,235,1.363]],["content/97",[20,0.287,33,0.5,63,0.956,71,1.856,73,1.452,79,1.222,86,0.754,94,2.047,110,1.974,140,0.528,195,1.067,196,0.762,216,1.503,220,1.487,223,2.063,224,1.387,225,1.222,226,2.127,227,1.645,228,2.444,229,2.047,232,1.974,235,1.989,236,2.969,237,1.602,238,1.523,242,2.182,286,2.444,334,1.836,445,2.323,495,3.018,497,2.047,521,1.847,523,2.219,529,2.205,765,2.773,766,3.893,767,3.018,768,3.39,769,3.018,770,3.39,771,2.323,772,2.773,773,3.39,774,3.018,775,3.39,776,2.323,777,3.018,778,3.018,779,3.39]],["tags/97",[]],["title/98",[235,1.363,565,2.148]],["content/98",[0,0.457,1,0.993,17,1.773,20,0.188,33,0.492,41,2.548,42,5.157,63,0.561,71,1.011,73,0.918,79,0.718,86,0.75,105,1.773,109,1.303,110,1.941,140,0.31,156,1.521,195,0.626,196,0.447,206,1.618,216,1.059,220,2.456,223,1.304,224,0.815,225,0.718,227,1.618,228,1.436,229,2.013,235,1.771,236,1.618,237,1.575,238,0.895,242,1.428,243,1.207,252,1.085,255,1.369,257,0.966,261,0.561,263,1.576,271,1.428,306,1.202,319,2.717,334,1.813,345,0.895,378,1.364,424,1.629,433,0.993,436,1.436,437,0.663,446,2.969,463,1.25,466,2.508,469,1.629,521,2.343,523,2.182,528,1.25,529,0.718,562,0.78,565,2.58,571,2.182,614,1.981,617,1.202,627,2.548,636,1.436,643,0.941,646,1.521,650,2.092,661,1.629,683,1.773,689,1.773,719,0.993,748,1.364,750,1.25,766,1.521,769,1.773,771,2.284,776,2.284,777,1.773,780,1.991,781,2.013,782,1.629,783,1.364,784,1.629,785,1.773,786,1.303,787,2.728,788,1.991,789,1.773,790,1.991,791,1.991,792,1.991,793,1.991,794,1.991,795,1.991,796,1.991,797,1.773,798,1.991]],["tags/98",[]],["title/99",[235,1.363,263,1.142]],["content/99",[20,0.234,42,3.169,63,1.169,79,1.495,86,0.739,99,1.624,140,0.646,195,1.305,196,0.932,223,2.085,229,2.504,235,1.212,236,2.012,263,2.157,283,2.085,334,2.128,345,3.089,433,2.944,437,1.967,497,2.504,529,1.495,571,4.5,636,2.99,650,2.603,691,5.254,781,2.504,782,3.393,783,2.842,784,3.393,786,2.714,787,3.393,799,3.692,800,3.393,801,3.692,802,3.692]],["tags/99",[]],["title/100",[235,1.363,653,3.815]],["content/100",[20,0.197,42,3.975,63,0.983,79,1.256,86,0.749,99,1.366,140,0.543,195,1.097,196,0.783,223,2.092,229,2.105,235,1.019,236,1.691,237,1.647,252,1.899,263,1.965,283,1.838,334,1.875,345,2.796,433,3.103,437,1.733,497,2.105,529,1.256,571,5.068,636,2.514,650,3.906,653,5.646,661,2.852,691,4.756,776,2.389,781,2.105,782,2.852,783,4.264,784,2.852,785,3.104,786,2.282,787,4.256,799,3.104,800,2.852,801,3.104,802,3.104,803,3.487]],["tags/100",[]],["title/101",[235,1.363,682,3.195]],["content/101",[20,0.244,63,1.219,71,1.311,79,2.191,86,0.717,122,3.303,140,0.673,195,1.36,196,0.971,230,3.303,235,1.777,236,3.412,255,2.188,263,1.059,274,2.61,312,3.979,419,3.536,433,2.155,436,3.117,463,4.414,466,2.155,469,3.536,497,2.61,521,2.355,523,3.979,528,2.713,542,3.303,571,3.979,682,5.229,771,2.962,776,2.962,783,2.962,804,4.323,805,4.323,806,4.323,807,4.323,808,4.323,809,4.323]],["tags/101",[]],["title/38",[117,2.715,140,0.726]],["content/38",[20,0.428,27,2.845,33,0.888,54,5.362,63,2.341,117,4.416,118,4.602,140,0.938,150,5.362,274,3.635,296,5.362,379,3.388,410,4.927,759,4.126,810,6.022,811,6.022,812,6.022,813,6.022,814,6.022,815,6.022]],["tags/38",[]],["title/39",[129,2.699]],["content/39",[27,3.584,34,2.705,86,0.597,129,4.138,139,2.526,140,1.181,195,1.895,196,1.353,197,4.342,199,4.927,200,4.602,247,1.968,249,2.343,278,4.927,279,4.927]],["tags/39",[]],["title/40",[131,2.792,132,2.792,169,2.792]],["content/40",[0,0.684,27,3.833,86,0.686,117,2.906,131,4.84,139,2.702,140,1.263,157,4.444,166,4.444,168,4.444,169,3.599,223,1.513,243,0.994,334,1.799,345,2.243,429,3.42,433,2.489,437,1.663,565,3.092,587,5.977,816,4.992,817,3.814,818,4.992,819,4.992,820,4.992,821,4.992,822,4.992,823,4.992]],["tags/40",[]],["title/41",[135,1.751,171,3.563]],["content/41",[27,2.791,86,0.703,135,2.217,139,1.967,140,0.92,171,4.513,223,1.791,247,2.448,334,2.128,345,2.653,429,4.047,432,4.258,433,2.944,437,1.967,565,3.451,583,4.832,584,4.513,585,4.513,824,5.906,825,5.906]],["tags/41",[]],["title/42",[164,4.793]],["content/42",[27,2.501,86,0.698,139,1.763,140,0.824,164,6.389,195,1.666,223,1.605,243,1.054,245,2.979,263,1.71,280,3.627,307,2.501,334,2.516,345,2.378,429,3.627,433,2.639,437,1.763,772,4.331,781,3.196,826,5.294,827,4.045,828,6.981,829,5.294,830,5.294,831,5.294,832,5.294,833,5.294,834,5.294]],["tags/42",[]],["title/43",[162,4.793]],["content/43",[27,2.902,86,0.605,139,2.046,140,0.957,162,7.394,195,2.417,196,1.38,197,4.429,200,4.694,207,2.459,392,4.429,835,7.681,836,6.143,837,6.143,838,6.143]],["tags/43",[]],["title/44",[160,4.793]],["content/44",[27,2.321,86,0.698,139,1.636,140,0.765,143,2.154,160,5.432,192,3.365,193,3.542,195,1.545,196,1.103,207,1.966,223,2.281,243,0.978,247,2.17,280,3.365,334,2.393,345,2.207,410,4.018,429,3.365,432,3.542,433,2.449,437,1.636,582,4.018,584,3.753,585,3.753,772,4.018,781,2.965,827,3.753,839,4.912,840,4.912,841,4.912,842,4.912,843,3.221,844,4.912,845,4.912]],["tags/44",[]],["title/45",[140,0.726,442,2.926]],["content/45",[20,0.398,22,4.112,27,3.337,115,5.093,137,4.433,144,4.84,182,4.84,294,4.84,846,7.064]],["tags/45",[]],["title/46",[20,0.263,63,1.315]],["content/46",[0,0.867,20,0.479,21,3.45,33,0.934,61,2.428,63,1.786,101,4.567,117,3.687,118,4.839,123,4.912,198,4.839,204,1.283,254,3.45,255,1.723,499,4.145,847,6.334]],["tags/46",[]],["title/47",[504,4.477]],["content/47",[0,1.042,20,0.452,21,2.338,33,1.033,34,1.928,61,1.646,63,1.706,71,1.834,73,0.916,79,2.18,84,1.301,86,0.338,94,2.591,96,2.809,99,1.681,123,2.694,140,0.669,142,2.941,155,2.202,204,0.87,224,1.756,225,2.18,235,1.255,243,1.205,254,3.296,255,1.906,263,1.716,284,2.476,312,2.809,317,2.941,384,2.941,508,2.267,528,2.694,614,2.786,615,2.415,617,2.591,706,3.512,848,4.293,849,4.293,850,3.822,851,3.822,852,4.293,853,4.293,854,4.293]],["tags/47",[]],["title/48",[184,2.262,522,3.362]],["content/48",[0,0.768,20,0.372,21,2.103,50,2.783,63,2.044,86,0.721,117,2.247,140,0.601,182,2.645,184,1.873,187,2.526,189,2.33,195,1.214,196,0.867,204,1.136,205,1.337,206,2.72,207,1.545,209,2.422,215,1.98,235,1.128,243,0.769,246,2.966,247,2.368,249,2.238,251,4.043,263,0.945,266,2.645,267,2.519,268,2.526,273,2.645,274,2.33,284,1.579,303,1.579,331,1.98,347,2.783,367,2.422,398,2.526,459,2.422,466,2.796,473,2.783,605,2.33,702,2.783,764,4.992,855,3.86,856,3.437,857,3.86]],["tags/48",[]],["title/49",[0,0.53,61,1.485,225,1.395]],["content/49",[0,0.59,20,0.301,27,1.288,33,0.635,61,2.818,63,1.214,71,1.306,73,1.139,79,0.982,86,0.704,89,1.711,99,1.068,109,1.784,129,1.256,139,0.908,140,1.028,144,2.951,196,0.612,215,1.398,216,0.516,220,2.896,223,0.827,224,1.762,225,2.38,226,3.806,227,2.089,228,3.105,229,2.6,232,2.507,234,1.868,235,1.259,236,1.323,237,3.473,238,1.225,242,3.006,243,0.858,246,1.116,247,0.891,249,0.842,252,3.303,253,3.531,261,0.769,284,1.116,285,1.784,288,2.137,290,2.23,367,1.711,423,2.083,425,2.23,471,1.966,477,3.105,478,3.523,486,2.083,508,1.44,708,2.23,765,2.23,766,2.083,774,2.427,789,3.834,858,2.726,859,2.726,860,2.726,861,2.726,862,2.726,863,2.726,864,2.726,865,2.726,866,2.726,867,2.726,868,2.726]],["tags/49",[]],["title/50",[216,0.882,243,0.929]],["content/50",[0,0.516,1,1.877,20,0.367,52,1.734,63,1.062,73,1.175,86,0.712,129,1.734,135,1.414,195,1.733,196,1.237,204,0.763,216,1.231,220,2.415,224,1.541,225,1.984,235,1.101,237,2.602,238,1.691,243,1.097,245,2.118,246,1.541,249,1.163,251,2.715,255,1.024,261,1.062,263,1.595,271,1.613,274,2.273,284,1.541,306,1.984,320,1.931,367,2.363,439,2.877,466,2.745,473,2.715,477,2.715,562,2.157,565,2.998,571,2.464,577,1.734,706,3.08,712,3.352,713,3.352,714,3.352,715,5.796,717,3.352,719,1.877,771,2.58,869,3.352,870,2.877,871,3.765,872,3.765]],["tags/50",[]],["title/51",[243,0.929,459,2.926]],["content/51",[84,1.677,86,0.628,135,2.077,140,0.862,243,1.589,247,1.808,249,1.709,255,1.505,261,2.026,262,4.923,263,1.355,264,3.472,266,3.791,267,2.486,268,3.621,288,2.876,301,1.265,459,3.472,460,4.228,577,2.548,643,2.614,719,2.758,720,3.014,721,3.472,722,4.526,723,4.526]],["tags/51",[]],["title/52",[243,0.929,605,2.815]],["content/52",[0,0.744,84,1.648,86,0.623,135,2.04,140,0.846,204,1.101,216,1.028,223,1.648,243,1.575,247,1.776,249,1.678,261,2.002,267,2.442,269,5.427,270,3.919,271,2.328,273,3.724,274,3.281,288,2.843,301,1.242,421,4.446,577,2.503,605,4.287,643,2.568,720,2.96,721,3.411,724,4.839]],["tags/52",[]],["title/53",[243,0.929,725,3.563]],["content/53",[33,0.755,48,2.979,84,1.551,86,0.605,135,1.921,140,0.797,216,0.968,223,1.551,243,1.7,247,1.672,249,1.58,261,1.924,263,1.253,267,2.299,271,2.192,284,2.094,288,2.732,301,1.17,334,2.46,577,2.357,605,3.089,643,2.418,720,2.787,721,3.211,725,5.215,726,4.556,727,6.077,728,4.556,729,4.556,730,3.69,731,4.556]],["tags/53",[]],["title/54",[243,0.929,285,3.052]],["content/54",[61,2.03,79,1.908,84,1.605,86,0.615,135,1.987,140,0.824,216,1.477,225,1.908,243,1.654,247,1.73,249,2.156,261,1.968,267,2.378,271,2.267,284,2.856,285,3.464,288,2.794,301,1.21,423,4.045,577,2.438,643,2.501,720,2.884,732,6.215,733,4.713,734,4.713,735,4.713]],["tags/54",[]],["title/55",[243,0.929,736,3.362]],["content/55",[1,2.202,79,1.591,84,1.339,86,0.56,90,1.5,110,3.593,135,1.658,140,0.688,216,0.835,236,2.142,243,1.672,247,1.443,249,1.906,261,1.74,263,1.082,267,1.984,284,1.807,288,2.47,298,2.771,301,1.626,499,4.039,577,2.034,614,3.548,617,2.666,643,2.087,702,4.45,720,2.406,721,2.771,736,5.13,737,3.932,738,5.495,739,3.932,740,3.932,741,3.932,742,3.932,743,3.932,744,3.613,745,3.932,746,2.571,747,3.932]],["tags/55",[]],["title/56",[243,0.929,748,3.195]],["content/56",[0,0.623,33,0.671,71,1.379,86,0.684,135,1.707,140,0.708,196,1.022,225,3.054,235,1.329,236,2.206,243,1.554,247,1.486,249,1.404,255,1.966,261,2.038,264,2.854,267,2.043,288,1.82,301,1.039,306,1.639,565,2.094,577,2.094,580,2.267,643,2.149,684,4.316,720,2.477,748,4.952,749,2.745,750,2.854,751,4.049,752,3.72,753,3.72,754,3.72,755,3.72,756,3.72,757,4.049]],["tags/56",[]],["title/57",[255,1.269,263,1.142]],["content/57",[35,2.792,71,1.454,79,1.728,86,0.585,103,4.271,135,1.801,216,0.907,223,1.454,225,1.728,235,1.402,236,2.327,243,1.301,246,1.963,249,1.481,255,2.022,261,1.352,262,3.286,263,1.82,266,3.286,267,2.155,268,3.139,271,2.054,284,2.674,288,1.92,301,1.096,345,2.155,408,3.286,437,1.598,459,3.01,460,3.665,466,2.391,529,1.728,565,3.009,643,3.087,650,3.01,722,3.924,723,3.924,870,3.665,873,4.797,874,4.271]],["tags/57",[]],["title/58",[225,1.68,255,1.269]],["content/58",[0,0.394,33,0.663,35,1.677,86,0.747,196,1.01,215,2.306,216,0.85,225,2.589,237,2.124,242,1.926,243,1.101,246,2.557,247,0.941,249,1.389,252,2.449,253,2.618,255,2.042,257,1.397,261,2.189,263,0.705,264,2.822,267,2.02,284,2.263,288,1.8,306,1.62,313,1.973,314,1.973,340,2.564,437,0.959,473,3.242,492,2.356,565,1.327,590,2.564,592,2.564,643,2.124,684,4.282,687,2.201,695,2.564,696,2.564,748,4.644,750,2.822,752,2.356,753,3.678,754,3.678,755,3.678,756,3.678,870,2.201,875,4.496,876,2.564,877,2.88,878,2.88]],["tags/58",[]],["title/59",[155,1.986,243,0.771,614,1.783]],["content/59",[0,0.994,20,0.189,33,0.495,50,2.418,52,1.544,73,0.715,86,0.689,106,2.104,115,2.418,129,2.327,137,2.104,138,1.827,139,1.117,140,0.787,154,4.974,155,3.471,156,3.861,196,0.753,234,2.297,235,0.98,242,1.436,243,1.348,246,2.067,247,1.096,249,1.036,257,1.627,261,2.047,263,0.821,267,1.506,277,3.643,284,2.067,288,1.342,298,2.104,378,2.297,437,1.117,439,2.562,565,1.544,614,3.515,615,1.887,616,2.985,617,4.383,618,2.985,619,3.94,620,2.985,627,2.562,702,2.418,736,2.418,744,2.743,750,3.815,771,2.297,879,3.353,880,2.985,881,2.985,882,2.985,883,2.985,884,5.053,885,3.353]],["tags/59",[]],["title/60",[243,0.929,614,2.148]],["content/60",[1,1.768,7,2.43,86,0.667,99,1.389,135,1.332,140,0.552,155,3.569,156,4.027,184,1.721,196,1.413,207,1.42,235,1.838,236,2.556,243,1.481,247,1.159,249,1.095,261,2.097,264,3.307,294,2.43,306,1.278,321,3.158,356,2.321,398,2.321,437,1.181,439,2.71,463,3.946,540,4.692,562,2.064,565,2.427,577,1.634,614,3.205,617,2.141,619,2.065,643,1.676,710,2.902,750,4.667,771,2.43,881,3.158,882,5.598,883,3.158,886,3.547,887,3.547,888,5.27,889,3.547,890,3.547,891,3.547,892,3.547,893,3.158,894,3.547,895,3.547,896,3.547,897,3.547,898,3.547,899,3.547]],["tags/60",[]],["title/102",[34,2.632]],["content/102",[20,0.468,30,2.125,33,1.029,34,1.915,43,2.252,49,3.257,63,1.698,66,3.487,73,1.489,74,3.487,86,0.698,89,2.675,91,3.487,95,3.78,96,2.79,99,1.669,138,2.322,180,1.784,205,2.085,216,0.806,243,0.849,300,2.921,307,2.014,323,1.784,327,3.634,406,3.94,445,2.921,508,3.18,900,5.36,901,4.263,902,4.6,903,6.214,904,2.921,905,2.482]],["tags/102",[]],["title/103",[33,0.488,73,0.706,216,0.626,243,0.659]],["content/103",[16,2.494,20,0.279,33,0.481,34,1.466,63,0.92,70,2.494,71,0.99,73,1.855,80,1.724,86,0.743,129,1.503,135,1.225,195,2.258,196,1.5,204,0.661,220,1.431,223,0.99,225,2.155,234,2.236,245,1.836,246,1.335,249,1.008,261,0.92,263,1.212,320,1.674,324,1.674,353,3.79,365,2.353,565,1.503,758,2.353,776,3.392,869,2.906,870,2.494,906,2.67,907,3.264,908,2.67,909,2.67,910,5.981,911,3.264,912,4.951,913,2.67,914,5.981,915,2.67,916,3.264,917,4.951,918,3.264,919,3.264,920,3.264,921,4.951,922,3.264,923,3.264,924,3.264]],["tags/103",[]],["title/104",[73,0.995,99,1.826]],["content/104",[0,0.486,1,1.768,20,0.2,63,1,73,1.341,86,0.75,96,2.321,99,1.389,206,1.721,216,1.189,225,1.278,243,1.386,255,0.965,263,1.54,306,2.508,345,3.127,353,2.784,437,2.318,497,2.141,562,2.064,565,3.425,577,1.634,614,1.634,650,4.368,682,2.43,776,3.611,783,4.769,925,8.289,926,3.547,927,3.547,928,3.547,929,3.547,930,3.547]],["tags/104",[]],["title/61",[0,0.639,221,2.815]],["content/61",[0,0.532,20,0.41,21,2.116,47,2.542,63,1.095,77,3.178,82,3.458,86,0.71,109,2.542,139,1.294,140,0.605,145,2.968,173,2.052,196,1.633,204,1.141,206,3.215,207,2.653,214,2.801,215,1.992,216,0.734,221,4.001,235,1.135,243,0.774,257,1.884,313,2.661,319,1.884,405,3.458,508,2.052,535,2.968,537,5.064,602,3.178,605,2.345,750,2.438,931,3.884,932,3.884,933,3.884,934,3.884,935,3.884,936,3.884,937,3.884,938,5.633,939,3.884,940,4.304,941,3.884,942,3.884,943,3.458,944,3.884,945,2.186,946,3.884,947,3.884,948,3.884,949,3.884]],["tags/61",[]],["title/105",[510,2.921]],["content/105",[0,0.568,20,0.423,33,0.612,48,2.414,79,1.495,81,2.259,86,0.541,90,2.544,94,2.504,137,2.603,188,3.393,195,2.163,196,0.932,203,3.393,204,1.518,205,2.045,207,1.66,211,4.151,235,1.726,270,2.99,302,2.589,303,1.697,306,1.495,307,2.79,308,3.216,312,2.714,402,2.842,404,2.99,407,2.012,455,3.393,510,2.944,515,2.842,704,3.393,759,4.046,904,2.012,950,5.905,951,4.147,952,4.147,953,4.147,954,4.147,955,4.147,956,3.393,957,4.147,958,4.147,959,4.147,960,4.147,961,4.147]],["tags/105",[]],["title/106",[311,3.052,510,2.325]],["content/106",[0,0.477,8,2.664,13,2.105,15,2.852,20,0.475,27,1.647,33,0.767,43,1.842,71,1.057,74,2.852,79,1.256,86,0.49,90,1.767,94,3.757,95,1.647,104,3.104,140,0.543,173,1.842,183,2.852,195,1.097,196,0.783,204,1.398,205,2.39,207,1.395,216,0.659,221,3.757,227,1.691,300,3.019,302,2.281,303,2.129,308,1.899,310,2.664,311,4.073,317,4.728,323,1.459,327,2.105,378,2.389,407,1.691,457,2.664,485,3.104,510,3.44,652,3.029,759,2.389,786,2.282,876,3.104,956,2.852,962,3.104,963,3.487,964,3.141,965,3.487,966,3.487,967,3.487,968,3.751,969,3.487,970,2.514,971,3.487,972,3.487,973,3.487,974,5.203,975,3.487]],["tags/106",[]],["title/112",[20,0.218,90,1.315,302,1.698]],["content/112",[0,0.956,20,0.394,35,4.065,73,1.49,90,2.371,94,4.215,302,3.062,384,4.784,501,6.217,759,4.784]],["tags/112",[]],["title/113",[504,4.477]],["content/113",[0,1.1,20,0.275,27,2.302,33,0.974,34,2.189,84,1.477,86,0.384,89,3.058,90,2.243,96,3.189,99,2.587,106,3.058,109,3.189,142,3.339,204,1.338,216,0.921,237,2.302,252,2.654,301,1.114,302,2.137,303,1.994,305,3.986,317,3.339,384,3.339,477,3.513,508,2.574,759,4.525,761,3.986,976,4.338,977,4.873,978,4.873,979,5.88,980,4.338,981,3.986,982,4.338,983,4.873,984,4.873,985,4.873,986,4.338]],["tags/113",[]],["title/114",[184,2.262,522,3.362]],["content/114",[0,0.984,20,0.369,86,0.724,90,2.595,135,1.422,187,2.479,189,2.287,195,1.192,196,1.717,204,1.121,207,2.214,209,2.377,220,1.661,242,1.622,245,3.112,249,1.17,253,2.205,257,1.838,302,3.351,303,1.55,308,3.913,320,3.351,331,1.943,372,4.925,517,2.895,856,3.373,940,2.895,987,3.788,988,3.788,989,3.788,990,5.532,991,3.788,992,4.925,993,3.788,994,3.788,995,3.788,996,3.788,997,3.788,998,3.788,999,3.099,1000,3.788,1001,3.788]],["tags/114",[]],["title/115",[90,1.583,502,3.563]],["content/115",[20,0.375,33,0.979,34,2.207,73,1.605,81,2.676,86,0.634,90,2.736,92,4.373,95,3.137,99,1.924,101,3.542,195,1.545,196,1.103,204,0.995,205,2.605,300,2.383,301,1.518,302,2.154,303,2.01,308,2.676,319,3.221,320,2.519,324,2.519,327,2.965,353,2.595,746,2.86,902,3.753,903,4.373,976,4.373,1002,4.912,1003,4.018,1004,4.018]],["tags/115",[]],["title/107",[95,2.203,175,3.815]],["content/107",[20,0.42,33,1.098,34,2.628,48,3.406,73,1.589,81,3.187,90,1.986,95,3.871,99,2.917,101,4.218,109,3.828,138,3.187,175,4.786,187,3.828,205,2.026,300,2.838,302,2.565,313,4.008,314,4.008,323,2.448,503,4.47]],["tags/107",[]],["title/108",[581,2.111]],["content/108",[20,0.353,86,0.666,89,2.833,90,2.128,95,4.178,140,0.703,187,2.954,189,2.725,205,2.493,208,1.847,221,3.783,238,2.028,283,1.594,302,2.748,307,2.133,324,3.988,327,3.783,377,3.04,406,4.101,412,2.815,508,2.384,542,4.789,581,1.627,609,3.449,902,3.449,904,3.04,905,2.628,1005,4.019,1006,3.449,1007,3.693,1008,4.514]],["tags/108",[]],["title/109",[90,1.583,502,3.563]],["content/109",[33,0.802,73,1.515,81,2.96,86,0.661,89,3.411,90,3.032,95,2.568,195,1.71,196,1.596,209,3.411,301,1.242,303,2.224,306,1.958,308,2.96,320,3.642,324,2.787,334,1.958,353,2.871,508,2.871,746,3.164,999,4.446,1003,4.446,1004,4.446,1009,4.839]],["tags/109",[]],["title/110",[71,1.414,195,1.467]],["content/110",[20,0.307,34,2.442,70,4.153,71,1.648,73,1.857,80,2.871,86,0.703,195,2.235,204,1.101,220,2.383,223,1.648,234,3.724,324,2.787,353,4.431,758,3.919,906,4.446,908,4.446,909,4.446,913,4.446,915,4.446,1010,4.839,1011,4.839]],["tags/110",[]],["title/111",[1007,3.815,1012,4.663]],["content/111",[73,1.159,86,0.685,95,3.356,135,2.666,140,0.846,196,1.221,205,1.882,216,1.496,224,2.224,238,2.442,242,2.328,324,2.787,353,3.751,408,3.724,418,4.153,515,3.724,581,1.958,746,3.164,902,4.153,1007,4.446,1013,5.435,1014,5.435,1015,5.435,1016,5.435,1017,5.435,1018,5.435]],["tags/111",[]],["title/116",[33,0.688,90,1.583]],["content/116",[0,1.001,20,0.413,33,0.686,41,3.554,86,0.688,90,2.483,140,0.724,196,1.045,203,5.234,204,1.482,207,1.861,216,1.383,224,1.903,301,1.462,302,3.207,308,3.984,319,3.104,334,1.676,621,3.805,767,5.696,778,4.141,981,3.805,992,4.141,1019,4.651,1020,4.651,1021,4.651,1022,4.651,1023,4.651,1024,4.651,1025,4.651]],["tags/116",[]],["title/117",[216,0.882,334,1.68]],["content/117",[69,4.84,216,1.336,308,3.848,334,2.545,560,5.779,562,2.766,980,6.289,1026,7.064,1027,5.397]],["tags/117",[]],["title/118",[529,2.111]],["content/118",[1,3.016,3,3.822,20,0.242,33,0.633,43,2.267,73,0.916,80,2.267,86,0.632,98,3.512,110,2.499,180,1.797,215,2.202,216,1.144,223,1.834,230,3.28,242,1.838,252,2.338,253,2.499,294,2.941,297,3.822,306,1.547,308,2.338,334,1.547,336,3.28,345,2.718,365,3.095,437,1.43,471,3.095,486,3.28,529,3.082,562,1.681,650,2.694,680,3.822,708,4.95,730,3.095,750,3.797,962,3.822,979,3.822,1028,6.05,1029,4.293,1030,4.293,1031,4.293,1032,4.293,1033,4.293,1034,3.822,1035,4.293,1036,4.293,1037,4.293]],["tags/118",[]],["title/119",[69,4.015]],["content/119",[1,2.594,33,1.018,86,0.695,110,3.03,142,3.566,180,2.178,216,0.984,220,2.282,242,2.956,253,3.03,280,3.566,302,2.282,306,1.875,407,2.525,436,3.752,442,3.266,478,4.257,508,2.749,529,1.875,562,2.703,710,4.257,781,3.141,874,4.633,940,3.976,981,4.257,982,4.633,1038,4.633,1039,4.633,1040,5.204,1041,5.204,1042,5.204,1043,5.204]],["tags/119",[]],["title/120",[235,1.363,1027,3.563]],["content/120",[0,0.701,33,0.755,86,0.717,235,2.245,263,1.253,302,2.244,306,1.844,407,2.482,436,3.69,437,2.273,442,3.211,529,1.844,562,2.004,619,2.979,758,4.921,781,3.089,880,4.556,893,4.556,945,2.879,1027,5.868,1044,5.117,1045,5.117,1046,5.117,1047,4.556,1048,5.117,1049,5.117,1050,5.117,1051,4.186,1052,5.117]],["tags/120",[]],["title/121",[223,1.414,1053,4.152]],["content/121",[0,0.678,20,0.279,33,0.985,40,4.409,86,0.665,90,1.681,140,0.771,216,1.262,220,2.928,223,2.024,224,2.026,252,2.697,280,3.393,298,3.107,301,1.726,302,2.171,334,2.406,336,3.784,365,3.57,477,3.57,691,3.784,730,4.814,781,2.989,1038,4.409,1053,4.409,1054,4.952,1055,4.952,1056,4.952,1057,4.952,1058,4.952,1059,4.952,1060,4.952,1061,4.409,1062,4.952]],["tags/121",[]],["title/123",[0,0.53,216,0.732,301,0.885]],["content/123",[0,0.99,20,0.315,33,1.066,98,4.568,173,2.949,216,1.056,300,2.709,301,2.056,323,3.547,327,4.363,379,3.141,503,5.523,675,4.568,900,4.971,905,4.208,1063,5.583,1064,5.583,1065,5.583,1066,5.583]],["tags/123",[]],["title/124",[292,3.362,539,3.362]],["content/124",[0,0.431,30,1.569,33,0.464,48,1.832,69,2.156,86,0.695,138,1.714,139,1.048,177,2.801,181,5.206,216,0.91,220,3.265,237,3.336,241,2.801,242,2.062,252,2.623,258,1.449,261,0.887,288,1.927,292,3.471,300,2.336,301,0.719,306,1.134,365,2.269,367,3.021,411,1.832,442,1.975,445,2.156,466,1.569,529,1.134,539,3.471,548,2.801,614,1.449,615,1.77,646,2.404,781,3.53,827,3.679,943,2.801,1034,2.801,1067,3.146,1068,3.146,1069,3.146,1070,4.814,1071,6.551,1072,2.801,1073,3.146,1074,3.146,1075,3.146,1076,3.146,1077,3.146,1078,3.146,1079,3.146,1080,2.269,1081,3.146,1082,3.146,1083,4.814,1084,3.146,1085,3.146,1086,3.146,1087,3.146,1088,3.146,1089,3.146,1090,3.146,1091,3.146,1092,2.801,1093,3.146,1094,3.146,1095,3.146,1096,3.146,1097,3.146,1098,3.146,1099,3.146,1100,3.146,1101,3.146,1102,3.146,1103,3.146,1104,3.146]],["tags/124",[]],["title/125",[529,2.111]],["content/125",[20,0.264,33,0.691,69,3.211,81,2.553,94,2.829,216,0.886,223,1.421,224,1.918,225,1.689,237,2.214,252,2.553,263,1.575,292,3.379,301,1.071,306,2.848,323,1.961,345,2.105,378,3.211,433,2.336,437,2.445,442,2.941,503,3.581,529,2.318,539,3.379,546,3.379,783,3.211,800,3.834,843,2.274,905,2.728,970,5.971,1039,4.173,1105,4.406,1106,3.882,1107,4.687,1108,4.406,1109,4.687,1110,4.687,1111,4.687,1112,4.687]],["tags/125",[]],["title/126",[617,3.537]],["content/126",[20,0.403,80,3.775,301,1.633,323,2.991,508,3.775,614,3.291,615,4.021,761,5.846]],["tags/126",[]],["title/127",[180,1.952,437,1.553]],["content/127",[0,0.858,20,0.354,33,0.925,81,3.415,180,2.624,301,1.433,358,4.295,407,3.041,437,2.591,617,4.695,619,3.649,843,3.773,905,3.649,970,4.52,1080,4.52,1105,4.295,1113,6.269]],["tags/127",[]],["title/128",[155,2.392,190,3.195]],["content/128",[20,0.373,81,3.599,155,3.388,190,4.527,301,1.51,306,2.381,905,3.846,1051,5.405,1080,4.764,1105,4.527,1114,6.572,1115,6.607,1116,5.405,1117,5.405]],["tags/128",[]],["title/129",[356,3.052,358,3.195]],["content/129",[0,0.867,20,0.357,33,0.934,80,3.345,301,1.448,306,2.282,356,5.56,358,4.339,614,2.917,615,3.563,675,5.181,905,3.687,970,4.567,1080,4.567,1105,4.339,1118,6.334,1119,6.334]],["tags/129",[]],["title/130",[0,0.639,619,2.715]],["content/130",[0,1.202,20,0.346,33,0.906,80,3.245,81,3.346,86,0.484,301,1.404,306,2.214,356,4.02,614,2.829,615,3.456,619,4.879,905,3.576,970,4.429,1080,4.429,1105,4.209,1120,6.143]],["tags/130",[]],["title/131",[1121,3.835]],["content/131",[20,0.327,33,0.855,52,2.669,106,3.636,138,3.156,155,2.972,205,2.563,211,4.469,258,2.669,300,3.591,303,2.371,306,2.088,323,3.098,326,6.056,402,3.97,404,4.178,411,3.373,529,2.088,762,5.159,1121,4.844,1122,5.159,1123,5.795]],["tags/131",[]],["title/132",[204,0.785,205,1.341,211,2.338]],["content/132",[20,0.479,21,2.742,52,2.318,86,0.396,143,2.207,158,3.846,173,2.658,204,1.02,205,2.337,211,4.598,219,3.846,220,2.207,221,3.038,227,2.442,286,3.629,300,2.442,303,2.059,306,2.432,323,2.825,329,3.294,402,3.448,404,3.629,411,2.93,445,3.448,562,1.971,905,3.93,1061,4.481,1072,4.481,1121,3.294,1124,2.378,1125,5.033,1126,6.75,1127,5.033]],["tags/132",[]],["title/133",[499,3.835]],["content/133",[0,0.961,20,0.396,30,2.662,33,1.157,86,0.553,155,4.273,180,2.938,301,1.605,323,2.235,329,3.495,499,3.495,516,4.754,614,2.459,615,3.005,619,3.109,905,3.109,1027,5.365,1092,7.418,1117,4.369,1128,5.34,1129,5.34,1130,5.34,1131,5.34]],["tags/133",[]],["title/134",[1132,4.225]],["content/134",[20,0.394,33,1.03,205,2.418,323,2.923,827,5.336,1121,4.57,1132,5.988,1133,5.713,1134,6.983]],["tags/134",[]],["title/143",[300,2.843]],["content/143",[20,0.418,116,6.058,299,3.327,300,3.592,1124,3.499]],["tags/143",[]],["title/144",[504,4.477]],["content/144",[0,0.935,20,0.433,33,0.755,34,2.299,49,3.91,61,1.962,73,1.092,90,1.738,99,2.004,204,1.383,205,1.772,299,2.299,301,1.17,406,5.362,411,4.471,465,3.91,510,2.551,904,2.482,968,3.69,1124,3.871,1135,6.077,1136,5.117,1137,3.84,1138,4.186,1139,4.556,1140,3.506,1141,4.556,1142,4.556]],["tags/144",[]],["title/145",[184,2.262,522,3.362]],["content/145",[20,0.398,187,4.623,189,4.264,300,4.057,327,5.048,412,3.173,1005,6.289]],["tags/145",[]],["title/146",[323,2.452]],["content/146",[20,0.538,61,2.012,95,2.48,155,2.692,173,2.772,204,1.895,211,3.168,301,1.2,323,2.197,331,2.692,412,2.358,968,3.784,1124,3.28,1132,3.784,1137,2.953,1140,3.596,1143,4.294]],["tags/146",[]],["title/147",[20,0.218,155,1.986,204,0.785]],["content/147",[0,0.867,20,0.409,33,0.435,71,0.894,79,1.063,84,0.894,86,0.54,139,0.982,140,0.713,143,1.293,154,2.413,155,3.883,180,2.65,190,3.138,204,1.47,205,1.021,210,2.998,223,0.894,227,1.431,232,2.667,246,1.207,255,1.246,257,1.431,263,0.722,283,1.618,299,1.325,301,0.674,307,1.394,356,2.998,358,2.021,377,1.431,407,1.431,412,2.058,437,0.982,499,2.998,510,1.47,534,2.667,562,1.155,580,1.47,581,1.063,614,2.586,615,1.66,619,1.717,652,1.717,719,1.47,749,2.765,797,2.626,843,2.222,904,2.222,945,2.577,964,1.781,1006,2.254,1051,2.413,1106,1.781,1108,2.021,1114,3.747,1116,4.594,1117,2.413,1121,2.998,1144,1.851,1145,2.998,1146,1.851,1147,1.93,1148,1.781,1149,1.717,1150,1.717,1151,1.717,1152,1.717,1153,1.851,1154,2.765,1155,1.781,1156,1.781,1157,2.626,1158,2.626,1159,2.626,1160,2.626,1161,2.626,1162,2.413,1163,2.626,1164,2.95,1165,2.95,1166,2.95]],["tags/147",[]],["title/148",[20,0.218,204,0.785,301,0.885]],["content/148",[0,0.83,20,0.372,33,0.402,71,0.827,79,0.982,84,1.306,86,0.553,94,2.6,139,0.908,140,0.671,143,1.196,155,2.209,180,2.538,190,2.951,204,1.422,205,0.944,215,2.209,223,0.827,224,1.116,225,0.982,227,1.323,232,2.507,242,1.168,246,1.116,253,1.587,255,1.172,257,1.323,263,1.055,283,1.521,288,1.091,299,1.225,301,1.68,307,1.288,356,1.784,358,1.868,377,1.323,407,1.323,412,1.935,433,1.359,437,1.434,465,3.291,510,1.359,529,0.982,534,2.507,539,1.966,562,1.068,580,1.359,581,0.982,614,1.256,615,1.534,619,1.587,652,1.587,719,1.359,746,1.587,749,2.6,843,2.089,904,2.089,940,2.083,945,2.423,964,1.646,1006,2.083,1105,4.155,1106,3.223,1108,3.657,1114,2.23,1116,2.23,1144,1.711,1145,2.818,1146,1.711,1147,1.784,1148,1.646,1149,1.587,1150,1.587,1151,1.587,1152,1.587,1153,1.711,1154,2.6,1155,1.646,1156,2.6,1157,2.427,1158,2.427,1159,2.427,1160,2.427,1161,2.427,1162,2.23,1163,2.427,1167,2.726,1168,2.726,1169,2.726,1170,4.307,1171,2.726,1172,2.726]],["tags/148",[]],["title/149",[20,0.218,323,1.621,412,1.74]],["content/149",[20,0.423,84,1.791,86,0.648,139,2.496,283,2.086,299,2.653,323,3.623,377,2.865,412,4.013,562,2.313,581,2.128,1173,6.13,1174,5.906,1175,5.906]],["tags/149",[]],["title/150",[20,0.218,173,2.045,204,0.785]],["content/150",[0,0.849,20,0.388,52,2.857,71,1.881,79,1.249,84,1.051,86,0.488,139,1.155,140,0.807,143,1.52,144,4.25,173,3.276,204,1.566,205,1.2,208,1.419,216,0.98,223,1.051,227,1.682,232,3.016,246,1.419,255,1.41,257,1.682,263,0.849,283,1.83,299,1.557,301,0.792,307,1.638,377,1.682,378,3.55,407,1.682,412,2.327,437,1.155,510,1.728,534,3.016,562,1.358,580,1.728,581,1.249,614,2.386,615,1.951,652,2.018,719,1.728,749,3.127,843,2.513,904,2.513,945,2.915,964,2.093,1106,2.093,1144,2.176,1145,3.39,1146,2.176,1147,2.269,1148,2.093,1149,2.018,1150,2.018,1151,2.018,1152,2.018,1153,2.176,1154,2.093,1155,2.093,1156,2.093,1173,4.238,1176,2.649,1177,2.649,1178,3.467]],["tags/150",[]],["title/151",[20,0.263,331,2.392]],["content/151",[0,1.133,20,0.315,79,2.604,84,1.163,86,0.518,139,1.278,140,0.597,143,1.682,204,1.464,205,1.933,208,1.57,219,4.265,221,2.316,227,1.861,258,3.031,283,1.355,299,1.723,307,1.812,318,4.97,331,2.863,377,1.861,381,3.415,412,2.508,581,1.382,746,2.233,786,4.306,843,1.861,945,2.158,1006,2.931,1106,2.316,1149,2.233,1150,2.233,1151,2.233,1152,2.233,1154,2.316,1155,2.316,1156,2.316,1179,5.582,1180,3.836,1181,3.836,1182,5.383,1183,3.138,1184,5.912,1185,3.836,1186,3.836,1187,4.566,1188,3.836,1189,3.836,1190,3.836,1191,3.836,1192,3.836]],["tags/151",[]],["title/152",[20,0.218,204,0.785,211,2.338]],["content/152",[20,0.452,71,1.466,84,1.466,86,0.587,139,1.61,140,0.753,180,2.749,204,1.696,205,2.584,208,1.978,210,4.299,211,4.504,255,1.787,258,3.025,283,1.708,299,2.172,377,2.345,412,2.951,562,1.893,580,2.41,581,1.742,719,2.41,843,2.345,1121,4.299,1156,2.918,1176,3.694,1177,3.694,1193,5.849,1194,4.835]],["tags/152",[]],["title/153",[20,0.218,61,1.485,204,0.785]],["content/153",[0,0.858,20,0.353,61,2.844,71,1.069,79,1.271,84,1.069,86,0.493,139,1.175,140,0.817,143,2.748,184,2.546,192,2.416,193,2.543,204,1.576,205,1.221,208,1.443,223,1.069,227,1.711,246,1.443,255,1.428,257,1.711,258,2.886,263,1.535,283,1.853,299,1.584,301,0.806,307,1.666,377,1.711,406,3.434,407,1.711,412,2.357,437,1.175,465,2.695,521,2.858,534,3.055,562,1.381,581,1.271,652,2.053,666,3.14,719,1.758,843,2.546,904,1.711,945,2.952,964,2.129,1108,2.416,1124,2.479,1137,1.984,1146,2.213,1148,2.129,1149,2.053,1150,2.053,1151,2.053,1152,2.053,1153,2.213,1154,2.129,1155,2.129,1162,2.885,1176,2.695,1177,2.695,1195,3.527,1196,2.885,1197,2.885,1198,2.885,1199,3.527]],["tags/153",[]],["title/154",[20,0.218,204,0.785,968,2.792]],["content/154",[0,0.447,20,0.377,71,0.99,79,2.586,84,0.99,86,0.526,139,1.087,140,0.771,143,1.431,204,1.638,205,2.071,208,1.335,223,0.99,227,1.583,232,2.882,246,1.335,255,1.347,257,1.583,258,1.503,263,0.799,283,1.749,299,1.466,301,0.746,307,1.542,377,1.583,407,1.583,412,2.224,437,1.087,510,1.627,534,2.882,562,1.278,580,1.627,581,1.176,652,1.9,719,1.627,746,1.9,749,2.988,786,3.914,843,2.402,904,2.402,945,2.785,956,2.67,964,1.97,968,5.174,1106,1.97,1144,2.048,1145,3.24,1146,2.048,1147,2.136,1148,1.97,1149,1.9,1150,1.9,1151,1.9,1152,1.9,1153,2.048,1154,1.97,1155,1.97,1156,1.97,1176,2.494,1177,2.494,1182,5.461,1183,2.67,1184,5.461,1187,4.05,1200,4.951,1201,3.264]],["tags/154",[]],["title/155",[20,0.187,204,0.671,1124,1.564,1140,2.269]],["content/155",[20,0.408,84,1.379,86,0.569,139,1.515,140,0.708,184,3.056,192,3.116,193,3.279,204,1.464,205,1.575,208,1.861,257,2.206,258,2.901,263,1.543,283,1.606,299,2.043,301,1.039,307,2.149,319,3.056,377,2.206,412,2.83,437,1.515,521,2.477,562,1.781,581,1.639,719,2.267,843,3.056,904,2.206,1108,3.116,1124,3.871,1140,5.613,1148,2.745,1196,3.72,1197,3.72,1198,3.72,1202,4.049,1203,4.548]],["tags/155",[]],["title/156",[20,0.187,204,0.671,1124,1.564,1137,1.863]],["content/156",[0,0.592,20,0.343,30,1.365,35,1.594,79,0.987,84,0.83,86,0.479,139,0.912,140,0.673,143,1.201,144,1.876,180,1.809,184,2.097,192,1.876,193,1.975,204,1.425,205,0.948,208,1.768,216,0.518,223,0.83,224,1.768,227,1.329,246,1.121,257,1.329,258,3.617,263,1.311,283,1.527,299,1.23,301,0.626,307,1.294,319,2.097,326,2.24,329,2.828,377,1.329,402,1.876,407,1.329,412,1.942,437,0.912,453,2.438,510,3.031,521,3.831,534,2.516,562,1.073,581,0.987,646,3.302,650,1.719,652,1.594,719,1.365,730,1.975,817,3.302,843,2.097,904,1.329,945,2.432,964,1.653,1047,2.438,1108,1.876,1122,3.848,1124,3.323,1137,3.957,1138,2.24,1139,2.438,1144,1.719,1146,1.719,1148,1.653,1149,1.594,1150,1.594,1151,2.516,1152,1.594,1153,1.719,1154,1.653,1155,1.653,1173,3.536,1196,2.24,1197,2.24,1198,2.24,1202,2.438,1204,2.438,1205,2.739,1206,2.739,1207,2.739,1208,2.739,1209,4.322,1210,2.24,1211,2.739,1212,2.739,1213,2.739,1214,2.739,1215,2.739]],["tags/156",[]],["title/157",[20,0.218,204,0.785,1143,3.168]],["content/157",[0,0.452,20,0.407,71,1,79,2.419,84,1,86,0.474,139,1.099,140,0.777,143,1.447,204,1.643,205,1.142,208,1.35,223,1,227,1.6,232,2.906,246,1.35,255,1.358,257,1.6,258,1.519,263,0.808,283,1.763,299,1.482,301,0.754,307,1.559,377,1.6,407,1.6,412,2.242,437,1.099,510,1.645,534,2.906,562,1.292,580,1.645,581,1.189,652,1.921,719,1.645,746,1.921,749,3.013,786,3.94,843,2.421,904,2.421,945,2.808,964,1.991,1106,1.991,1124,2.358,1135,4.443,1141,4.443,1142,4.443,1143,4.083,1144,2.07,1145,3.266,1146,2.07,1147,2.159,1148,1.991,1149,1.921,1150,1.921,1151,1.921,1152,1.921,1153,2.07,1154,1.991,1155,1.991,1156,1.991,1182,4.925,1183,2.699,1184,5.898,1187,4.083,1216,3.299,1217,3.299]],["tags/157",[]],["title/158",[20,0.218,95,1.83,204,0.785]],["content/158",[0,0.516,20,0.43,71,1.142,73,1.175,79,1.357,84,1.142,86,0.513,95,2.602,99,2.157,139,1.254,140,0.858,143,1.651,204,1.708,205,1.304,208,1.541,223,1.142,227,1.827,232,3.206,246,1.541,255,1.498,257,1.827,263,0.922,283,1.945,299,1.691,301,0.861,307,1.779,324,1.931,377,1.827,407,1.827,412,2.474,437,1.254,510,1.877,534,3.206,562,1.475,580,1.877,581,1.357,652,2.192,719,1.877,749,3.324,843,2.671,904,2.671,945,3.098,964,2.273,1106,2.273,1144,2.363,1145,3.604,1146,2.363,1147,2.464,1148,2.273,1149,2.192,1150,2.192,1151,2.192,1152,2.192,1153,2.363,1154,2.273,1155,2.273,1156,2.273,1218,3.765]],["tags/158",[]],["title/159",[20,0.263,1132,3.362]],["content/159",[20,0.41,84,1.708,86,0.572,139,1.877,140,0.878,204,1.473,205,2.518,210,4.758,258,3.349,283,1.99,299,2.531,377,2.733,412,3.266,581,2.03,843,2.733,1121,4.758,1132,5.242,1193,6.473,1219,7.271,1220,5.635]],["tags/159",[]],["title/122",[61,1.788,143,2.045]],["content/122",[0,0.758,20,0.476,30,2.758,33,1.06,61,3.356,138,3.014,143,3.151,202,3.791,204,1.121,208,2.264,301,1.642,323,3.007,327,3.34,379,3.113,406,3.621,411,3.221,1124,2.614,1133,4.526,1137,3.113,1221,5.533,1222,5.878]],["tags/122",[]],["title/135",[1124,2.203,1137,2.624]],["content/135",[0,0.758,20,0.45,23,4.926,24,4.228,33,1.06,52,2.548,138,3.014,202,3.791,204,1.121,208,2.264,323,2.316,411,3.221,497,3.34,986,6.397,1124,4.136,1133,4.526,1137,4.925,1222,4.526,1223,5.533,1224,5.533,1225,5.533]],["tags/135",[]],["title/136",[402,2.653,817,2.959,1210,3.168]],["content/136",[0,1.07,20,0.394,33,0.781,106,3.322,202,3.627,204,1.073,208,2.166,254,2.884,263,1.297,283,1.87,298,3.322,301,1.21,305,4.331,406,3.464,411,4.064,508,2.796,817,6.345,904,3.387,1124,3.69,1137,4.394,1210,4.331,1222,4.331,1226,5.294,1227,5.294,1228,5.294,1229,5.294]],["tags/136",[]],["title/137",[1124,2.203,1140,3.195]],["content/137",[13,3.823,20,0.442,33,1.154,202,4.339,205,2.193,208,2.592,323,2.651,411,3.687,1124,4.193,1137,3.563,1140,5.821,1230,6.334]],["tags/137",[]],["title/138",[52,2.148,99,1.826]],["content/138",[0,0.905,20,0.373,33,0.974,52,3.043,208,2.703,283,2.333,510,4.005,1124,3.796,1137,4.52,1138,5.405,1204,5.882,1231,6.607]],["tags/138",[]],["title/139",[73,0.995,99,1.826]],["content/139",[20,0.481,33,1.079,34,2.555,43,3.004,73,1.213,86,0.576,95,4.033,99,2.227,138,3.098,204,1.152,208,2.993,300,2.759,306,2.049,307,2.687,309,4.1,323,2.38,324,3.751,327,4.415,904,2.759]],["tags/139",[]],["title/140",[581,2.111]],["content/140",[20,0.45,71,1.454,73,1.023,79,1.728,86,0.585,95,3.087,99,1.879,140,0.747,204,1.692,205,1.661,208,1.963,232,3.804,255,1.778,283,1.694,299,2.155,324,2.46,377,2.327,412,2.935,510,2.391,562,1.879,580,2.391,581,1.728,719,2.391,749,3.944,843,2.327,904,2.327,1106,2.896,1144,3.01,1145,4.276,1147,3.139,1149,2.792,1150,2.792,1151,2.792,1152,2.792,1156,2.896]],["tags/140",[]],["title/141",[71,1.414,195,1.467]],["content/141",[20,0.304,34,2.42,70,4.116,71,1.633,73,1.9,80,2.845,86,0.701,195,2.222,204,1.091,220,2.362,223,1.633,234,3.691,324,2.763,353,4.416,758,3.884,906,4.407,908,4.407,909,4.407,913,4.407,915,4.407,1010,4.796,1011,4.796]],["tags/141",[]],["title/142",[90,1.583,502,3.563]],["content/142",[20,0.282,33,0.99,73,1.432,81,2.719,86,0.639,89,3.133,90,3.024,95,3.584,173,2.637,195,1.571,196,1.508,209,3.133,301,1.141,302,2.189,303,2.043,306,1.799,308,2.719,320,3.443,323,2.089,324,2.56,334,1.799,353,2.637,508,2.637,746,2.906,850,4.444,851,4.444,999,4.084,1003,4.084,1004,4.084,1009,4.444]],["tags/142",[]]],"invertedIndex":[["",{"_index":86,"title":{"33":{}},"content":{"6":{},"7":{},"8":{},"9":{},"10":{},"11":{},"12":{},"15":{},"16":{},"17":{},"18":{},"21":{},"25":{},"29":{},"32":{},"34":{},"35":{},"36":{},"37":{},"39":{},"40":{},"41":{},"42":{},"43":{},"44":{},"47":{},"48":{},"49":{},"50":{},"51":{},"52":{},"53":{},"54":{},"55":{},"56":{},"57":{},"58":{},"59":{},"60":{},"61":{},"63":{},"64":{},"66":{},"71":{},"72":{},"73":{},"74":{},"77":{},"78":{},"79":{},"80":{},"81":{},"82":{},"84":{},"85":{},"86":{},"87":{},"88":{},"89":{},"90":{},"91":{},"92":{},"93":{},"94":{},"96":{},"97":{},"98":{},"99":{},"100":{},"101":{},"102":{},"103":{},"104":{},"105":{},"106":{},"108":{},"109":{},"110":{},"111":{},"113":{},"114":{},"115":{},"116":{},"118":{},"119":{},"120":{},"121":{},"124":{},"130":{},"132":{},"133":{},"139":{},"140":{},"141":{},"142":{},"147":{},"148":{},"149":{},"150":{},"151":{},"152":{},"153":{},"154":{},"155":{},"156":{},"157":{},"158":{},"159":{}},"tags":{}}],["0",{"_index":775,"title":{},"content":{"97":{}},"tags":{}}],["0.0.0.0",{"_index":841,"title":{},"content":{"44":{}},"tags":{}}],["0.0.1",{"_index":1186,"title":{},"content":{"151":{}},"tags":{}}],["1",{"_index":252,"title":{},"content":{"9":{},"11":{},"34":{},"49":{},"58":{},"98":{},"100":{},"113":{},"118":{},"121":{},"124":{},"125":{}},"tags":{}}],["1.0.0",{"_index":222,"title":{},"content":{"8":{},"96":{}},"tags":{}}],["1.0.17",{"_index":1127,"title":{},"content":{"132":{}},"tags":{}}],["12",{"_index":1022,"title":{},"content":{"116":{}},"tags":{}}],["123",{"_index":1052,"title":{},"content":{"120":{}},"tags":{}}],["1516239022",{"_index":796,"title":{},"content":{"98":{}},"tags":{}}],["2",{"_index":477,"title":{},"content":{"37":{},"49":{},"50":{},"113":{},"121":{}},"tags":{}}],["2.0",{"_index":1141,"title":{},"content":{"144":{},"157":{}},"tags":{}}],["200",{"_index":226,"title":{},"content":{"8":{},"49":{},"71":{},"73":{},"86":{},"87":{},"96":{},"97":{}},"tags":{}}],["21297897",{"_index":1100,"title":{},"content":{"124":{}},"tags":{}}],["3",{"_index":980,"title":{},"content":{"113":{},"117":{}},"tags":{}}],["3.0",{"_index":1126,"title":{},"content":{"132":{}},"tags":{}}],["3.0.1",{"_index":763,"title":{},"content":{"96":{}},"tags":{}}],["3.0.2",{"_index":218,"title":{},"content":{"8":{}},"tags":{}}],["3.0.x",{"_index":1142,"title":{},"content":{"144":{},"157":{}},"tags":{}}],["3.1",{"_index":854,"title":{},"content":{"47":{}},"tags":{}}],["3.x",{"_index":512,"title":{},"content":{"29":{}},"tags":{}}],["400",{"_index":262,"title":{},"content":{"9":{},"11":{},"36":{},"51":{},"57":{},"89":{}},"tags":{}}],["401",{"_index":738,"title":{},"content":{"55":{},"93":{}},"tags":{}}],["403",{"_index":739,"title":{},"content":{"55":{},"93":{}},"tags":{}}],["404",{"_index":269,"title":{},"content":{"9":{},"11":{},"52":{},"90":{}},"tags":{}}],["405",{"_index":727,"title":{},"content":{"53":{},"91":{}},"tags":{}}],["501",{"_index":732,"title":{},"content":{"54":{},"92":{}},"tags":{}}],["502",{"_index":755,"title":{},"content":{"56":{},"58":{},"94":{}},"tags":{}}],["8",{"_index":665,"title":{},"content":{"82":{}},"tags":{}}],["9000",{"_index":193,"title":{},"content":{"6":{},"44":{},"153":{},"155":{},"156":{}},"tags":{}}],["_req",{"_index":870,"title":{},"content":{"50":{},"57":{},"58":{},"103":{}},"tags":{}}],["abc123",{"_index":661,"title":{},"content":{"82":{},"98":{},"100":{}},"tags":{}}],["abov",{"_index":865,"title":{},"content":{"49":{}},"tags":{}}],["abstract",{"_index":625,"title":{},"content":{"77":{}},"tags":{}}],["accept",{"_index":636,"title":{},"content":{"79":{},"82":{},"98":{},"99":{},"100":{}},"tags":{}}],["access",{"_index":627,"title":{},"content":{"59":{},"77":{},"83":{},"98":{}},"tags":{}}],["accord",{"_index":666,"title":{},"content":{"82":{},"153":{}},"tags":{}}],["accur",{"_index":688,"title":{},"content":{"86":{}},"tags":{}}],["achiev",{"_index":107,"title":{},"content":{"22":{}},"tags":{}}],["act",{"_index":1069,"title":{},"content":{"124":{}},"tags":{}}],["actual",{"_index":452,"title":{},"content":{"36":{}},"tags":{}}],["ad",{"_index":321,"title":{"16":{}},"content":{"60":{}},"tags":{}}],["add",{"_index":257,"title":{},"content":{"9":{},"32":{},"58":{},"59":{},"61":{},"98":{},"114":{},"147":{},"148":{},"150":{},"153":{},"154":{},"155":{},"156":{},"157":{},"158":{}},"tags":{}}],["addit",{"_index":704,"title":{},"content":{"87":{},"88":{},"105":{}},"tags":{}}],["additionalproperti",{"_index":777,"title":{},"content":{"97":{},"98":{}},"tags":{}}],["addpetrequest",{"_index":1010,"title":{},"content":{"110":{},"141":{}},"tags":{}}],["addpetrespons",{"_index":1011,"title":{},"content":{"110":{},"141":{}},"tags":{}}],["admin",{"_index":1051,"title":{},"content":{"120":{},"128":{},"147":{}},"tags":{}}],["adopt",{"_index":19,"title":{},"content":{"19":{}},"tags":{}}],["advanc",{"_index":1012,"title":{"111":{}},"content":{},"tags":{}}],["afteral",{"_index":396,"title":{},"content":{"34":{},"35":{}},"tags":{}}],["ag",{"_index":778,"title":{},"content":{"97":{},"116":{}},"tags":{}}],["against",{"_index":580,"title":{},"content":{"56":{},"66":{},"83":{},"85":{},"86":{},"87":{},"94":{},"140":{},"147":{},"148":{},"150":{},"152":{},"154":{},"157":{},"158":{}},"tags":{}}],["agnost",{"_index":118,"title":{"23":{}},"content":{"29":{},"38":{},"46":{}},"tags":{}}],["ajv",{"_index":528,"title":{},"content":{"47":{},"64":{},"84":{},"85":{},"86":{},"87":{},"98":{},"101":{}},"tags":{}}],["ajvcustom",{"_index":559,"title":{},"content":{"64":{},"84":{}},"tags":{}}],["ajvopt",{"_index":525,"title":{},"content":{"64":{},"84":{}},"tags":{}}],["allow",{"_index":730,"title":{},"content":{"53":{},"91":{},"118":{},"121":{},"156":{}},"tags":{}}],["alongsid",{"_index":468,"title":{},"content":{"36":{}},"tags":{}}],["alreadi",{"_index":77,"title":{},"content":{"5":{},"21":{},"61":{}},"tags":{}}],["altern",{"_index":3,"title":{},"content":{"19":{},"118":{}},"tags":{}}],["although",{"_index":575,"title":{},"content":{"65":{}},"tags":{}}],["alway",{"_index":104,"title":{},"content":{"22":{},"106":{}},"tags":{}}],["and/or",{"_index":849,"title":{},"content":{"47":{}},"tags":{}}],["angular",{"_index":126,"title":{},"content":{"23":{}},"tags":{}}],["annoy",{"_index":114,"title":{},"content":{"22":{}},"tags":{}}],["api",{"_index":0,"title":{"4":{},"8":{},"13":{},"17":{},"19":{},"49":{},"61":{},"123":{},"130":{}},"content":{"4":{},"7":{},"8":{},"10":{},"11":{},"13":{},"15":{},"16":{},"17":{},"18":{},"19":{},"20":{},"22":{},"25":{},"27":{},"28":{},"32":{},"34":{},"35":{},"36":{},"37":{},"40":{},"46":{},"47":{},"48":{},"49":{},"50":{},"52":{},"56":{},"58":{},"59":{},"61":{},"64":{},"65":{},"66":{},"70":{},"74":{},"78":{},"79":{},"80":{},"85":{},"90":{},"94":{},"96":{},"98":{},"104":{},"105":{},"106":{},"112":{},"113":{},"114":{},"116":{},"120":{},"121":{},"122":{},"123":{},"124":{},"127":{},"129":{},"130":{},"133":{},"135":{},"136":{},"138":{},"144":{},"147":{},"148":{},"150":{},"151":{},"153":{},"154":{},"156":{},"157":{},"158":{}},"tags":{}}],["api.docu",{"_index":632,"title":{},"content":{"78":{},"84":{}},"tags":{}}],["api.getcli",{"_index":999,"title":{},"content":{"109":{},"114":{},"142":{}},"tags":{}}],["api.getclient